diff options
author | Andreas Huber <andih@google.com> | 2013-03-18 11:09:22 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2013-03-18 11:09:22 -0700 |
commit | 16fb8f3954a6a4058953c505a4e7958a1b14c62b (patch) | |
tree | 60744602ca2f690db35d1bc6f0ab97409f073b3b /media/libstagefright/wifi-display/source/PlaybackSession.h | |
parent | b7be24f055426f00fd1ae1af07d5dd40dbcedfe7 (diff) | |
download | frameworks_av-16fb8f3954a6a4058953c505a4e7958a1b14c62b.zip frameworks_av-16fb8f3954a6a4058953c505a4e7958a1b14c62b.tar.gz frameworks_av-16fb8f3954a6a4058953c505a4e7958a1b14c62b.tar.bz2 |
Allow for streaming of media files (without recompression)
Change-Id: I1de356cc37506ba986822d12a1a59e7b64069e02
Diffstat (limited to 'media/libstagefright/wifi-display/source/PlaybackSession.h')
-rw-r--r-- | media/libstagefright/wifi-display/source/PlaybackSession.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/media/libstagefright/wifi-display/source/PlaybackSession.h b/media/libstagefright/wifi-display/source/PlaybackSession.h index cd6da85..da207e2 100644 --- a/media/libstagefright/wifi-display/source/PlaybackSession.h +++ b/media/libstagefright/wifi-display/source/PlaybackSession.h @@ -31,6 +31,7 @@ struct IGraphicBufferProducer; struct MediaPuller; struct MediaSource; struct MediaSender; +struct NuMediaExtractor; // Encapsulates the state of an RTP/RTCP session in the context of wifi // display. @@ -39,7 +40,8 @@ struct WifiDisplaySource::PlaybackSession : public AHandler { const sp<ANetworkSession> &netSession, const sp<AMessage> ¬ify, const struct in_addr &interfaceAddr, - const sp<IHDCP> &hdcp); + const sp<IHDCP> &hdcp, + const char *path = NULL); status_t init( const char *clientIP, int32_t clientRtp, int32_t clientRtcp, @@ -87,12 +89,14 @@ private: kWhatPause, kWhatResume, kWhatMediaSenderNotify, + kWhatPullExtractorSample, }; sp<ANetworkSession> mNetSession; sp<AMessage> mNotify; in_addr mInterfaceAddr; sp<IHDCP> mHDCP; + AString mMediaPath; sp<MediaSender> mMediaSender; int32_t mLocalRTPPort; @@ -109,6 +113,15 @@ private: int64_t mPrevTimeUs; + sp<NuMediaExtractor> mExtractor; + KeyedVector<size_t, size_t> mExtractorTrackToInternalTrack; + bool mPullExtractorPending; + int32_t mPullExtractorGeneration; + int64_t mFirstSampleTimeRealUs; + int64_t mFirstSampleTimeUs; + + status_t setupMediaPacketizer(bool enableAudio, bool enableVideo); + status_t setupPacketizer( bool enableAudio, bool usePCMAudio, @@ -133,6 +146,9 @@ private: void notifySessionDead(); + void schedulePullExtractor(); + void onPullExtractor(); + DISALLOW_EVIL_CONSTRUCTORS(PlaybackSession); }; |