Commit Graph

178 Commits

Author SHA1 Message Date
Eric Rahm
e5be6e71b3 Bug 1307223 - Don't warning multiple times about WMF dlls failing to load. r=cpearce
We already report failure in |LoadDlls| on the initial failure to load, there's
no need to warn more than once per session.

MozReview-Commit-ID: FhsR2ZaMSLT

--HG--
extra : rebase_source : ae7d94af5c9d9253b82b2d45dc6967b5b21c6492
2016-10-03 14:02:15 -07:00
Jean-Yves Avenard
dd2a72e7cc Bug 1297311: P1. Always recreate a decoder when SPS changes. r=cpearce
This allow consistency between platforms. A decoder will now always be shutdown and another one created if the video configuration changes.

MozReview-Commit-ID: 1SPzhVuBrip

--HG--
extra : rebase_source : f4d0347c4686d2f3ec0e4cf065a6c3fa36b7ea06
2016-09-26 12:28:07 +10:00
Matt Woodrow
cedd3bc438 Bug 1302918 - Add PVideoBridge to share textures with the compositor. r=dvander,nical 2016-09-23 09:44:26 +12:00
Carsten "Tomcat" Book
23879d2b18 Merge mozilla-central to mozilla-inbound 2016-09-21 12:07:46 +02:00
Matt Woodrow
32054a681a Bug 1288618 - Part 3: Avoid accessing MediaPrefs from the GPU process within WMF code. r=cpearce 2016-09-21 21:24:43 +12:00
Matt Woodrow
fb5b16533d Bug 1288618 - Part 2: Allow allocating D3D9/11 Images when we don't have a recycling allocator available. r=nical 2016-09-21 21:24:43 +12:00
Matthew Woodrow
76c0ae8105 Bug 1288618 - Part 1: Use gfxVars for CanUseHardwareVideoDecoding so we can access it in the GPU process. r=dvander 2016-08-25 15:48:35 +12:00
Carsten "Tomcat" Book
f918af64da Backed out 16 changesets (bug 1288618) for bustage on a CLOSED TREE
Backed out changeset 06187d250f7a (bug 1288618)
Backed out changeset 2a47f8ea1d89 (bug 1288618)
Backed out changeset e179c8e8265d (bug 1288618)
Backed out changeset 25396a1af922 (bug 1288618)
Backed out changeset e98f835c6ee5 (bug 1288618)
Backed out changeset 24df0e89b273 (bug 1288618)
Backed out changeset f8bbdabdb6da (bug 1288618)
Backed out changeset 8b0adeab93df (bug 1288618)
Backed out changeset 95f23366de82 (bug 1288618)
Backed out changeset 63a9c689e1d5 (bug 1288618)
Backed out changeset 8f67443dccb8 (bug 1288618)
Backed out changeset 4e7fe69d5f45 (bug 1288618)
Backed out changeset 53b113acee42 (bug 1288618)
Backed out changeset 2583ae4e2e3b (bug 1288618)
Backed out changeset 75a61d0e71b7 (bug 1288618)
Backed out changeset da740b4fd484 (bug 1288618)
2016-09-21 08:44:11 +02:00
Matt Woodrow
56fc7b3464 Bug 1288618 - Part 3: Avoid accessing MediaPrefs from the GPU process within WMF code. r=cpearce
--HG--
extra : rebase_source : 8c8d88ed1b858d59555e2c698f7faf653c8a75e6
2016-09-21 15:36:09 +12:00
Matt Woodrow
30d2768a45 Bug 1288618 - Part 2: Allow allocating D3D9/11 Images when we don't have a recycling allocator available. r=nical
--HG--
extra : rebase_source : 23db70f7fed43217f8e8a27b0ab73435cdd3b895
2016-09-21 15:36:09 +12:00
Matthew Woodrow
cc6a2ea1e1 Bug 1288618 - Part 1: Use gfxVars for CanUseHardwareVideoDecoding so we can access it in the GPU process. r=dvander
--HG--
extra : rebase_source : 3e5e4d3cebeda21a080a0f5c9bcec95ba54f960c
2016-08-25 15:48:35 +12:00
Jean-Yves Avenard
5bb9584b9b Bug 1303673: P7. Provide MFT error code. r=cpearce
MozReview-Commit-ID: BnKR6CKk3eU

