Commit Graph

1257 Commits

Author SHA1 Message Date
Alex Chronopoulos
851a3ee589 Bug 1431810 - Disable Opus phase inversion on stereo to mono downmix. r=rillian
MozReview-Commit-ID: 5eaSPQzUu9o

--HG--
extra : rebase_source : 126d9faa2824d29fc73cf040b033ca585dfdbcee
2018-03-15 18:28:14 +02:00
Margareta Eliza Balazs
adebb06ac1 Merge inbound to mozilla-central. a=merge 2018-03-28 00:48:11 +03:00
Nathan Froyd
052d391b9c Bug 1448031 - make various audio/video/media constructors explicit; r=gerald
Attempting to stand up the static analysis for Android builds revealed
that we weren't being explicit enough.
2018-03-27 10:51:32 -04:00
Bryce Van Dyk
5e0fc84a7a Bug 1447821 - Add logging to ADTSSampleConverter ctor. r=jya
Add logging to aid in debugging of our EME ADTS conversion path.

MozReview-Commit-ID: A7Wv8n31V8V

--HG--
extra : rebase_source : 13f20179aa29180047a37a127029d0e28a1c4f80
2018-03-26 14:29:31 -04:00
Bryce Van Dyk
dd07217b57 Bug 1447821 - Update EMEDecoderModule to handle profile values < 1. r=jya
Update EMEDecoderModule to use 2 as profile number when the given profile is
less than 1 or greater than 4. The CDM doesn't appear to care what values are
given, but 2 was chosen as a safe fallback per discussion on the bug. This
addresses the use case where 0 values are stored in mProfile due to the use of
extended profiles (which are then stored in the mExtendedProfile field).

MozReview-Commit-ID: 5XgabNDsgdf

--HG--
extra : rebase_source : dd66a872aaac2acf4af55f06d3c24f53debe4e63
2018-03-23 14:54:41 -04:00
Gurzau Raul
1368521911 Backed out 3 changesets (bug 1431810) for failing test_bug1431810_opus_downmix_to_mono.html on Windows
Backed out changeset a01c1941a829 (bug 1431810)
Backed out changeset 43eb1c01c67f (bug 1431810)
Backed out changeset 3fe9d85d684a (bug 1431810)
2018-03-26 12:09:42 +03:00
Alex Chronopoulos
85119eac26 Bug 1431810 - Disable Opus phase inversion on stereo to mono downmix. r=rillian
MozReview-Commit-ID: 5eaSPQzUu9o

--HG--
extra : rebase_source : 126d9faa2824d29fc73cf040b033ca585dfdbcee
2018-03-15 18:28:14 +02:00
Jean-Yves Avenard
ebae2f1fac Bug 1444479 - P9. Remove WMF audio decoder channel limit. r=padenot
MozReview-Commit-ID: 4xj1Cd0ZzrA
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
48fb044530 Bug 1444479 - P8. Remove FFmpeg audio decoder channel limitation. r=padenot
MozReview-Commit-ID: JQWcOny5Tgd
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
5d750cff32 Bug 1444479 - P7. Allow Apple AudioToolbox decoder handle more than 8 channels. r=padenot
Apple layout standard has a 1:1 equivalence with the WAVE standard. As such, any streams under 18 channels, properly defining a channel layout, should play on all platform.
Otherwise, as Opus and Vorbis, the result will be platform dependent.

MozReview-Commit-ID: ID6b9u2UNQr
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
6edfbc05e3 Bug 1444479 - P6. Make Opus and Vorbis decoder deal with more channels than 8. r=padenot
Under 8 channels, the audio will be reordered so it can be playable on any platforms.
Over 8 channels, the channels will be as output by the decoder. Playing of such stream will be platform dependent as neither Opus nor Vorbis define a channel layout with more than 8 channels.

