Граф коммитов

721 Коммитов

Автор SHA1 Сообщение Дата
Alfredo.Yang f683a17096 Bug 1388618 - update mp4 rust parser to fix invalid PSSH box. r=kinetik
MozReview-Commit-ID: FnbgeNiKdR1

--HG--
extra : rebase_source : 0e8a253fee61ca2f96b75066ed5d904716796e36
2017-08-29 10:18:16 +08:00
Alfredo.Yang 9e93aca1e7 Bug 1389299 - use fallible nsTArray to avoid OOM. r=kinetik
MozReview-Commit-ID: 7qFJI1ihgAq

--HG--
extra : rebase_source : 74dd19fa3e8bdc3d3fa4782b3c16c447485ffcb8
2017-08-24 14:54:13 +08:00
Alfredo.Yang 87af44d50b Bug 1387739 - update mp4 rust parser for slice boundary checking. r=kinetik
MozReview-Commit-ID: 6fSkadAZb4L

--HG--
extra : rebase_source : 7414577d2621f7a01c27c0dc560323793c5c80ba
2017-08-23 10:09:14 +08:00
Jean-Yves Avenard f24da4cae1 Bug 1347518 - P1. Use SEI recovery point to mark keyframe. r=jesup
Some streams do not include any IDR frames. However, they do include SEI recovery point markers. We use those to mark keyframes.

MozReview-Commit-ID: IHfUx7fEgEJ

--HG--
extra : rebase_source : 807b83c2685d8eadd3066cb0cad916e24315e07f
2017-08-21 18:34:38 +02:00
John Lin ddd6436e6a Bug 1391556 - fix incorrect out of bound check. r=jwwang
MozReview-Commit-ID: JytNgl6bqCX

--HG--
extra : rebase_source : 53ef9acf40d5c882342488c6ef1abf6bddae0542
2017-08-22 10:06:41 +08:00
Chris Pearce e95b5d48f4 Bug 1390748 - Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
It appears to be unused.

MozReview-Commit-ID: 7vVK4PRzaPt

--HG--
extra : rebase_source : 4659a73a3f86121689ae71a6e9d25335d63fcd74
2017-08-16 17:19:58 +12:00
Carsten "Tomcat" Book 37d90df3b9 Backed out changeset 2674b8eaba32 (bug 1390748)
--HG--
extra : rebase_source : a025f72ae7e4a88a2064dff46002502f17f9e256
2017-08-17 08:35:08 +02:00
Chris Pearce 5b494b1651 Bug 1390748 - Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
It appears to be unused.

MozReview-Commit-ID: 7vVK4PRzaPt

--HG--
extra : rebase_source : 49bdc1221c0d626c5664ba819bb919c09f4c6568
2017-08-16 17:19:58 +12:00
Phil Ringnalda 38ce1ea2a0 Backed out 10 changesets (bug 1390748) for build bustage
Backed out changeset 02b36ee5fb17 (bug 1390748)
Backed out changeset 84e8bf01c856 (bug 1390748)
Backed out changeset fc8989be30f3 (bug 1390748)
Backed out changeset 14d421ace6cc (bug 1390748)
Backed out changeset 7dadac869038 (bug 1390748)
Backed out changeset 0e77809e7bc2 (bug 1390748)
Backed out changeset bf78a8dce9c5 (bug 1390748)
Backed out changeset 5fa77990472e (bug 1390748)
Backed out changeset 5d3b637d2485 (bug 1390748)
Backed out changeset 634fe076d134 (bug 1390748)

MozReview-Commit-ID: Dxio8vXDCHg
2017-08-16 21:33:10 -07:00
Chris Pearce 4748ebca90 Bug 1390748 - Remove usage of mozilla::Vector from mp4_demuxer::ByteReader. r=jwwang
It appears to be unused.

MozReview-Commit-ID: 7vVK4PRzaPt

--HG--
extra : rebase_source : add4cbdc2355849679447b2e01661859b2ad25f5
2017-08-16 17:19:58 +12:00
Alfredo.Yang 40b0569eb5 Bug 1389470 - reduce table size on 32bit arch to avoid OOM. r=kinetik
MozReview-Commit-ID: C0O7Gnxbocy