--HG--
extra : rebase_source : 53c105d1da372bd89698756988723f9e5ce8bed0
2016-09-20 16:18:17 +10:00
Carsten "Tomcat" Book
d2c3fe7fd3 merge autoland to mozilla-central a=merge 2016-09-14 12:07:02 +02:00
David Anderson
07336b7d13 Protect ImageBridgeChild's singleton with a StaticMutex. (bug 1298938 part 5, r=mattwoodrow)
--HG--
extra : rebase_source : 974ad32cfaf3ba6d1af75d8857f0a35da5aa3641
2016-09-13 16:30:57 -07:00
Jean-Yves Avenard
f4efa8be06 Bug 1299072: P4. Return extended failure details to reader. r=gerald
We provide even further details for the GMP decoder. Other decoders to follow.

MozReview-Commit-ID: 7NxJPec8xWv

--HG--
extra : rebase_source : f44120983070e5c107ecd5cafc762da90aab44bf
2016-09-10 09:56:53 +10:00
Carsten "Tomcat" Book
0f2c669a48 merge mozilla-inbound to mozilla-central a=merge 2016-09-09 12:02:43 +02:00
Chris Pearce
e99ce4a9c7 Bug 1294003 - Ensure we destroy DXVA2Manager on main thread if DXVA init fails. r=mattwoodrow
If initializing DXVA fails, we end up destroying the DXVA2Manager on the
decode task queue. The DXVA2Manager asserts that it's destroyed on the
main thread, so we should dispatch a task to destroy it on the appropriate
thread instead of destorying it on the wrong one.


MozReview-Commit-ID: 2pbeMOm74et

--HG--
extra : rebase_source : c4a6871877747d4e04494c638d83b225decaf249
2016-09-09 16:12:50 +12:00
Matt Woodrow
99bf9b18df Bug 1301294 - Remove unnecessary nsresult return value from MediaDataDecoder interface. r=jya 2016-09-09 15:50:37 +12:00
Jean-Yves Avenard
747d2faea4 Bug 1294154: Handle case where WMF is unable to determine time and duration. r=mattwoodrow
The WMF decoder doesn't handle well the case where a single frame was given to decode.
When draining, the output is a correctly decoded frame but with a time of 0 and a duration set at 1/30th.
This is a workaround

MozReview-Commit-ID: JbjgNmPXKIM

--HG--
extra : rebase_source : f25a1fd503678383265ec5053b41f3116ff52da0
2016-09-02 20:49:17 +10:00
Carsten "Tomcat" Book
7c6c7db247 Merge mozilla-central to autoland 2016-09-07 17:26:11 +02:00
Chris Pearce
c34ab00fb4 Bug 1274498 - Refuse to play H.264 files which have one or more dimensions less than 48 pixels. r=jya
We've had large numbers of shutdown hangs with the Windows H.264 decoder stuck
calling IMFTransform::ProcessOutput(), blocking shutdown. I can reproduce this
with videos with dimensions less than 32 pixels.

Chrome also encountered this with the WMF decoder:
https://bugs.chromium.org/p/chromium/issues/detail?id=373288

The WMF H.264 Decoder is documented to have a minimum resolution of 48x48 pixels.

So this patch causes us to reject H.264 files with either width or height less
than 48 pixels.

I have been able to play files down to 34x34 pixels on Windows 10, but it seems
safest to just follow the what's documented in MSDN, and reject files that are
smaller than the documented minimum.

MozReview-Commit-ID: 5peP6UGnAaB

--HG--
extra : rebase_source : 6e29812642bc3f8ca0f5b39b36064a6d50e09ea7
2016-09-07 14:16:29 +12:00
Jean-Yves Avenard
7eeb483897 Bug 1297265: P11. Rework WMF Decoder use of InputExhausted. r=kamidphish
MozReview-Commit-ID: GX1izQd55Di

