Commit Graph

428 Commits

Author SHA1 Message Date
Kyle Huey
c73656947b Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Gerald Squelart
b1be604d62 Bug 848994 - p4. Record GMP diagnostics - r=cpearce
Record diagnostics information about whether the GMP CDM failed to load
(though currently impossible!), and which GMP is used in the current media
format check.

MozReview-Commit-ID: 4B8kDTAiV6b
2016-04-22 13:42:11 +10:00
Gerald Squelart
6494d247f8 Bug 848994 - p2. Detect when WMF is not found - r=cpearce
MozReview-Commit-ID: IHvgJNjuyQA
2016-04-22 13:42:11 +10:00
Benoit Girard
85ba14a3e5 Bug 1263249 - Bubble up unique failureId in GetFeatureStatus. r=mconley,milan
MozReview-Commit-ID: JveFLuIcbaN

--HG--
extra : rebase_source : 3f583b44c30495b237fd263e4818430443bf5513
2016-04-13 17:12:47 -04:00
Jean-Yves Avenard
53c38abda3 Bug 1266013: Fix Firefox OS compile errors. r=gerald
MozReview-Commit-ID: 2XLFe1ZHS5z

--HG--
extra : rebase_source : 0f20bd80b2f6394a80d8e994cfbb2f9717d8809a
2016-04-20 21:26:34 +10:00
Jean-Yves Avenard
4af23f69bd Bug 1243538: P6. Adjust gonk decoder to allow different decoding size from metadata. r=alfredo
Additionally handle bug 1154162, and fix aspect ratio.
The display size were used for the picture size which would be wrong if any aspect ratio was set.

MozReview-Commit-ID: LCbvfdvAsN3
2016-04-20 17:44:11 +10:00
Jean-Yves Avenard
270a392c9d Bug 1243538: P5. Adjust wmf decoder to allow different decoding size from metadata. r=cpearce
We let the WMF decoder calculate the decoded image size, scaling the picture region (cropping) from the original metadata.
As only webm defines cropping in its metadata, the scaled picture region will always be identical to the image size when decoding h264.

MozReview-Commit-ID: B4plh0DEnGY
2016-04-20 17:44:03 +10:00
Jean-Yves Avenard
87989d5577 Bug 1243538: P4. Adjust ffvpx decoder to allow different decoding size from metadata. r=mattwoodrow
MozReview-Commit-ID: FyfAhJ42w5l
2016-04-20 17:43:57 +10:00
Jean-Yves Avenard
536cda74f1 Bug 1243538: P3. Adjust libvpx decoder to allow different decoding size from metadata. r=mattwoodrow
MozReview-Commit-ID: I6yyaonI9xN
2016-04-20 17:43:50 +10:00
Jean-Yves Avenard
4dcc0f9b5b Bug 1243538: P1. Make MediaInfo::mImage an nsIntSize again and introduce a mImageRect member. r=mattwoodrow
MozReview-Commit-ID: 3iVCA1b7bHc
2016-04-20 17:43:35 +10:00
Ralph Giles
2eddfcd5b7 Bug 1265860 - Align ffmpeg library names. r=jya
Make the logging messages easier to read.

MozReview-Commit-ID: 3Unc73kyiki

--HG--
extra : rebase_source : 6cfaf3714bf8b1119893c73dd88ca872076d3d2a
2016-04-01 09:37:28 -07:00
Gerald Squelart
5d11be9eef Bug 1248507 - p10. Detect and report when FFMpeg/Linux fails to load - r=jya
If the FFmpeg decoder module cannot be started, the failure is recorded in the
DecoderDoctorDiagnostics structure.
In this case, on Linux if there are no suitable decoders for any requested
format, a "platform decoder not found" notification is sent to Chrome (a
separate bug will implement the actual front-end notification), and logged to
the web console.

Note: All front-end notifications (that could display a notification bar) are
currently disabled by default. Set the following pref to true to enable them:
"media.decoderdoctor.enable-notification-bar".

MozReview-Commit-ID: CdaX7QUdWtd
2016-04-19 17:36:20 +10:00
Gerald Squelart
ecfb205472 Bug 1248507 - p1. Pass DecoderDoctorDiagnostics to PDMs&more - r=jya
Pass declared-but-yet-undefined DecoderDoctorDiagnostics pointer to various
routines that contribute to deciding if a media format can be played, and
those that create decoders.

Points where a DecoderDoctorDiagnostics can be injected are currently marked
with "/* DecoderDoctorDiagnostics* */ nullptr", and some will be used in
following patches.

MozReview-Commit-ID: 7u37bvY4CpW
2016-04-19 17:36:19 +10:00
Eugen Sawin
c9eb1862ff Bug 1262456 - [2.1] Replace queue adapter with deque. r=snorp 2016-04-18 22:12:11 +02:00
Jean-Yves Avenard
ab5d1e11d2 Bug 1262753: P4. Add resampling capabilities to AudioConverter. r=kinetik
MozReview-Commit-ID: 93PNC5ooEPg

