summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/mpeg2ts/AnotherPacketSource.h
Commit message (Collapse)AuthorAgeFilesLines
* NuPlayer: pull more video buffers in advance in GenericSourceChong Zhang2015-07-141-0/+4
| | | | | | | | pull 4 video buffers at a time, and start pulling when we're down to 1 buffers to avoid starving the decoder. bug: 22320866 Change-Id: I10914dc092f3830ecb6296e2d9ebf9064ff7a5dc
* AnotherPacketSource: make getBufferedDurationUs more discontinuity-awareRobert Shih2015-04-211-5/+19
| | | | | | | | | The new getBufferedDurationUs implementation obsoletes the purpose of getEstimatedDurationUs; remove getEstimatedDurationUs and its associated member variables. Finally replace calls to getEstimatedDurationUs with getBufferedDurationUs. Change-Id: I38f20df8e177ffbfe299b203d99076fc98dcd274
* stagefright: initial timed id3 support in hlsRobert Shih2015-04-161-0/+1
| | | | Change-Id: I00a8a786b3f4b74742c34770edd94e937abe20a8
* HLS: misc bug fixesChong Zhang2015-04-021-2/+2
| | | | | | | | | | | | | | | | | - fix no target-duration case - fix for audio-only <=> audio/video switching - disable audio-only variants if there is at least one variant with video - fix mpeg2ts PTS wraparound when bandwidth adapting - tweak up/down switch marks bug: 19567254 Change-Id: Ib46144203c56dfc96eccd6ddaa3867e8a4f2c6a9
* HLS: faster switching and pause/resume on low bufferChong Zhang2015-03-271-0/+7
| | | | | | | | | | | | | | | | | | | | | - when upswitching, discard excessive buffering on low bandwidth variant, switch to new variant earlier - when downswitching, report newly found IDR positions continuously, and switch as soon as new fetcher passes playback position. This allows us to skip time-consuming resumeUntil() of old fetcher most of the time - implement pause/resume on low buffering, and notify buffering percentage - buffering parameter tuning, separate pause/resume/ready buffer level and up/down switch buffer level, boost up fetcher buffering significantly bug: 19567254 Change-Id: I750dfcc6f861d78d16a71f501beb86d8129cb048
* HLS: allow pause/resume in the middle of a segmentChong Zhang2015-03-201-0/+4
| | | | | | | | | | | | | | | | | | - when down switching, decide whether to finish current segment based on bandwidth settings, abort current segment if needed. - when switching, pause new fetcher after the first 47K chunk, and go back to resume old fethcer to stop point immediately. - when old fetcher reaches stop point, swap packet sources and resume new fetcher. - mark switching as done as soon as old fecther reaches stop point. This allows us to resume bandwidth monitoring earlier, and do subsequent switches sooner. bug: 19567254 Change-Id: Iba4b5fb9b06541bb1e49592536648f5d4cbc69ab
* LiveSession: added onSwitchDownRobert Shih2014-09-111-0/+5
| | | | | | | | | | | | additionally in this change - AnotherPacketSource: added getEstimatedDurationUs that avoids looping through buffered access units in most cases; this method is called by LiveSession before triggering onSwitchDown. Also fix the original getBufferedDurationUs to accumulate durations across discontinuities. Bug: 13742612 Change-Id: I135932ea0c74671b7019a3c7054844926c18bc14
* httplive: timestamp reporting, track selectionRobert Shih2014-08-051-1/+3
| | | | | | | Bug: 15153976 Bug: 15763638 Bug: 16351654 Change-Id: I4462276d4b7342647286a0ca4be11692ce52ff6d
* GenericSource: support track (de)selectionRobert Shih2014-07-311-0/+1
| | | | | | Bug: 15153976 Change-Id: Idfce856b4ca5fa7853da857757490798bc3ffe1e
* Revert GenericSource track selection changesWei Jia2014-07-301-1/+0
| | | | | | | | This reverts commit bace25b0fbcd5101d2db288b0c70c4a239f0e815. This reverts commit eb1735e343a93830df259ae8882160bb0d79dcb5. This reverts commit 05312bc7478feec11d9ae88e951c0857a7a3f28d. Bug: 16660839
* GenericSource: support track (de)selectionRobert Shih2014-07-221-0/+1
| | | | | Bug: 15153976 Change-Id: I522b1f9f0ffedf4edbea03a6654a6dbc0262860a
* HLS: do not discard packets when queuing explicit discontinuityChong Zhang2014-06-261-1/+3
| | | | | | | | | | | in case of explicit discontinuity (#EXT-X-DISCONTINUITY tag in the playlist), do not discard packets that's already queued. (when seeking, the old fetcher will be discarded so this won't affect seeking case.) Bug: 15020526 Change-Id: I5d3fc489df35e3bc44acb1ee7851571cb99cb56b
* AnotherPacketSource support to get latest buffered MetaData.Robert Shih2014-02-031-0/+3
| | | | Change-Id: Ib3b6e0984036082bf3c4eb7901a2b29be52fdd29
* New HLS implementation supporting independent stream sources, audio-only streamsAndreas Huber2013-05-311-0/+2
| | | | | | and more. Change-Id: Icfc45a0100243b2f7a14a9e65696be45b67d6495
* RTSP buffering improvementsRoger Jönsson2013-02-061-0/+3
| | | | | | | | | | | | | Added buffering start and end notifications for RTSP. MEDIA_INFO_BUFFERING_START is sent when buffering is started and MEDIA_INFO_BUFFERING_END is sent when the buffer has filled up. This patch also adds RTSP end of stream handling. EOS is signalled when BYE is received OR when detecting end of stream even if no actual EOS is received. Change-Id: I5cccb6845060ae6afd66d9f735b89da81476cd13
* Buffer at least 2 secs worth of data at startup of after a seek beforeAndreas Huber2012-05-171-0/+4
| | | | | | | resuming starting RTSP playback. Change-Id: I060c6c7fd627ab7ebd5c095ddcfdb4cc0f637aad related-to-bug: 6364126
* Finer granularity discontinuity support.Andreas Huber2011-11-281-0/+3
| | | | | | | | No clients can signal a format change on either audio or video track (or both) and a time discontinuity (timestamps changed) independantly. Change-Id: I3e6cf4e7c260e85759879d61a9b517f68431c22f related-to-bug: 5553055
* Allow optional specification of a PTS timestamp when signalling a discontinuity.Andreas Huber2011-03-021-1/+4
| | | | | | | If present, rendering will be suppressed until reaching the timestamp. Change-Id: Ic64bdf4225063c5a4d042ea9809960b843a46d19 related-to-bug: 3489454
* Some more fixes regarding HTTP live in NuPlayer.Andreas Huber2011-01-051-2/+0
| | | | Change-Id: I9e29615fa8ee6c7bd4189373a75c20caef3fd2b1
* Squashed commit of the following:Andreas Huber2010-12-231-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit eaeaa2672d4e0a82891493b2bde8bdd0c0e79a1b Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:26:48 2010 -0800 Remove lowest bandwidth stream if using the legacy player. Change-Id: I2f885e26344996de9152f8fda9fd6bdef89bf953 commit 7d652972615b2750fd8f1c21b9fab0e136df2b82 Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:14:36 2010 -0800 Don't clear the packet source's format for legacy discontinuities. Change-Id: I9bd5a21b9bd28043ad38bd0658ccc8eda3c1079a commit 2b18a45aac17cbfe1aa089d0f6510957d438dd64 Author: Andreas Huber <andih@google.com> Date: Thu Dec 23 10:13:55 2010 -0800 Use NuPlayer for HTTP live streaming based on runtime property. adb shell setprop media.httplive.enable-nuplayer true Change-Id: I22738df3403985dc8e6992b1ab5da5747309f773 commit 50d899fb7b9ea52c3994b0a58e993998d926aeed Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 16:25:22 2010 -0800 Make ACodec a lot less verbose. Change-Id: I94c7e499b61032321ffaf999f5ad2c913cde6a48 commit b19e1740cb4d02990a56844654b5d019987c6405 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 16:22:22 2010 -0800 Wait until we have fresh codec-specific-data before instantiating the decoders after a discontinuity involving a format change. Change-Id: I7bcf9b5ae3319f08bf8978a117e8ee5220902e37 commit 06428c006906c9099e430aface3b439ff1d36ecc Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 15:20:38 2010 -0800 Disable random seeks in the streaming tool for now. Change-Id: Ie86fde422dcfc4b2c7a01be51a193fda9c88cd71 commit e19db68f3bea8a61c191f60f6940f30e3a0d5f1b Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 15:20:27 2010 -0800 Tweak HTTP live parameters. Change-Id: If4b71e12485facc523a8a43d8213d0feb190daab commit 1e9942791538c2256b579d96c6c04264b0d8b087 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 14:48:23 2010 -0800 Enable http live streaming through NuPlayer for http URLs containing the string m3u8 Change-Id: I1691fe12ae8f1507fe3673313959cd50bc324624 commit 4c33f96a6e499ee0efe0e70b687094430cb7c1c0 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 14:40:27 2010 -0800 Support for HTTP live streaming in NuPlayer. Change-Id: Iacba1c3ebaeb8d3b972185deaf4cff18c8009c54 commit ddf705ce553708bc5b13d89a878484cf839bd674 Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 13:42:47 2010 -0800 StreamingSource now a subclass of abstract NuPlayer::Source Change-Id: Ia6c7c639628910b9d1f37decc55da48b07a70de3 commit 9e04a8406b1882a8e3fdeb7b4d52db5ae70b970a Author: Andreas Huber <andih@google.com> Date: Wed Dec 22 13:33:52 2010 -0800 Refactor media data sourcing to NuPlayer::Source. Change-Id: I1db9fb08c4e527bf7b19c29978cf342c2b0a0bc9 Change-Id: I9610a097481dda58f22142eacda3ac2dba0b63f9
* Distinguish discontinuities w/ a format change from those without.Andreas Huber2010-12-221-1/+1
| | | | | | Shutdown decoders as needed in anticipation of a format change, otherwise just flush. Change-Id: Ieb04f8aa8658569b091409c4903075fd496e5abb
* Initial support for a true streaming player for mpeg2 transport streams.Andreas Huber2010-12-151-0/+4
| | | | Change-Id: I153eec439d260a5524b21270e16d36940ec3161a
* HTTP Live content that are tagged as complete are now seekable.Andreas Huber2010-10-121-0/+2
| | | | | Change-Id: I9d0d2f009f883e5baf3e9de8c5c0aa05760e4bde related-to-bug: 2368598
* Work to support switching transport streams mid-stream and signalling ↵Andreas Huber2010-10-071-0/+1
| | | | | | | discontinuities to the decoder. Change-Id: I7150e5e7342e1117c524856b204aadcb763e06ed related-to-bug: 2368598
* Initial checkin of mpeg2 transport stream parser for stagefright.Andreas Huber2010-06-071-0/+62
Change-Id: I328ce77404daf7127933b48c9d58ed504fb8fc6f