--HG--
extra : rebase_source : f3206a7d6e84d16f4e396819c19d306bd899b1ba
2016-09-01 19:43:16 +10:00
Phil Ringnalda
9f470c98e5 Backed out 11 changesets (bug 1297265) for gtest timeouts during MediaDataDecoder.H264
Backed out changeset 04d9b7160ac9 (bug 1297265)
Backed out changeset c7bffd1ba7fd (bug 1297265)
Backed out changeset ad1915ff688b (bug 1297265)
Backed out changeset 67a97304d44d (bug 1297265)
Backed out changeset e6b9e6184457 (bug 1297265)
Backed out changeset 30636ac0790f (bug 1297265)
Backed out changeset cc70d3a139bc (bug 1297265)
Backed out changeset 345a577c92a1 (bug 1297265)
Backed out changeset ec1f3ac8751c (bug 1297265)
Backed out changeset da9117375d2e (bug 1297265)
Backed out changeset dd4c7aafcc3d (bug 1297265)
2016-08-31 19:49:28 -07:00
Jean-Yves Avenard
223ee82386 Bug 1297265: P11. Rework WMF Decoder use of InputExhausted. r=kamidphish
MozReview-Commit-ID: GX1izQd55Di

--HG--
extra : rebase_source : efc6198d4fa7914b13f808216bd6394ca5b53d43
2016-08-30 15:22:54 +10:00
Matt Woodrow
0242a22c94 Bug 1229945 - Null check D3D9 creation function in DXVA2Manager. r=ajones 2016-09-07 15:04:31 +12:00
Sotaro Ikeda
1ff245b181 Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander
--HG--
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
2016-08-23 15:18:55 -07:00
Ryan VanderMeulen
01c4e8cc1b Merge inbound to m-c. a=merge 2016-08-19 09:52:53 -04:00
Nathan Froyd
029b26c7e4 Bug 1296078 - avoid passing nsCString objects to %s format string codes; r=gerald 2016-08-18 23:44:51 -04:00
James Cheng
21f18593ca Bug 1295920 - Replace enum with enum class in PlatformDecoderModule.h. r=jya
MozReview-Commit-ID: lDjsTI82pV

--HG--
extra : rebase_source : 9ec7b89e3af8fe0e50ea4bb48d464367e49c86c4
2016-08-17 17:24:13 +08:00
Nicholas Nethercote
e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Matt Woodrow
05bc28c9a1 Bug 1279136 - Specify a format for our D3D9 video device to avoid the driver needing to compute one. r=cpearce 2016-08-09 13:28:51 +12:00
Carsten "Tomcat" Book
90f6c2d3fd Backed out changeset 02d76f158f3d (bug 1259571) for talos xperf regressions
--HG--
rename : gfx/thebes/DeviceManagerDx.cpp => gfx/thebes/DeviceManagerD3D11.cpp
rename : gfx/thebes/DeviceManagerDx.h => gfx/thebes/DeviceManagerD3D11.h
2016-08-08 11:53:51 +02:00
Sotaro Ikeda
41a9daf725 Bug 1259571 - Try tearing-free drawing with GDI r=dvander,mattwoodrow
--HG--
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
2016-08-07 23:54:12 -07:00
Matt Woodrow
f323872778 Bug 1292032 - Clean up VideoData static constructor methods. r=jya
--HG--
extra : rebase_source : e025c9a15ad00e970f9027f72c78b5d6effbc301
2016-08-04 15:31:52 +12:00
Bryce Van Dyk
dc49694098 Bug 1290284 - Centralise string comparisons for H264 and VPX detection. r=cpearce
Remove string comparisons to determine from mime types if content is VPX or
H264. Replace with calls to VPXDecoder::IsVPX or MP4Decoder::IsH264 to
centralise such logic.

This patch introduces MP4Decoder:IsH264, and moves the similar functionality out
of H264Convertor for the sake of consistently having these functions in
decoders.

MozReview-Commit-ID: 5nfYusYHrUR

--HG--
extra : rebase_source : c013c4ebe28d5afedbb91ddfffadb40d23fd0ee3
2016-07-29 14:12:54 +12:00
Carsten "Tomcat" Book
7293066753 merge mozilla-inbound to mozilla-central a=merge 2016-07-27 16:35:44 +02:00
Mike Hommey
4fdd5ca717 Bug 1289248 - Stop using MOZ_WINSDK_MAXVER outside configure. r=blassey,cpearce
Its value was only used in a couple C++ files, and a corresponding value
can be gotten directly from including winsdkver.h.