--HG--
extra : rebase_source : 6137aae1f8f981f84ea49a5b98adaed50353ff99
2017-08-15 14:58:41 +08:00
Alfredo Yang 5ed8327922 Bug 1387793 - Downgrade assertion to warning. r=kinetik
--HG--
extra : rebase_source : 8edb516ec64a9c0662b80e853650116b972ca261
2017-08-10 11:39:44 +08:00
Alfredo Yang 925ef43dd9 Bug 1359275 - use get() or get_mut()to avoid out of vector boundary. r=kinetik
MozReview-Commit-ID: J4fO0Ynv4WC

--HG--
extra : rebase_source : bbfe10945a2f00bf9173d3fa2d77bc7d6b2af7f5
2017-07-27 10:31:01 +08:00
Kartikaya Gupta ba4b3b9101 Bug 1384233 - Remove SizePrintfMacros.h. r=froydnj
We have a minimum requirement of VS 2015 for Windows builds, which supports
the z length modifier for format specifiers. So we don't need SizePrintfMacros.h
any more, and can just use %zu and friends directly everywhere.

MozReview-Commit-ID: 6s78RvPFMzv

--HG--
extra : rebase_source : 009ea39eb4dac1c927aa03e4f97d8ab673de8a0e
2017-07-26 16:03:57 -04:00
Jean-Yves Avenard f1021e0d6d Bug 1384026 - Reduce memory usage. r=gerald
We dynamically allocate the memory we need and abort if OOM.

MozReview-Commit-ID: FMGWbOXoN8P

--HG--
extra : rebase_source : d6a28017b7c261d2c8acf2321cd30266bd8d5a35
2017-07-25 18:36:52 +02:00
Alfredo Yang 7c75a615c7 Bug 1379047 - treat JPEG as unknown codec since jpeg video track is not supported. r=kinetik
MozReview-Commit-ID: 1ufVK3uRYY3

--HG--
extra : rebase_source : 2d5133d2e84426c41df5b319ae3fdfa7d8f1ced9
2017-07-11 15:19:44 +08:00
Alfredo Yang 3c2e8f57fc Bug 1380468 - update rust parser. r=kinetik
MozReview-Commit-ID: CerH4JHFIP

--HG--
extra : rebase_source : 1f73e9cdb59eddbb4d3913186da75ea13c940466
2017-07-14 10:36:11 +08:00
Alfredo Yang 05427db62a Bug 1380468 - don't fallback when table size is too large. r=kinetik
MozReview-Commit-ID: 3oLLtIm8XqO

--HG--
extra : rebase_source : 840fe48d7a3640b30c6def92c0949df4fa2dd207
2017-07-14 10:34:52 +08:00
Chris Pearce 2d16a23835 Bug 1351124 - Detect MP4 PSSH boxes in MOOF boxes and dispatch those in 'encrypted' events to content. r=jya
We detect when a PSSH is contained in a MOOF and stash them in the
mp4_demmuxer::Moof object.  When the mp4_demuxer::SampleIterator returns a
sample, we check whether it's the first sample from its MOOF, and if so, we
attach any PSSH boxes from that MOOF to the sample.  The TrackBuffersManager
checks samples upon demux, to see whether they have any EME init data attached,
and if so dispatches thoses to the HTMLMediaElement in 'encrypted' events.


MozReview-Commit-ID: F8GobKOr96F

--HG--
extra : rebase_source : 5366f1008979605aa8fc80216cd1d9cc2eefd346
2017-07-12 22:07:15 +12:00
Alfredo Yang 63f786c8c7 Bug 1378607 - update rust mp4 parser. r=kinetik
MozReview-Commit-ID: DzZsShTgik3

--HG--
extra : rebase_source : e226b525f11b608246811aa253a77f63fe47a799
2017-07-07 10:57:42 +08:00
Alfredo Yang 61baf0378d Bug 1378607 - skip unknown codec type. r=kinetik
MozReview-Commit-ID: LX5lH3rOwC8

--HG--
extra : rebase_source : f47ce89f37421b2a5112a5ad387227d26a777195
2017-07-06 11:32:25 +08:00
Alfredo Yang 9c89ebe93e Bug 1372838 - ignore track with jpeg atom. r=kinetik
MozReview-Commit-ID: GrtkXcP4q1e

--HG--
extra : rebase_source : 30a09faf484c0245fbe706e63c5e9f93f85db2a2
2017-06-21 09:46:43 +08:00
Alfredo Yang aa3bc119ce Bug 1374194 - update rust mp4 parser. r=kinetik
MozReview-Commit-ID: BcFrpt0E4Zn