With WebAudio however, the result will be platform independent (as long as you don't attempt to play it)

MozReview-Commit-ID: 93ATiKm9y20
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
eae919be64 Bug 1431221 - P10. Properly retrieve and set channel layout for opus and vorbis. r=cpearce
MozReview-Commit-ID: A4jEQzHRKDT
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
c69d04a58b Bug 1431221 - P9. Properly retrieve and set channel layout on windows. r=cpearce
MozReview-Commit-ID: GKpOAgPP9qp
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
49fdb79628 Bug 1431221 - P8. Pass channel layout with FFmpeg. r=padenot
MozReview-Commit-ID: LgmguXHZSnB
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
72acc6380b Bug 1431221 - P7. Pass channel layout on mac. r=padenot 2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
e9e8bc2708 Bug 1431221 - P4. Use similar channel decriptions as Windows WAVE and FFmpeg. r=padenot
This makes it for future easier conversion for the FFmpeg and Windows WMF decoder, so that we can use their channel map directly.

Also introduce a difference between 2F2 and QUAD, cubeb supports will be added in a future change.

MozReview-Commit-ID: L5NkjeuGslI
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
0924b93c38 Bug 1431221 - P2. Have mac AAC decoder use proper output layout. r=padenot
We previously made no difference between 3.1, 2F2 or 4.0...

MozReview-Commit-ID: Bt7UVAT5uWf
2018-03-24 10:57:53 +01:00
Jean-Yves Avenard
34790a4e8a Bug 1435709 - Don't attempt to use stagefright to decode theora. r=padenot
MozReview-Commit-ID: 215BhSSWGBC

--HG--
extra : rebase_source : ce13146082438224577e6238279c161f3bc7bfc0
2018-03-02 07:49:25 +01:00
Dan Glastonbury
14a652c037 Bug 1430942: Tighten up handling codec specific config. r=gerald
MozReview-Commit-ID: 8GO6z7U1kx8

--HG--
extra : rebase_source : f811765d99a6df486e7faaa8534c37ec56ff15fa
2018-03-02 01:33:53 +02:00
Chris Pearce
1cfc65da51 Bug 1392747 - Backed out changeset 6524c2d721db. r=backout
The logging added in this patch was landed to help debug very rare shutdown
failures on android, but the logging runs on other platforms and is annoying.
No one is looking at fixing the rare shutdown problem on Android. So remove the
logging until fixing the shutdown failure becomes a priority.
2018-02-20 15:54:00 +13:00
Masatoshi Kimura
0c0ddaa7e8 Bug 1425219 - Stop using GetNativePath in ffvpx. r=jya
FFVPXRuntimeLinker could not handle file paths that contain characters outside the current system code page on Windows. This patch will fix it by using wide char APIs.

MozReview-Commit-ID: 9ES1xFELjDs

--HG--
extra : rebase_source : 4bdc082bd6db9263b41fe74d524e0a4d98802ea8
extra : intermediate-source : 8afa22df3893c678884e3a0811fb6c82790c1a3c
extra : source : c6f916a967a78e176bdb699a85e194bbdc372bce
2017-12-15 23:16:39 +09:00
Chris Pearce
b37bd17a56 Bug 1433344 - Convert encrypted AAC to ADTS before decryption. r=jya
MozReview-Commit-ID: IGmBfJtYsCi

--HG--
extra : rebase_source : d066644e848f8fb379607d0168960132881d7df8
2018-01-30 14:39:09 +13:00
Cosmin Sabou
b35f58da34 Backed out changeset 1fea6030657b (bug 1433344) for mda failures on EMEDecoderModule.cpp on a CLOSED TREE 2018-02-01 03:05:53 +02:00
Chris Pearce
328670db16 Bug 1433344 - Convert encrypted AAC to ADTS before decryption. r=jya
MozReview-Commit-ID: IGmBfJtYsCi

--HG--
extra : rebase_source : a0752ed6c85faf4333ae84a3e5b20695b5bf26a6
2018-01-30 14:39:09 +13:00
Chris Pearce
4c1eb3b8bf Bug 1428719 - Adjust decrypt throttle to smooth out decrypt bursting when seeking. r=gerald
We've had reports from a partner that their EME content is failing after a
seek. This is caused by decrypting EME content too fast after a seek triggering
bug 1338924. So we need to make our decryption less "bursty". So adjust our
decrypt throttling to instead throttle the decrypt to 200ms of content every
100ms of wall-clock-time, rather than 2s of content every 1s of
wall-clock-time. This makes us decode more smoothly, and appears to resolve the
issue with the partner stream.

MozReview-Commit-ID: 1nNuTJrreN

--HG--
extra : rebase_source : 3c2c9529a5493b30db1214bba782243be509b56a
2018-01-19 14:55:12 +13:00
Jean-Yves Avenard
ce0fab81aa Bug 1431169 - P2. Fix Apple AAC decoder on some files. r=rillian
It is necessary to provide the AAC's magic cookie to the decoder for some files (such as ambisonics or quad-stereo). We already do so for the Windows and FFmpeg decoder.
It's another case of how did it work before really.

MozReview-Commit-ID: sOtY1sPeBU

--HG--
extra : rebase_source : 4d7d7d18aa878f20238f48ee17cd8dfc267356fc
2018-01-17 22:00:16 +01:00
Chris Pearce
f800da4db3 Bug 1430673 - Remove CDMProxy::GetSessionIdsForKeyId(). r=JamesCheng
MozReview-Commit-ID: EMT8BaHE2Pf

--HG--
extra : rebase_source : 292412397b5a3617857daf199e324f3560a58f14
2018-01-16 11:38:27 +13:00
Chris Peterson
37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Kaku Kuo
9dbfc93c6f bug 1422239 - relax the resolution limitation of WMF H264 decoder; r=jya
https://msdn.microsoft.com/en-us/library/windows/desktop/dd797815(v=vs.85).aspx
Relax the resolution limitation from "width <= 4096 and height <= 2304" to "any width and height combination as long as the total pixel count is under 4096x2304".

MozReview-Commit-ID: 5wHiJfLaJkp

--HG--
extra : rebase_source : 11bf99d0eb3b50ea0199a7f65e0491e43318d29c
2018-01-08 16:37:40 +08:00
JW Wang
79b5f2dd2e Bug 1425996 - fix build error: unused variable 'rv'. r=gerald
MozReview-Commit-ID: 7MhsSWbxB3z

--HG--
extra : rebase_source : 81207a1e5b663314295f2f95afd4b726ffe8f12d
2017-12-21 12:12:42 +08:00
Chris Pearce
da0df79d86 Bug 1426291 - Use DataMutex<T> to synchronize CDMCaps. r=jwwang
MozReview-Commit-ID: NLnoItNZKP

--HG--
extra : rebase_source : 39dd374343989350897aa3ab22b46fb554be17a9
2017-12-20 16:16:50 +13:00
John Lin
2ced369af1 Bug 1424930 - remove telemetry for tunneled playback support on Android devices. r=jwwang
MozReview-Commit-ID: HKJ0gBBfRKT

--HG--
extra : rebase_source : 545e1ae8f97cfebed6c2ac6e8c3b837274687f14
2017-12-13 10:23:58 -06:00
Sylvestre Ledru
4591d82b23 Bug 1394734 - Replace CONFIG['CLANG*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: HbF5oT5HW6f

--HG--
extra : rebase_source : eca479b6ae4bff7f600d1cdb39e11ac2057e4e79
2017-12-07 22:09:38 +01:00
Sylvestre Ledru
5de63ef061 Bug 1394734 - Replace CONFIG['MSVC'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 5orfnoude7h

--HG--
extra : rebase_source : 1ed9a6b56e1d27221a07624767a7fb0e6147117f
2017-12-08 13:46:13 +01:00
Sylvestre Ledru
9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
sotaro
2063225117 Bug 1423806 - Enable IMFYCbCrImage with WebRender r=mattwoodrow 2017-12-07 22:15:34 +09:00
Gerald Squelart
c5aeab4f69 Bug 1407810 - Use DDMOZ_LOG in media stack - r=jwwang
Mostly-mechanical replacement of MOZ_LOG with DDMOZ_LOG, usually just removing
the class name and `this` pointer (as they are already implicitly recorded).
Some files needed a bit more work when logging was done from helper classes or
static functions.

MozReview-Commit-ID: IeJJmzYqWMQ

--HG--
extra : rebase_source : 94200838dcdaf6c3bda9de30042ce2d307237eef
2017-10-13 16:31:59 +11:00
Gerald Squelart
1b357db99b Bug 1407810 - Use DDLogger in media stack - r=jwwang
Mostly-mechanical additions:
- Log constructions&destructions, usually by just inheriting from
  DecoderDoctorLifeLogger, otherwise with explicit log commands (for internal
  classes for which DecoderDoctorTraits can't be specialized),
- Log links between most objects, e.g.: Media element -> decoder -> state
  machine -> reader -> demuxer -> resource, etc.

And logging some important properties and events (JS events, duration change,
frames being decoded, etc.)

More will be added later on, from just converting MOZ_LOGs, and as needed.

MozReview-Commit-ID: KgNhHSz35t0

--HG--
extra : rebase_source : dd7206e350e32671adc6f3b9e54ebf777251de2c
2017-10-10 17:55:27 +11:00
Nicolas Silva
02d0cd83e9 Bug 1419255 - Add a Proxy KnowsCompositor implementation that can be used off the main thread. r=sotaro 2017-12-05 11:56:20 +01:00
John Lin
33546f8acf Bug 1392747 - add debug message to trace media shutdown process. r=jwwang
MozReview-Commit-ID: LL19lxlSJem

--HG--
extra : rebase_source : 57ace04484fd3c4f9687e0f79745249358edf56b
2017-11-29 16:28:11 +08:00
sotaro
901877f7a7 Bug 1405562 - Enable D3D11YCbCrImage usage with WebRender r=mattwoodrow 2017-12-01 18:01:35 +09:00
Cosmin Sabou
82ee4aee12 Backed out changeset 994147e6fd70 (bug 1405562) for build bustages on obj-firefox/dist/include/mozilla/layers/KnowsCompositor.h💯75 r=backout on a CLOSED TREE 2017-12-01 07:35:36 +02:00
sotaro
58de17aca4 Bug 1405562 - Enable D3D11YCbCrImage usage with WebRender r=mattwoodrow 2017-11-30 20:39:20 -08:00
Jean-Yves Avenard
46c877fa75 Bug 1421187 - P4. Make mac decoder output YUV420 format. r=mattwoodrow
There's little advantage over using NV12 and using YUV420 allows for easier and faster frame copy. We assume of course that Apple's VideoToolbox have more optimized code than we do.

MozReview-Commit-ID: IjvepxW3OZI

--HG--
extra : rebase_source : 089f5a63c4871366aed8f0c0ef3ef6bd3c2d0a0f
2017-11-28 16:41:40 +01:00
Jean-Yves Avenard
424a8ff8a0 Bug 1417973 - Always use the AMD GPU decoder. r=mattwoodrow
High resolution, high framerate was disabled by default on old AMD cards on the provisio that it was bad. But this assumes that the CPU decoder could do it better.
This assumption appears fragile at best, as CPU with those old adapter are likely to be old and underpower to start with.

Chrome doesn't appear to restrict use of those cards to a given resolution.
So we disable this restriction, while making it user configurable.

MozReview-Commit-ID: HhADHNR0FdJ

--HG--
extra : rebase_source : ece39cd9b84c6e372d1002ee12e72523cee3d04d
2017-11-22 20:58:09 +01:00
Alfredo.Yang
d5ba0f15df Bug 1419682 - use unwrap_or() instead of map() lambda. r=kinetik
MozReview-Commit-ID: Er1CjuPDAF5

--HG--
extra : rebase_source : d8b924087272351901b07877d126ac85b7fdbfc7
2017-11-22 17:15:37 +08:00
Brindusan Cristian
9f3bd430c2 Merge inbound to mozilla-central a=merge r=merge 2017-11-28 11:50:57 +02:00
sotaro
aded950985 Bug 1305906 - Add YUVColorSpace handling in WMFVideoMFTManager r=mattwoodrow 2017-11-28 09:20:11 +09:00
James Cheng
4641c3c18f Bug 1420792 -[CID 1422243] Execution cannot reach statement: case 4: in AnnexB::ConvertSampleTo4BytesAVCC. r=jya
We have already early returned by checking nalLenSize == 4. So there is no need to check it again, delete the deadcode.

MozReview-Commit-ID: GEcPGHDslON

--HG--
extra : rebase_source : 78102d946499f5908d7cb20c7bc148cb2fc87821
2017-11-27 11:33:55 +08:00
Alfredo.Yang
1691dbc3fd Bug 1417795 - remove mp4_demuxer namespace part6. r=kinetik
MozReview-Commit-ID: FI139lJTTX9

--HG--
extra : rebase_source : 5871e418b7cad1c95976e46535d94d7374629156
2017-11-17 11:57:44 +08:00
Alfredo.Yang
d6a0eb9d74 Bug 1417795 - remove mp4_demuxer namespace part3. r=kinetik
MozReview-Commit-ID: 9fM2VjY4Ckk

--HG--
extra : rebase_source : 24d971d44e1d9bd8b1589b4b542d792f75df376d
2017-11-17 08:53:25 +08:00
Alfredo.Yang
a0056437d9 Bug 1417795 - remove mp4_demuxer namespace part2. r=kinetik
MozReview-Commit-ID: F8z1QW6WuUU

--HG--
extra : rebase_source : 9d137794bb1c6465da1d6b7aa6ba50265172ada3
2017-11-16 16:24:22 +08:00
Alfredo.Yang
a2cd247c8f Bug 1417795 - remove mp4_demuxer namespace part1. r=kinetik
MozReview-Commit-ID: 6YrURoOq2wk

--HG--
extra : rebase_source : 3ea026780b210b42bd41163c654580a920d30181
2017-11-16 15:57:15 +08:00
Alfredo.Yang
187142dbec Bug 1417794 - move Adts.h, AnnexB.h and H264.h to dom/media/platform/agnostic/bytestreams. r=kinetik
MozReview-Commit-ID: LUqvIdCD2XD

--HG--
rename : dom/media/platforms/agnostic/mp4_demuxer/Adts.cpp => dom/media/platforms/agnostic/bytestreams/Adts.cpp
rename : dom/media/platforms/agnostic/mp4_demuxer/Adts.h => dom/media/platforms/agnostic/bytestreams/Adts.h
rename : dom/media/platforms/agnostic/mp4_demuxer/AnnexB.cpp => dom/media/platforms/agnostic/bytestreams/AnnexB.cpp
rename : dom/media/platforms/agnostic/mp4_demuxer/AnnexB.h => dom/media/platforms/agnostic/bytestreams/AnnexB.h
rename : dom/media/platforms/agnostic/mp4_demuxer/H264.cpp => dom/media/platforms/agnostic/bytestreams/H264.cpp
rename : dom/media/platforms/agnostic/mp4_demuxer/H264.h => dom/media/platforms/agnostic/bytestreams/H264.h
rename : dom/media/platforms/agnostic/mp4_demuxer/moz.build => dom/media/platforms/agnostic/bytestreams/moz.build
extra : rebase_source : 45b73271e0bbd3da897a5c218c35343fd28071a1
2017-11-16 15:05:17 +08:00
Jean-Yves Avenard
55db25cdd9 Bug 1417442 - P4. Indicate surface type in decoder description. r=mattwoodrow
MozReview-Commit-ID: 3RXdPMfr7O

--HG--
extra : rebase_source : e80dc9523e998be4d00b16ef58a3d93bd924bea3
2017-11-15 23:33:37 +01:00
Jean-Yves Avenard
457659e8e8 Bug 1417442 - P3. Don't enable nv12 surfaces if we failed to parse the version string. r=mattwoodrow
MozReview-Commit-ID: 1MKtCOO1gcS

--HG--
extra : rebase_source : c3c8ca3a549059997919f99355d06a310049f5b2
2017-11-15 23:33:37 +01:00
Alfredo.Yang
b3c4d27b09 Bug 1417011 - move MP4Metadata and MoofParser to ./dom/media/mp4. r=kinetik
MozReview-Commit-ID: IdNFBer3RCT

--HG--
rename : media/libstagefright/binding/include/mp4_demuxer/Atom.h => dom/media/mp4/Atom.h
rename : media/libstagefright/binding/include/mp4_demuxer/AtomType.h => dom/media/mp4/AtomType.h
rename : media/libstagefright/binding/Box.cpp => dom/media/mp4/Box.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/Box.h => dom/media/mp4/Box.h
rename : media/libstagefright/binding/BufferStream.cpp => dom/media/mp4/BufferStream.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/BufferStream.h => dom/media/mp4/BufferStream.h
rename : media/libstagefright/binding/DecoderData.cpp => dom/media/mp4/DecoderData.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/DecoderData.h => dom/media/mp4/DecoderData.h
rename : media/libstagefright/binding/Index.cpp => dom/media/mp4/Index.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/Index.h => dom/media/mp4/Index.h
rename : media/libstagefright/binding/include/mp4_demuxer/Interval.h => dom/media/mp4/Interval.h
rename : media/libstagefright/binding/MP4Metadata.cpp => dom/media/mp4/MP4Metadata.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h => dom/media/mp4/MP4Metadata.h
rename : media/libstagefright/binding/MoofParser.cpp => dom/media/mp4/MoofParser.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/MoofParser.h => dom/media/mp4/MoofParser.h
rename : media/libstagefright/binding/ResourceStream.cpp => dom/media/mp4/ResourceStream.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/ResourceStream.h => dom/media/mp4/ResourceStream.h
rename : media/libstagefright/binding/SinfParser.cpp => dom/media/mp4/SinfParser.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/SinfParser.h => dom/media/mp4/SinfParser.h
rename : media/libstagefright/binding/include/mp4_demuxer/Stream.h => dom/media/mp4/Stream.h
extra : rebase_source : fe414148a53dede2def894131cd1f69920a1dd69
2017-11-15 12:00:14 +08:00
Alfredo.Yang
0c947765e5 Bug 1417011 - move Adts.h, AnnexB.h and H264.h to agnostic/mp4_demuxer. r=kinetik
MozReview-Commit-ID: HQUtpmF6Xky

--HG--
rename : media/libstagefright/binding/Adts.cpp => dom/media/platforms/agnostic/mp4_demuxer/Adts.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/Adts.h => dom/media/platforms/agnostic/mp4_demuxer/Adts.h
rename : media/libstagefright/binding/AnnexB.cpp => dom/media/platforms/agnostic/mp4_demuxer/AnnexB.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/AnnexB.h => dom/media/platforms/agnostic/mp4_demuxer/AnnexB.h
rename : media/libstagefright/binding/H264.cpp => dom/media/platforms/agnostic/mp4_demuxer/H264.cpp
rename : media/libstagefright/binding/include/mp4_demuxer/H264.h => dom/media/platforms/agnostic/mp4_demuxer/H264.h
extra : rebase_source : 1e38929091ebb1a546ca2b17fee8d576a21cad4e
2017-11-15 11:39:07 +08:00
Brindusan Cristian
cdb95907ba Merge mozilla-central to autoland r=merge a=merge on a CLOSED TREE 2017-11-16 00:41:40 +02:00
Jean-Yves Avenard
8d175d387f Bug 1416473 - Don't treat MF_E_TRANSFORM_NEED_MORE_INPUT as fatal error. r=mattwoodrow
The VP9 decoder following a flush will often return MF_E_NOTACCEPTING. Attempting to request an output would cause the error MF_E_TRANSFORM_NEED_MORE_INPUT to be returned. We can simply feed the decoder with the compressed sample.

MozReview-Commit-ID: GUNniZsOKWr

--HG--
extra : rebase_source : 047a0d4dbea16e6f3d7e2269432ed3a591387dbe
2017-11-15 19:29:24 +01:00
Andrea Marchesini
4b1b084ce7 Bug 1416724 - part 3 - AbstractThread::Dispatch return value check in dom/media, r=jwwang 2017-11-15 07:58:03 +01:00
shindli
385fb3428c Backed out 4 changesets (bug 1416724) for failing /builds/worker/workspace/build/src/dom/media/hls/HLSDemuxer.cpp:89:5 r=backout on a CLOSED TREE
Backed out changeset 45352aa4319d (bug 1416724)
Backed out changeset 01d1e5263bcd (bug 1416724)
Backed out changeset bc854c315ec8 (bug 1416724)
Backed out changeset 35a50167485d (bug 1416724)
2017-11-15 09:49:04 +02:00
Andrea Marchesini
642cdd108b Bug 1416724 - part 3 - AbstractThread::Dispatch return value check in dom/media, r=jwwang 2017-11-15 07:58:03 +01:00
Nicholas Nethercote
b15805ab71 Bug 1414759 - Replace some unnecessary media prefs with code constants. r=cpearce
Specifically:
- media.decoder.limit
- media.num-decode-threads
- media.resampling.rate
- media.wmf.decoder.thread-count
- media.cache.resource-index

--HG--
extra : rebase_source : a46aa7078b98b4731ec96b66398c51aa6cb42d27
2017-11-13 17:16:06 +11:00
Alfredo.Yang
4e9d007f90 Bug 1413076 - return other kind of error in addition to OOM. r=jya
MozReview-Commit-ID: CpRF1Kr5Z2c

--HG--
extra : rebase_source : 56dbc1926d5e051ad5261d4bd495c9fbe5c26833
2017-10-31 10:13:51 +08:00
Csoregi Natalia
f51f922391 Merge mozilla-central to mozilla-autoland. r=merge a=merge on a CLOSED TREE 2017-11-06 12:49:03 +02:00
James Cheng
895569636e Bug 1414760 - Fix calling a function without resolving its declaration. r=jolin
MozReview-Commit-ID: 38lJgykKMT5

--HG--
extra : rebase_source : ca8eb0e013255e4259b246c35c262464711df8dd
2017-11-06 17:13:06 +08:00
JerryShih
bc746b55a9 Bug 1409176 - handle decoder error in WMFMediaDataDecoder::ProcessDecode(). r=jya,mattwoodrow
The DXVA decoder might hit some error because of the hardware device status.
This patch try to pass the error code to the decoder promise object to
deal with the error.

MozReview-Commit-ID: IAj8gzKGF3j
2017-11-06 16:07:22 +08:00
Ralph Giles
92f3d837b2 Bug 1413734 - av1: Update decoder library. r=kinetik
Update to upstream commit id e87fb2378f01103d5d6e477a4ef6892dc714e614
from a couple of weeks ago to pick up changes.

MozReview-Commit-ID: H7H69A7qFXD

--HG--
extra : rebase_source : dee676da15b65e4eea612d20529c4fb312bbddfb
2017-11-01 15:36:09 -07:00
Jean-Yves Avenard
ddd448a846 Bug 1295886 - P9. Fix linkage of libmozav* libs on Android. r=snorp
Using flag PR_LD_LOCAL causes PR_LoadLibraryWithFlags to fail, and there should be no difference with PR_LD_GLOBAL anyway on Android.

MozReview-Commit-ID: DAduV8yg8Sx

--HG--
extra : rebase_source : 83f28e6b74dcc7d58bf780ad1451153c4c447a0a
2017-11-01 11:41:22 +01:00
Jean-Yves Avenard
032cb23c68 Bug 1295886 - P8. Never use AndroidDecoderModule to decode FLAC. r=gerald
The behaviour of the system decoder is unpredictable.

MozReview-Commit-ID: FubvCm0xyiL

--HG--
extra : rebase_source : 4ac49f1c6fc575e361520598de413f7439a05d0e
2017-11-01 11:37:09 +01:00
Jean-Yves Avenard
af8b24d7c1 Bug 1295886 - P7. Add support for S16 decoded output. r=gerald
Android audio backend only supports S16 audio sample, so configure ffmpeg audio decoder to output 16 bits audio by default. Adding format conversions as necessary.

MozReview-Commit-ID: J6N4rbMZ3Ug

--HG--
extra : rebase_source : 7a8a72a7e9cd3dde2c8659d363875c6d5072b6b2
2017-11-01 11:33:06 +01:00
Philippe Normand
67cdca88b3 Bug 1413528 - Non-unified build fixes for Apple decoders. r=cpearce
In AppleCMLinker.cpp, Logging.h and PlatformDecoderModule.h are needed for the LOG macro.
In AppleATDecoder.cpp VideoUtils.h is needed because FramesToTimeUnit() is called in ::DecodeSample().

MozReview-Commit-ID: 2guOwAsYJF1

--HG--
extra : amend_source : e1e98650060f8946361823b5e634d5bf51709a0f
2017-11-01 13:49:51 +00:00
Jean-Yves Avenard
241e778f48 Bug 1406503 - P4. Re-create av_parser when flushing. r=jwwang
It is unknown if an av_parser is usable after having been drained. So to be certain, we simply tear it down and re-create it.

MozReview-Commit-ID: 6NFMHbRMwxs

--HG--
extra : rebase_source : c31db990ef04ec2586d965b9a08be47532bd87a2
2017-10-27 00:45:27 +02:00
Jean-Yves Avenard
709d5236b7 Bug 1406503 - P3. Also drain av_parser when draining. r=jwwang
Per FFmpeg documentation: to signal EOF to the av_parser, input length should be 0 (so that the last frame can be output).

MozReview-Commit-ID: F22RcRnT3HS

--HG--
extra : rebase_source : f704e33526347244d38d1ab0b7fa1e5a0cda84cb
2017-10-27 00:41:17 +02:00
Jean-Yves Avenard
58d8f58fdd Bug 1406503 - P2. Use common draining mechanism for both audio and video decoder. r=jwwang
MozReview-Commit-ID: AtDHOuDfpi5

--HG--
extra : rebase_source : bdc16d68a69d8987559663ea1cd2a47405fcaa26
2017-10-26 22:56:32 +02:00
Jean-Yves Avenard
e147a460d9 Bug 1406503 - P1. Abstract FFmpeg decoding so that an av_parser can also be used for audio. r=jwwang
MozReview-Commit-ID: 4bNxLhYKqVG

--HG--
extra : rebase_source : fb444f2b51fc6f23d0a4c76db337fd7324c6cc1c
2017-10-26 22:08:33 +02:00
Jean-Yves Avenard
a1558ff6b2 Bug 1347352 - Make FFmpeg LogLevel controlled by PDM logging level. r=jwwang
MozReview-Commit-ID: 9yVNXvIhnUP

--HG--
extra : rebase_source : 0ff1ae4fa1ae78e9e06e0c21ec15c235604cb236
2017-10-29 18:29:45 +01:00
Alfredo.Yang
ae23abee61 Bug 1412183 - use BufferReader instead of ByteReader in AnnexB parser. r=kinetik
MozReview-Commit-ID: YZ4vo7o0Gs

--HG--
extra : rebase_source : 01d7242162cc31dfe1d703e4ded03cd8c5d93748
2017-10-25 09:58:43 +08:00
Alfredo.Yang
9965b731e6 Bug 1412177 - use BufferReader instead of ByteReader in wave decoder. r=kinetik
MozReview-Commit-ID: 2UBfsXYZ7gw

--HG--
extra : rebase_source : 2bff53b074f30f5bef5ce746a2f0a226f6be678a
2017-10-26 09:19:26 +08:00
James Cheng
884fc56be9 Bug 1411523 - Remove 'this' from lambda captures [self, this] under dom/media r=jwwang
Capturing |this| only if |self| needs to appear more than twice in a lambda.

MozReview-Commit-ID: 38iYDznjgBH

--HG--
extra : rebase_source : 9471fd4519c5c5be6e6e10eb11db8eeb041327d1
2017-10-26 16:59:40 +08:00
Jean-Yves Avenard
b7f6b46a82 Bug 1366201 - P5. Get around FFmpeg bug with corrupted data. r=gerald
According to FFmpeg documentation, the out parameter is "set to size of parsed buffer or zero if not yet finished. " however this is only the case if no error occurred; otherwise it is left untouched.

We want the invalid content to generate a decoding error, so we set size to inputSize to ensure decoding failed later.

MozReview-Commit-ID: FZeiZUdUtLG

--HG--
extra : rebase_source : 2e81d730bacaea5bb968f704a36b403117dafcba
2017-10-25 18:25:37 +02:00
Sylvestre Ledru
d60d69e2cb Bug 1411001 - Remove the +x permissions on cpp & h files r=froydnj
MozReview-Commit-ID: DjDkL20wRg0

--HG--
extra : rebase_source : a343d83d1f4e97e4ba56d0f57fec93079df0b5ea
2017-10-23 20:59:55 +02:00
James Cheng
6512232414 Bug 1407919 - Part7 - Check bit depth in PDM::Supports. r=gerald,jya
MozReview-Commit-ID: ATW9sZeDCTu

--HG--
extra : rebase_source : d4df293dee735548aa8174e1158b7a87c51c3bec
2017-10-17 01:04:37 +08:00
Jean-Yves Avenard
85eb08473d Bug 1409272 - P1: Remove unnecessary and/or unused variables. r=jwwang
MozReview-Commit-ID: J9qiqEfU05N

--HG--
extra : rebase_source : 1cd492bc252b19598115c03165e034faced12ffd
2017-10-12 19:07:09 +02:00
Ralph Giles
1809099a2f Bug 1409105 - Downsample av1 images unconditionally. r=kinetik
Adding partial support for 10/12-bit video images seems to have
broken the native pixel-stride support we were using to pass
8-bit AV1 frame data formatted in 16-bit pixel values, resulting
in vertical green lines.

Revert to the earlier behaviour of always downsampling to 8 bit data.
This is slower for the demo stream, but at least displays correctly.

MozReview-Commit-ID: 8kSd9kph9DE

--HG--
extra : rebase_source : 040795b4d99a2001397c0021f34d39535aa4aa2d
2017-10-17 12:24:50 -07:00
Sebastian Hengst
f0471958e1 Backed out changeset f2af71dbdc75 (bug 1400674) 2017-10-16 10:18:00 +02:00
Jean-Yves Avenard
193734434e Bug 1400674 - P2: Remove unnecessary and/or unused variables. r=jwwang
MozReview-Commit-ID: J9qiqEfU05N

--HG--
extra : rebase_source : 99b7fbe51d5b3d9808c41802c4f9547bfb616fe2
2017-10-12 19:07:09 +02:00
Jonathan Watt
60fa0649f2 Bug 1406819 - Remove various bits of dead code from dom/. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D109
2017-10-11 10:09:13 +01:00
Jean-Yves Avenard
95990a22df Bug 1403622 - Allow VP8 HW decoder where known not to crash. r=cpearce
Windows 10 Falls Creator Update build 16287 is known to have the fix to the problem that made bug 1403063 necessary.

MozReview-Commit-ID: 5m3ZWMes1yl

--HG--
extra : rebase_source : 5f6cd508de75f7e315f4334f76d64b389e4f2ce3
2017-10-09 10:43:54 +02:00
Tom Ritter
f49999833d Bug 1406380 Fix -Wreorder warnings r=njn
MozReview-Commit-ID: 7Zh2pvAMpXR

--HG--
extra : rebase_source : 5052112ad66a66cd2974c4140c3fd430dcaa3adc
2017-10-09 01:36:36 -05:00
John Lin
00a6c9045b Bug 1403849 - p3: add telemetry to record tunneled playback support. r=francois,jya
MozReview-Commit-ID: 52HCnvYT56P

--HG--
extra : rebase_source : f2b3b390e326328b90cce2dfc659972fed7ed02e
2017-09-29 18:12:09 +08:00
Jean-Yves Avenard
d28995afd5 Bug 1215089 - P10: Enable 10/12 bits video with OGL compositor. r=mattwoodrow
MozReview-Commit-ID: AOSZla0ZX4S

--HG--
extra : rebase_source : b128a7979602fe78111a9c656bf3801fa26dbf56
2017-09-30 01:22:40 +02:00
Jean-Yves Avenard
fa09392130 Bug 1215089 - P8: Only enable 10/12 bits videos with software compositor. r=mattwoodrow
MozReview-Commit-ID: 2tdeH2kdZ3P

--HG--
extra : rebase_source : 4c257032868d6c295c72b1b2a3c64d046e903d7f
2017-09-29 21:39:50 +02:00
Jean-Yves Avenard
e9ab6e6eaf Bug 1215089 - P4: Add support to 10 and 12 bits YUV images to FFmpeg decoder. r=kentuckyfriedtakahe
This allows for decoding VP9 profile 2 and 3.

At this stage, it is not possible to render the decoded frames.

MozReview-Commit-ID: DFXMvaM8Ynb

--HG--
extra : rebase_source : e17f24a00595461910f6d0cbd8ef4ba25453e8c5
2017-06-29 23:11:06 +02:00
Jean-Yves Avenard
f57ec08586 Bug 1215089 - P2: Add YUV422 support to ffmpeg decoder. r=kentuckyfriedtakahe
This allows for VP9 profile 1 support.

MozReview-Commit-ID: KymoerXNyzA

--HG--
extra : rebase_source : db8eef696ae19ff7065e34863a1ee4b576369229
2017-06-29 23:07:03 +02:00
Sebastian Hengst
acc85d321d Backed out changeset 7415ed519323 (bug 1215089) for failing mochitest gl's dom/canvas/test/webgl-mochitest/test_video_fastpath_theora.html | texImage2D should not generate any error here, at least on OS X and Linux. r=backout 2017-10-04 16:27:46 +02:00
Sebastian Hengst
7e38be29ab Backed out changeset 2fb3a9820103 (bug 1215089) 2017-10-04 16:26:04 +02:00
Sebastian Hengst
4c598e730b Backed out changeset 34396bd260e5 (bug 1215089) 2017-10-04 16:25:40 +02:00
Sebastian Hengst
cc5dc6b3ef Backed out changeset 752c2be759b6 (bug 1215089) 2017-10-04 16:25:29 +02:00