--HG--
extra : rebase_source : 85aff569f014833d23f23ce488bd61dee8749109
2016-04-11 21:07:11 +10:00
Jean-Yves Avenard
1b37c8ef28 Bug 1264925: Force D3D9 when attempting to decode VP8 or VP9. r=mattwoodrow
MozReview-Commit-ID: DgE3yPr5t3o

--HG--
extra : rebase_source : 0bd76b1b7723fc1ea0043241c2f5d7f7e3ba150d
2016-04-16 01:13:26 +10:00
Eugen Sawin
0ff87fd1b9 Bug 1226730 - [1.1] Provide sample rate instead of bit depth in audio format creation. r=snorp 2016-04-15 14:30:42 +02:00
Eugen Sawin
12a4b44c2d Bug 1262456 - [1.1] Prevent interruption of the decoder shutdown procedure and early shutdown return. r=snorp 2016-04-12 22:21:51 +02:00
Chris Pearce
67f4ed3368 Bug 1245789 - Add abstract thread wrapper for the GMP thread. r=gerald
I need to make GMPParent::Init() async, because the WebIDL JSON parsing
must happen on the main thread, and GMPParent::Init() is called on the
GMP thread, so I need GMPParent::Init() to be async so that in the
Chrome manifest case it can dispatch a task to the main thread to parse
the Chrome manifest before completing. So I'll make GMPParent::Init()
return a promise, and to do that, I need the GMP thread to have an
AbstractThread wrapper.

MozReview-Commit-ID: 44b4Z4jpar8
2016-04-12 16:12:20 +12:00
Chris Pearce
78b35c32d6 Bug 1245789 - Use frame size not display size in GMPVideoDecoder. r=kinetik
The Widevine CDM must use the frame size we pass in, as without this change some (but not all) EME
sites don't work.

MozReview-Commit-ID: 43BSMp72TXK
2016-04-12 16:12:20 +12:00
Jean-Yves Avenard
efaaf786d6 Bug 1248861: P10. Ensure opus decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: BDZ25pXJQWa

--HG--
extra : rebase_source : 5ce15f24aab67c026794af2afb32c61ca171d707
2016-04-05 23:35:31 +10:00
Jean-Yves Avenard
0a33a8a5b9 Bug 1248861: P7. Ensure vorbis decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: GAqnJbQuqQU

--HG--
extra : rebase_source : b1eb0ac7b6ec453a8e87ef584df61049482c0fdb
2016-04-05 23:14:34 +10:00
Jean-Yves Avenard
e113225273 Bug 1248861: P6. Ensure AT decoder channel layout is always in SMPTE order. r=rillian
MozReview-Commit-ID: 9XfzxdiQ3Zu

--HG--
extra : rebase_source : 25931bcbb54d399200e98ca3488ab3ec1810adcd
2016-04-05 08:24:16 +10:00
Jean-Yves Avenard
6409e5ed1a Bug 1248861: P3. Use AlignedAudioBuffer object with AudioData. r=cpearce
MozReview-Commit-ID: 7HiF4eHlRwB

--HG--
extra : rebase_source : e7fd44ced280ccc359f61b7e5668e5481bb7ecb9
2016-04-03 23:09:45 +10:00
Chris Pearce
3c22b050df Bug 1261192 - Make EMEDecryptor clear decrypted samples' crypto field before passing to wrapped MediaDataDecoder for decoding. r=gerald
The Adobe GMP unencrypted decoder can't decode unencrypted input which has
valid crypto data attached; it thinks the sample is encrypted, and returns a
crypto error and decoding fails. The sample should be decrypted by the time
we pass it to the wrapped decoder, so decoding should succeed without the
crypto data.