--HG--
extra : rebase_source : aa833169c8c3dfb1a01b54e9ccdda9170de8f407
2017-07-03 11:09:36 +08:00
Alfredo Yang 28a8ae8f7a Bug 1374194 - add ac3/ec3 codec string. r=kinetik
MozReview-Commit-ID: 12t5WfJ6vPc

--HG--
extra : rebase_source : fbc17380188f458d2f5694aaac2dc30901c05eb8
2017-06-22 15:55:37 +08:00
Jean-Yves Avenard a59cb63f30 Bug 1374774: P11. Ignore SPS' timing information when comparing two SPS NALs. r=gerald
They can change from one SPS to the next, causing unecessary reconstruction of the decoder.

MozReview-Commit-ID: IhCnLuzGc2i

--HG--
extra : rebase_source : ff6020c10fe9d2eaee7ee8244c92d0c1535239be
2017-06-23 10:14:07 +02:00
Jean-Yves Avenard 6b75c7d481 Bug 1374774: P10. Attempt to reduce SPS change false positives. r=gerald
We now compare the decoded data rather than the raw data, otherwise as seen in video from bug 1372766, we keep draining the decoder. For some reasons the SPS NALs only differ by 1 byte at a time.

MozReview-Commit-ID: LdXinUZHjD4

--HG--
extra : rebase_source : 0aa768cbcbe5b6df0a2a01df1db61c93537899a2
2017-06-23 03:01:57 +02:00
Jean-Yves Avenard dfd6aac637 Bug 1374774: P9. Only look for SPS changes in stream format change detection. r=gerald
All decoders appear capable of handling content change when just new PPS appears.
So we restrict the test to SPS changes.

MozReview-Commit-ID: LPSfMaTIj6C

--HG--
extra : rebase_source : f2a757e71dfab7938da4f064d073fc21f99edf53
2017-06-22 19:46:27 +02:00
Jean-Yves Avenard ebf91b843f Bug 1374774: P8. Use new SPSNALIterator class. r=gerald
MozReview-Commit-ID: 1nrvInxgugz

--HG--
extra : rebase_source : 7ff257b422845ca0cba606448826260a25095b68
2017-06-23 02:08:41 +02:00
Jean-Yves Avenard 1a62966642 Bug 1374774: P7. Add SPSNAL and SPSNALIterator classes. r=gerald
We will use them to simplify the parsing of the extradata.

MozReview-Commit-ID: 5M5uGXAkkFb

--HG--
extra : rebase_source : bbd641203eb8bdcccb667d1a4e259c1a0462b11e
2017-06-23 01:51:42 +02:00
Jean-Yves Avenard 66b67006ed Bug 1374774: P6. Fix ByteReader constness. r=gerald
MozReview-Commit-ID: 8bQA189OOVF

--HG--
extra : rebase_source : f89e5782add618bfa2676798c5712d88925b2980
2017-06-22 22:50:08 +02:00
Jean-Yves Avenard 852878f9ea Bug 1374774: P5. Ignore duplicated SPS when reading NALs in-band. r=gerald
With some H264 streams, we find that the SPS/PPS NALs are duplicated on the stream. This caused us to treat it as if the content changed due to the discrepency between the extradata found in the MP4 metadata and what found inband.

When scanning for SPS NALs, we now attempt to detect duplicates, and if so ignore them.

MozReview-Commit-ID: D8OVOXSwEkY

--HG--
extra : rebase_source : cbaccee3d2b3d73fc5bf68acb425cb7f34d11fcf
2017-06-22 19:41:33 +02:00
Jean-Yves Avenard 234164b774 Bug 1374774: P3. Remove HasSPS method. r=gerald
It was only used in one spot, and incorrectly at that.

MozReview-Commit-ID: EWkkrAlYT7W

--HG--
extra : rebase_source : a19afe8f49e1e0fd430ddbff81978eb3511c5fb5
2017-06-22 14:44:21 +02:00
Jean-Yves Avenard 8f3424c201 Bug 1374774: P2. Add comment for HasSPS methods. r=gerald
MozReview-Commit-ID: Irvcx5XnPyp

--HG--
extra : rebase_source : 74bec6880424a3716a48a2016adabd4fec47a6d0
2017-06-22 14:42:46 +02:00
Jean-Yves Avenard 0ac3f1c5b4 Bug 1374774: P1. Move H264 methods into H264 code. r=gerald
HasSPS, ExtractExtraData and CompareExtraData have nothing to do with the handling of annex B format. They are raw H264 related methods.

