summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/mpeg2ts/ESQueue.cpp
Commit message (Collapse)AuthorAgeFilesLines
* ESQueue: change warning message of one buffer containing multiple ADTS ↵Wei Jia2014-12-161-1/+1
| | | | | | | frames into verbose. Bug: 18741580 Change-Id: I35b38e106c3ca5421e0985d5e7feeaafe773ed6d
* avc_util: try to find the first start code prefix 0x000001 even though there ↵Wei Jia2014-12-041-2/+3
| | | | | | | | | is non-zero byte at the beginning of the buffer. ESQueue: allow one PES playload contains multiple ADTS AAC frames. Bug: 18532335 Change-Id: I1f42017cff139d5e932e0aaa3e7d33164d1a48e7
* ESQueue: add frame length checking in validation of ADTS header.Wei Jia2014-12-031-4/+19
| | | | | | | | This allows an invalid ADTS buffer to be abandoned when frame length in the header exceeds buffer size. Bug: 18532335 Change-Id: I8057db525d06ff00ca24afd075a7c6c17b87eaa8
* ESQueue: do not merge aac packetsRobert Shih2014-09-151-1/+45
| | | | | Bug: 17310061 Change-Id: Ie0fb0702b0af1c4094415190fdfdf132d5fcd511
* support for CEA-608 closed captionChong Zhang2014-06-131-0/+6
| | | | | | Bug: 15470448 Change-Id: Ic6a527f5c35a8ee0a08a5b043336e4d193216083
* libstagefright: fix 64-bit warningsColin Cross2014-03-191-9/+10
| | | | | | | | | %lld -> %" PRId64 " for int64_t %d -> %zu for size_t Also fixes some casts from void* to integer types, and some comparisons between signed and unsigned. Change-Id: I9c52f76240e39399da252c66459042a6fc626a90
* am 0105027f: Fix wrong channel table in ESQueue according to the A/52 table 5.8Dongwon Kang2014-02-131-1/+1
|\ | | | | | | | | * commit '0105027f2a385ecb29a64b055f3046fb01ca2803': Fix wrong channel table in ESQueue according to the A/52 table 5.8
| * Fix wrong channel table in ESQueue according to the A/52 table 5.8Dongwon Kang2014-02-111-1/+1
| | | | | | | | | | | | Reference: http://www.atsc.org/cms/standards/A52-2012(12-17).pdf Bug: 12950777 Change-Id: Ic60033170b21e67408a3b3444507f6528946bdd0
* | am e2307ccb: Merge "frameworks/av: fix errors inside ALOGV"Colin Cross2014-02-071-0/+2
|\ \ | |/ |/| | | | | * commit 'e2307ccbab9c32a7806f15c2572cfe6ec428f2f5': frameworks/av: fix errors inside ALOGV
| * frameworks/av: fix errors inside ALOGVColin Cross2014-02-061-0/+2
| | | | | | | | | | | | Fix errors exposed by adding compile-time checking to disabled ALOGVs. Change-Id: I9602a4a485dffa3caad732c2a19ec0e41a0ac65b
* | [DO NOT MERGE] Support TS + AC3 for ATSC standardChangwan Ryu2014-02-031-0/+190
|/ | | | Change-Id: I141667f3f54b242bafdf0ab9db86852c56f49ffa
* Fixed timestamp handling in ESQueue Access Unit parser.Rachad2013-08-301-6/+1
| | | | | | This fixes bug b/10294801 Change-Id: Ie96d36e2ff6fdee0c949a85da3602ab04b34bf6e
* In certain cases where AAC audio frames extended into the next PES payloadAndreas Huber2013-04-051-24/+37
| | | | | | (inside transport streams) timestamps would be miscalculated. This fixes it. Change-Id: I9d74eeea474d2b89e8a9cdc478ed6085282fb3be
* Handles duplicated NAL start code to fix crash on HLS streams.Insun Kang2013-02-251-1/+1
| | | | | | | | | | | | Some youtube live streams are encoded having duplicated NAL start code, for instance, 00 00 01 00 00 00 01 .... In previous code, zero NAL size causes crash by CHECK_GT(nalsize, 0) macro. With this patch, duplicated NAL start code will be just ignored. TESTED=Played problematic Youtube Live streams. Change-Id: I1d76f111a34bd29cb09b037eb1b0626fe5f5b140
* Various tweaks to wfdAndreas Huber2012-10-311-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | related-to-bug: 7426218 Squashed commit of the following: commit 1553f1a1c66af998674168f7f7a3be23fcb0c794 Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:51:27 2012 -0700 Add LPCM, AVC and AVC HRD descriptors as necessary. Change-Id: Ibc836fced0fe37e8a25574c2295e886765b9ea6f commit 4e74db61d2d31ebe239acbdec8f110f88016a4ea Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:50:52 2012 -0700 added copyright headers to Sender.{cpp,h} Change-Id: If615ccb8767e32bd83ed1f0f669acc39a72489f6 commit 7144bf8ae68c5cdb8faa6e219547aabbd750f04e Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:50:25 2012 -0700 Reenable suspension of the RepeaterSource Change-Id: I765338fcde89c65e4b69be45a5949eba6bcdcf6f commit 812164bcfa0699821d7d8eefcc0dff96b2e2cd08 Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 14:03:50 2012 -0700 Add 2 stuffing bytes to the PES headers for audio tracks. Change-Id: I8b9c634f6a565ab7fa7ecdb610f7d8557e0b139b commit a084a741a63015d47c92d99fcd8b980fe615dc7d Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 13:19:38 2012 -0700 Fix PCM audio packetization in WFD. Change-Id: I99a435f9fe6b4397f24d6c22afae5ae2505ffc14 commit c5cb9369585f701f34bce41534940d5f9b59248f Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 13:19:12 2012 -0700 Support extraction of PCM audio from transport streams. Change-Id: I28a0516756ebcb5587325b6588df013ac871ffb9 commit b0a0512300ae037d6b39c2d04952d34b5fc12b2d Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 08:54:13 2012 -0700 disable suspend of the RepeaterSource Change-Id: Ibf42a98185b0567f817ae582a82e6580f95d3d40 commit 4330e8b7668dc92a6d882b5622c0697cf292d04c Author: Andreas Huber <andih@google.com> Date: Mon Oct 29 14:11:25 2012 -0700 Better handling of datagrams in ANetworkSession reduce unnecessary copy overhead. Change-Id: I2ed8c767274ba07764f03e8d4913041168e5755f commit a44e73c322ba3f2c336f7cc4e1d63d3a74faa75d Author: Andreas Huber <andih@google.com> Date: Mon Oct 29 11:14:47 2012 -0700 Network traffic is now handled on a separate thread. Audio and video are queued to ensure proper A/V interleaving. Scheduled packet sends according to capture timestamps to reduce send-jitter. Change-Id: Ibd6357c1e663086cf87bec0a98f8e54dfdfaa0e5 related-to-bug: 7426218 Change-Id: Ia440129d656c35814abf18df06da50b73d5bb554
* Special mode for ESQueue that allows for earlier dequeuing of access unitsAndreas Huber2012-08-311-3/+29
| | | | | | | if it's know beforehand that each PES packet contains exactly one access unit. Currently this optimization is only supported for H.264 video. Change-Id: I0888027cc7e9850307484b11dba1191cf6bfac83
* Make the transport stream extraction code output ADTS AAC frames.Andreas Huber2012-04-301-34/+12
| | | | | Change-Id: I145f4b1265045750f1b0425269f3ffe5fb055f61 related-to-bug: 6419102
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-1/+1
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGESteve Block2012-01-041-8/+8
| | | | | | | See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-261-5/+5
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* Merge "Support for an MPEG2 Program Stream extractor."Andreas Huber2011-10-131-1/+20
|\
| * Support for an MPEG2 Program Stream extractor.Andreas Huber2011-09-301-1/+20
| | | | | | | | Change-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41
* | Assume a PTS of 0 if absent, don't bail on fragmented PES packets not having PTSAndreas Huber2011-10-121-0/+4
|/ | | | | Change-Id: I3b31f08428fb7195b98f145ae0675006c8756de1 related-to-bug: 5450187
* Support mpeg1,2 audio and mpeg1,2,4 video content extraction from .ts streams.Andreas Huber2011-05-251-6/+479
| | | | Change-Id: I9d2ee63495f161e30daba7c3aab16cb9d8ced6a5
* Add AAC extractorGloria Wang2011-02-151-48/+0
| | | | Change-Id: Iedb08525ac72e65ba98e5c791734da0720a0e3f6
* Squashed commit of the following:Andreas Huber2010-12-231-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Initial support for a true streaming player for mpeg2 transport streams.Andreas Huber2010-12-151-4/+7
| | | | Change-Id: I153eec439d260a5524b21270e16d36940ec3161a
* Proper recovery of timestamp information in the transport stream parser.Andreas Huber2010-12-151-11/+67
| | | | Change-Id: I647c73688c95529f54f0bb6af17d109dfe2bb11d
* Squashed commit of the following:Andreas Huber2010-12-061-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 9254c845d7c82976fd4b8be406ce4b17eeb0e119 Author: Andreas Huber <andih@google.com> Date: Fri Dec 3 15:26:12 2010 -0800 Remove obsolete code from the cached data source. Change-Id: I794b986ac8977cbc834dff189221a636ba564e36 commit 2ee33711064c58c53ba65ed9e63dd4b01ec2380e Author: Andreas Huber <andih@google.com> Date: Fri Dec 3 15:23:13 2010 -0800 LiveSource is dead, long live LiveSession. Change-Id: Ibcd0731ecf9c94f0b3e5db3d53d012d9da2a1c66 commit 9eabb2c3cd8571ab859bdeae0aa7f655c414d8fa Author: Andreas Huber <andih@google.com> Date: Fri Dec 3 12:49:31 2010 -0800 Respect explicitly signalled discontinuities. Change-Id: I3c0c16a2de7a99742d25db7d1b2ff0258de52271 commit 7f7f7b6b906b6ece6e4d43af7fd5f494e805c5e5 Author: Andreas Huber <andih@google.com> Date: Fri Dec 3 11:45:57 2010 -0800 Better protection against syncword emulation in AAC ADTS content. Change-Id: I867e80a4556dd46d24ab3e781177c248a5221719 commit fe765766582efcc350aed01135ea603576adccf6 Author: Andreas Huber <andih@google.com> Date: Fri Dec 3 09:15:59 2010 -0800 New implementation of http live driving code. Change-Id: I31ddf3d6a0d5929b121be704a2b9c3d6775f7737 Change-Id: Id8d1829c8fcb173756965013f848c1d426ef1048
* Squashed commit of the following:Andreas Huber2010-12-021-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit de99ae4a523ff5ec40b47071f22fdde1a4b2a0bf Author: Andreas Huber <andih@google.com> Date: Thu Dec 2 13:18:40 2010 -0800 Scan for sync words to find H.264 frame/AAC frame boundaries if PES packets do not start with them. Change-Id: If2861982ecb3006fac806105dbfcd1d43c2a4205 commit be23791ff0d037aa7073589cdc8bfc362e1c281d Author: Andreas Huber <andih@google.com> Date: Thu Dec 2 13:12:39 2010 -0800 Properly expand relative key URLs and strip surrounding quotes in the M3UParser. Change-Id: I013a6d83a64f095d090e5c7730298bdac7d03ab4 commit 0f1d8f65effe0cc42a265dd91d8b91dce6534325 Author: Andreas Huber <andih@google.com> Date: Thu Dec 2 13:11:27 2010 -0800 Ugly hack that assumes that any http url containing "m3u8" refers to an httplive stream. Change-Id: I05d7bbc5dab0f9822558122b5b9dc2a109ed8518 commit 255f0d5cdb1072ecd66b47ee614bf574f1388e5a Author: Andreas Huber <andih@google.com> Date: Thu Dec 2 13:10:56 2010 -0800 Add one more mimetype "application/x-mpegurl" to identify httplive playlists. Change-Id: I63fd3b8c2539c9ee23c077df533157af78b10863 Change-Id: I135687383009dbe32d690c9ba8dea60159adc616
* More HTTP live support, AES encryption etc.Andreas Huber2010-11-151-1/+4
| | | | | Change-Id: Ia5088042dd0a2181cb73cf8c7a2ff81e34b3064c related-to-bug: 2368598
* HTTP Live content that are tagged as complete are now seekable.Andreas Huber2010-10-121-0/+1
| | | | | Change-Id: I9d0d2f009f883e5baf3e9de8c5c0aa05760e4bde related-to-bug: 2368598
* Refactor some more h.264 utility code out into avc_utils. Work around a ↵Andreas Huber2010-10-081-150/+0
| | | | | | hardware decoder issue by making sure the first access unit submitted to a decoder at startup or after seek is an IDR. Change-Id: I61936601e55df7e4c23a8c13087579a4f85bd6e6
* Work to support switching transport streams mid-stream and signalling ↵Andreas Huber2010-10-071-1/+8
| | | | | | | discontinuities to the decoder. Change-Id: I7150e5e7342e1117c524856b204aadcb763e06ed related-to-bug: 2368598
* Squashed commit of the following:Andreas Huber2010-10-011-0/+504
commit 46744c7697f29aec71aed8de3c95ce035c284d97 Author: Andreas Huber <andih@google.com> Date: Thu Sep 30 16:44:57 2010 -0700 better separation of access units Change-Id: I5a9e2138aed341f0bcf22cfe368a15ca5ea5a73c commit d34952ac0feb1ae722ff65824d7353335502219b Author: Andreas Huber <andih@google.com> Date: Thu Sep 30 15:35:01 2010 -0700 Support for ES packets that do not start on PES packet boundaries. Change-Id: I2cf012833948eddfb20b16a1901206cf22ce71e4 related-to-bug: 2368598 Change-Id: Ib9329bd6bb7149b5a6e2483788a96b1b158952fc