MozReview-Commit-ID: KjZcQyYiRqp
2016-04-01 13:53:01 +13:00
Eugen Sawin
ee4df2bffc Bug 1232911 - [3.2] Block VPX support in ADM on unsupported devices. r=snorp 2016-03-30 13:19:33 +02:00
Eugen Sawin
6d621f5c28 Bug 1232911 - [1.2] Allow to test for specific VPX MIME type version. r=cpearce 2016-03-30 13:19:33 +02:00
David Anderson
b20d5f6769 Add telemetry for which WMF backends are used. (bug 1259695, r=mattwoodrow) 2016-03-29 22:49:02 -07:00
Sotaro Ikeda
505c880bbe Bug 1259366 - Flush after eos of android::MediaCodec r=jolin 2016-03-28 21:39:05 -07:00
David Anderson
f7210bb6ef Add a driver crash guard to D3D11 DXVA. (bug 1253666, r=mattwoodrow) 2016-03-22 18:45:28 -07:00
Matt Woodrow
41cff5119c Bug 1257013 - Part 2: Use readback to synchronize d3d11 video. r=cpearce,Bas
--HG--
extra : rebase_source : 252d183ea0c15f4326c25b4f84ae1c9b43237759
2016-03-21 18:49:59 +13:00
Matt Woodrow
49c3c58a6c Bug 1257013 - Part 1: Use readback to synchronize d3d9 video. r=cpearce,Bas
--HG--
extra : rebase_source : 104b692bb1f732ec86113506ebac8961ac8fb5b8
2016-03-21 18:49:43 +13:00
Matt Woodrow
d5a05c75b0 Bug 1257028 - Fallback to d3d9 decoding if d3d11 fails. r=cpearce 2016-03-18 10:06:05 +13:00
Matt Woodrow
231647cca3 Bug 1248496 - Show which DXVA API is being used in about:support. r=jya 2016-02-18 15:41:11 +13:00
Chris Pearce
8ff9779f10 Bug 1256065. r=gerald 2016-03-16 13:49:26 +08:00
Matt Woodrow
60b2f060b1 Bug 1236112 - Block on d3d9 video frames to complete before returning them from the decoder. r=cpearce 2016-03-09 10:34:49 +13:00
Jean-Yves Avenard
7b7d669844 Bug 1230641: P1. Use UYVY (YUV422) format in decoders. r=mattwoodrow
MozReview-Commit-ID: I6KZLi2bHk0

--HG--
extra : rebase_source : b233233878ed386c9635614d70e79b0d16071d92
2016-03-15 11:41:00 +11:00
Jean-Yves Avenard
99605a9e92 Bug 1254858: P9. Search libmozav* lib relative to lgpllibs. r=glandium
XUL location can't be used as reference as its location varies.

MozReview-Commit-ID: EKGVpjeepIR

--HG--
extra : rebase_source : 70d2d90747211be4435685ef32b03ea73a62ea38
2016-03-10 17:56:34 +11:00
Jean-Yves Avenard
edda0a3356 Bug 1254858: P8. Change default preferences value if prefs don't exist. r=kentuckyfriedtakahe
When running gtest, none of the prefs actually exist, so we end up having most PDMs disabled.

MozReview-Commit-ID: GNjhXtjKpGC

--HG--
extra : rebase_source : 3e5a931dd49c798cff9792e3a1c4ff2e5afc4a83
2016-03-10 15:04:23 +11:00
Jean-Yves Avenard
6f2a236360 Bug 1254858: P7. Add logging if libmozav can't be found. r=kentuckyfriedtakahe
MozReview-Commit-ID: C4m54MMJdr

--HG--
extra : rebase_source : 4cb6bfddbc4b2f0b0e26a6d6c09754b47167c87c
2016-03-10 15:02:40 +11:00
Wes Kocher
9a43697d65 Backed out changeset 6358a64e4f15 (bug 1236112) for windows video wpt failures
MozReview-Commit-ID: 6tovOHlvyak
2016-03-08 16:23:04 -08:00
Matt Woodrow
bfae8352c6 Bug 1236112 - Block on d3d9 video frames to complete before returning them from the decoder. r=cpearce 2016-03-09 10:34:49 +13:00
Gerald Squelart
1471e61be9 Bug 1253395 - Disable msmpeg2vdec.dll blackslisting - r=cpearce
Disable the blacklisting introduced in bug 1242343, as it was having a
negative effect on many working configurations.
2016-03-08 12:54:48 +11:00
Gerald Squelart
368b69b72f Bug 1242343 - p2. Blacklist msmpeg2vdec.dll 12.0.9200.16426 & .17037 - r=cpearce
MozReview-Commit-ID: C6osQ3ubhH1
2016-03-03 08:40:26 +11:00
Eugen Sawin
afcdaa0918 Bug 1248792 - [2.1] Clear queues via empty swap. r=snorp 2016-02-26 17:57:53 +01:00
Eugen Sawin
1affcc10b0 Bug 1248792 - [1.2] Replace MediaRawData raw pointers with RefPtr. r=snorp 2016-02-26 17:57:52 +01:00
Louis Christie
4a902ba49c Bug 1249706: Added telemetry for the proportion of frames dropped keyed by several details. r=jya 2016-02-23 13:19:40 +13:00
Sotaro Ikeda
0a5903a5e9 Bug 1251155 - Remove GLContext from VideoDataDecoder r=snorp 2016-02-25 17:11:55 -08:00
John Lin
4ca43175f3 Bug 1233410 - Support VP8 video in OpenMAX PDM. r=alfredo
MozReview-Commit-ID: HVxynPLlXKJ
2016-02-25 11:54:03 +08:00
John Lin
86ade93f25 Bug 1233410 - Refactor: let component decide which compression format to use. r=alfredo
MozReview-Commit-ID: EVBTwua5BFL
2016-02-25 11:53:53 +08:00