diff options
Diffstat (limited to 'media/libmediaplayerservice/MediaPlayerService.h')
-rw-r--r-- | media/libmediaplayerservice/MediaPlayerService.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.h b/media/libmediaplayerservice/MediaPlayerService.h index 2408c62..60b91c6 100644 --- a/media/libmediaplayerservice/MediaPlayerService.h +++ b/media/libmediaplayerservice/MediaPlayerService.h @@ -65,7 +65,7 @@ class MediaPlayerService : public BnMediaPlayerService class AudioOutput : public MediaPlayerBase::AudioSink { public: - AudioOutput(); + AudioOutput(int sessionId); virtual ~AudioOutput(); virtual bool ready() const { return mTrack != NULL; } @@ -108,6 +108,7 @@ class MediaPlayerService : public BnMediaPlayerService float mRightVolume; float mMsecsPerFrame; uint32_t mLatency; + int mSessionId; static bool mIsOnEmulator; static int mMinBufferCount; // 12 for emulator; otherwise 4 @@ -185,9 +186,9 @@ public: // House keeping for media player clients virtual sp<IMediaPlayer> create( pid_t pid, const sp<IMediaPlayerClient>& client, const char* url, - const KeyedVector<String8, String8> *headers); + const KeyedVector<String8, String8> *headers, int audioSessionId); - virtual sp<IMediaPlayer> create(pid_t pid, const sp<IMediaPlayerClient>& client, int fd, int64_t offset, int64_t length); + virtual sp<IMediaPlayer> create(pid_t pid, const sp<IMediaPlayerClient>& client, int fd, int64_t offset, int64_t length, int audioSessionId); virtual sp<IMemory> decode(const char* url, uint32_t *pSampleRate, int* pNumChannels, int* pFormat); virtual sp<IMemory> decode(int fd, int64_t offset, int64_t length, uint32_t *pSampleRate, int* pNumChannels, int* pFormat); virtual sp<IMemory> snoop(); @@ -237,12 +238,15 @@ private: pid_t pid() const { return mPid; } virtual status_t dump(int fd, const Vector<String16>& args) const; + int getAudioSessionId() { return mAudioSessionId; } + private: friend class MediaPlayerService; Client( const sp<MediaPlayerService>& service, pid_t pid, int32_t connId, - const sp<IMediaPlayerClient>& client); + const sp<IMediaPlayerClient>& client, + int audioSessionId); Client(); virtual ~Client(); @@ -271,6 +275,7 @@ private: status_t mStatus; bool mLoop; int32_t mConnId; + int mAudioSessionId; // Metadata filters. media::Metadata::Filter mMetadataAllow; // protected by mLock |