It will also prevent in the following change to have cycling references between two headers.

MozReview-Commit-ID: FCs5aU4GcTU

--HG--
extra : rebase_source : a96fe0c70416d38690b0c2f1dee567b0b025e947
2017-06-22 14:36:11 +02:00
Sebastian Hengst 261b25bf86 Backed out changeset 0d953ca28add (bug 1374774) for bustage at media/libstagefright/binding/H264.cpp(205). 'ptr' not declared. r=backout on a CLOSED TREE 2017-06-24 00:49:18 +02:00
Sebastian Hengst f5e3176d23 Backed out changeset 3a889c491c7f (bug 1374774) 2017-06-24 00:48:23 +02:00
Sebastian Hengst ca778305be Backed out changeset 361c9c559b7e (bug 1374774) 2017-06-24 00:48:18 +02:00
Sebastian Hengst 9ec478d2f5 Backed out changeset 728072e0f9b6 (bug 1374774) 2017-06-24 00:48:09 +02:00
Sebastian Hengst 40948cbef1 Backed out changeset c8d141cd0520 (bug 1374774) 2017-06-24 00:48:04 +02:00
Sebastian Hengst 465af7fa38 Backed out changeset e08d2c276f62 (bug 1374774) 2017-06-24 00:48:00 +02:00
Sebastian Hengst 9d3e7b7424 Backed out changeset ddc1ce464361 (bug 1374774) 2017-06-24 00:47:55 +02:00
Sebastian Hengst 18f07bbb9d Backed out changeset 662829e2529d (bug 1374774) 2017-06-24 00:47:51 +02:00
Sebastian Hengst 85a7e690f4 Backed out changeset 158ce5e7c75b (bug 1374774) 2017-06-24 00:47:46 +02:00
Sebastian Hengst 2650b6b3ca Backed out changeset 9cc4ece5f9d5 (bug 1374774) 2017-06-24 00:47:42 +02:00
Jean-Yves Avenard 829bc5bf3e Bug 1374774: P11. Ignore SPS' timing information when comparing two SPS NALs. r=gerald
They can change from one SPS to the next, causing unecessary reconstruction of the decoder.

MozReview-Commit-ID: IhCnLuzGc2i

--HG--
extra : rebase_source : b292c658098c378b0a6774f0f559a7b55e4903f6
2017-06-23 10:14:07 +02:00
Jean-Yves Avenard 7ce7d15a72 Bug 1374774: P10. Attempt to reduce SPS change false positives. r=gerald
We now compare the decoded data rather than the raw data, otherwise as seen in video from bug 1372766, we keep draining the decoder. For some reasons the SPS NALs only differ by 1 byte at a time.

MozReview-Commit-ID: LdXinUZHjD4

--HG--
extra : rebase_source : 022e7a011e3929846f00d1be6590f3ea1c697e7c
2017-06-23 03:01:57 +02:00
Jean-Yves Avenard 7d1e767817 Bug 1374774: P9. Only look for SPS changes in stream format change detection. r=gerald
All decoders appear capable of handling content change when just new PPS appears.
So we restrict the test to SPS changes.

MozReview-Commit-ID: LPSfMaTIj6C

--HG--
extra : rebase_source : 524316ba61ffff1549a0828685ac657abe687426
2017-06-22 19:46:27 +02:00
Jean-Yves Avenard 0392b68694 Bug 1374774: P8. Use new SPSNALIterator class. r=gerald
MozReview-Commit-ID: 1nrvInxgugz

--HG--
extra : rebase_source : ac6782a20d882fa0c67db1214102dbd956eae019
2017-06-23 02:08:41 +02:00
Jean-Yves Avenard 0e9d876c18 Bug 1374774: P7. Add SPSNAL and SPSNALIterator classes. r=gerald
We will use them to simplify the parsing of the extradata.

MozReview-Commit-ID: 5M5uGXAkkFb

--HG--
extra : rebase_source : e83c8995ebbc60359029f15334e91baaeb098bbd
2017-06-23 01:51:42 +02:00
Jean-Yves Avenard 8d489f9bb9 Bug 1374774: P6. Fix ByteReader constness. r=gerald
MozReview-Commit-ID: 8bQA189OOVF

--HG--
extra : rebase_source : 4f4e371c43da839ae6168241879d580b97435bb0
2017-06-22 22:50:08 +02:00