--HG--
extra : rebase_source : 618f1eb2ee0243a6c1c652ccce45b2aeba959edf
2016-07-22 18:52:13 +09:00
Matt Woodrow
4ed207c9ad Bug 1277626 - Create test DXVA decoders on the main thread so that we can protect them with a crash guard. r=jya,dvander 2016-07-25 15:18:55 +12:00
Tom Tromey
5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Wes Kocher
afdaddcff4 Backed out changeset c6d147ba37b5 (bug 1281259) for making windows vm mn-e10s permafail 2016-07-20 16:08:55 -07:00
eyim
4446d595fa Bug 1281259 - Port DXVA to gfxConfig r=jrmuizel
MozReview-Commit-ID: 7Yp3ynxZoFE

--HG--
extra : rebase_source : 8fd65a364e3c8b2e539b47dd034e637a1324516e
2016-07-14 10:21:06 -04:00
Sotaro Ikeda
d3c9a7b82c Bug 1286130 - Use recycled SharedPlanarYCbCrImage in WMFVideoMFTManager r=mattwoodrow 2016-07-12 00:29:43 -07:00
Dan Glastonbury
1b2a65cfc3 Bug 1281632 - P1: Extract creation parameters and pass via struct. r=gerald
Extract all the parameters passed to CreateAudioDecoder/CreateVideoDecoder and
place them into a structure that is passed down to the creation of the actual
decoder, where the relevant parameters can be extracted.

This makes it easier to add more arguments to the Create*Decoder calls in future.

MozReview-Commit-ID: 9LZlcfRVz6A

--HG--
extra : rebase_source : ce3f0c7d0784b96267728697ff5d535ccb8ee7a6
2016-06-28 17:56:55 +12:00
Alfredo Yang
b1e6bc8fcb Bug 1282014: check duration when set seek target. r=jwwang
MozReview-Commit-ID: 9ktjaL07sFA

--HG--
extra : rebase_source : 3e80bf8f8b84bb022a3023a40235c14c900cd7bc
2016-06-24 16:00:45 +08:00
Alfredo
948b1a2fa0 Bug 1280036: don't create video frame before seek target. r=jya
MozReview-Commit-ID: G1QTZTWtvmR

--HG--
extra : rebase_source : cbca5b928f0ee394d0a2929185f796ae8bd8dd7a
2016-06-16 13:43:52 +01:00
Jonathan Watt
b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
Jean-Yves Avenard
94b2b53bfe Bug 1275381: [aac] Rework AudioSpecificConfig if extensions are present. r=cpearce,kamidphish,?kamidphish
WMF is very strict with the AudioSpecificConfig passed on and will error if an unknown extension is found. Attempt to detect those extensions and remove them if necessary.

MozReview-Commit-ID: KbooPiHmDbN

--HG--
extra : rebase_source : 849628daae33e0dca6ac3735dd8abc05e7554937
2016-06-02 12:07:06 +10:00
Chris Pearce
f41e85bf8a Bug 1271525 - Add ability to blacklist D3D9 DXVA via pref. r=kentuckyfriedtakahe
MozReview-Commit-ID: HSm6TTc6kct

--HG--
extra : rebase_source : cacbcef2352f6e4897845a5fdb3373c60571e938
2016-05-31 21:08:03 +12:00
Chris Pearce
83f9dc03f4 Bug 1271525 - Factor out data used by FindD3D11BlacklistedDLL() into arguments passed in. r=kentuckyfriedtakahe
This enables us to use the existing D3D11 blacklist code to create a D3D9
blacklist by just passing in a new blacklist cache.


MozReview-Commit-ID: GyQ8o8U1jwg

--HG--
extra : rebase_source : e0f1b99d9129c6a8bf6ca70001593194291a83b1
2016-05-31 21:06:56 +12:00
Alfredo Yang
68adb6b579 Bug 1068151 - keep decoding a corrupted video. r=jya 2016-05-30 18:24:00 +02:00