Commit Graph

40 Commits

Author SHA1 Message Date
Chun-Min Chang
ddc78aa48d Bug 1349128 - Remove duplicated AndroidDecoderModule in mCurrentPDMs if both PDMAndroidMediaCodecEnabled and PDMAndroidMediaCodecPreferred are set to true; r=jya
The AndroidDecoderModule will be added into PDM queue twice if both PDMAndroidMediaCodecEnabled and PDMAndroidMediaCodecPreferred are set to true. It should be inserted into the head of the PDM queue in this case, and appended to the tail if only PDMAndroidMediaCodecEnabled is true.

MozReview-Commit-ID: Fj0z0meeb1V

--HG--
extra : rebase_source : 1d7f2b10fd4360d3f641ad6517e9f95afcb99768
2017-03-22 14:14:09 +08:00
Kaku Kuo
7c985e041c Bug 1346120 part 3 - Use NullDecoderModule while suspending a video element's decoder; r=jwwang
MozReview-Commit-ID: L1CsDV5TW5R

--HG--
extra : rebase_source : c7aa851ebdbda6abbf7acb09849b237023d653fe
extra : intermediate-source : 91c5986bef4c236e29deeeca6b14f33405da56a3
extra : source : 2d3146d70fb65da3379dd6a5f126c4caff65e139
2017-03-09 17:12:02 +08:00
Iris Hsiao
7f4987cc26 Backed out 6 changesets (bug 1346120) for autophone Mdm tests failure in test_background_video_drawimage_with_suspended_video.html
Backed out changeset a30c73fc8d69 (bug 1346120)
Backed out changeset f16556658fd9 (bug 1346120)
Backed out changeset 98d212462786 (bug 1346120)
Backed out changeset ba579adbed21 (bug 1346120)
Backed out changeset c0758b9bf7b5 (bug 1346120)
Backed out changeset 94a483ef784e (bug 1346120)
2017-03-13 16:53:14 +08:00
Kaku Kuo
707ca65566 Bug 1346120 part 3 - Use NullDecoderModule while suspending a video element's decoder; r=jwwang
MozReview-Commit-ID: L1CsDV5TW5R

--HG--
extra : rebase_source : e8a47fc99d775c591f6830b042c21717a3e8bced
extra : source : 2d3146d70fb65da3379dd6a5f126c4caff65e139
2017-03-09 17:12:02 +08:00
Jean-Yves Avenard
b3e9c44871 Bug 1334971: P2. Fix coding style. r=gerald
MozReview-Commit-ID: 1xMcYn354NT

--HG--
extra : rebase_source : efa9bfd79cbcc5ea402fbc7e421d35e6168b84cb
2017-02-07 07:57:04 +01:00
Nathan Froyd
2ebbd09068 Bug 1320752 - remove mozilla/Function.h; r=gerald
We have std::function available now, which is likely to be somewhat more
efficient.
2016-11-28 11:03:53 -05:00
Gerald Squelart
a583c59045 Bug 1176218 - p11. PDM's Supports(TrackInfo) - r=jya
Add a new method alongside SupportsMimeType, which takes a TrackInfo that may
contain more information that just the MIME type.

Eventually the old SupportsMimeType should be removed, but we keep it for now,
as it is used quite extensively and it would be out of scope of this bug to
totally replace it now.

MozReview-Commit-ID: LJQBvSUB6J2

--HG--
extra : rebase_source : 6f43bf61dc6e51de3714c9a556428c7ba4fd484d
2016-10-07 15:30:30 +11:00
James Cheng
48efb9caad Bug 1300654 Part1-Remove MOZ_EME from code base. r=cpearce,smaug
MozReview-Commit-ID: JboGO0w4tcE

--HG--
extra : rebase_source : abfe53f30081f74fc39c900cab48d08c7574bfec
2016-09-08 18:06:20 +08:00
James Cheng
0c1650fb5a Bug 1291742 - Report MP4 videos with YUV444 format as unsupported. r=gerald
MozReview-Commit-ID: DxFfSIeYANR

--HG--
extra : rebase_source : b7a6097e7085bac23e02e7065165a024561a0316
2016-08-19 18:14:28 +08:00
Kaku Kuo
849fdb252e Bug 1274626 part 4 - provide APIs to create blank decoders; r=jya
MozReview-Commit-ID: LiXOAzvVb1K

--HG--
extra : transplant_source : %E5%2B%85%B0%D4%92%5C%3A%28%D2%12%7Dm%E1K%A7%7F%5B%C8%8A
2016-07-28 23:11:57 +08:00
Carsten "Tomcat" Book
c5f40500b4 Backed out changeset 222b4883bf79 (bug 1274626) 2016-08-02 17:47:27 +02:00
Kaku Kuo
59a499df96 Bug 1274626 - Part 4 - provide APIs to create blank decoders; r=jya
MozReview-Commit-ID: LiXOAzvVb1K

--HG--
extra : transplant_source : %F8%29%C0%9C/%A7%17-%E1%04r%A2%FD%00%93e%21Z%29%A4
2016-07-28 23:11:57 +08: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
JW Wang
8b980a3cbc Bug 1274216 - remove use of FlushableTaskQueue from PlatformDecoderModule. r=jya.
MozReview-Commit-ID: E3DG84yKRmw

--HG--
extra : rebase_source : 2636b7d1ef5cc544f70b3912d4d6bd30f25424df
2016-05-19 17:50:31 +08:00
Jean-Yves Avenard
cc8c8725df Bug 1271491: P6. Remove the need to call PDMFactory::Init(). r=cpearce
PDMFactory will automatically load and initialize the required frameworks upon first use.
Also fix constness of some methods.

MozReview-Commit-ID: HFbvTMRFAey

--HG--
extra : rebase_source : ce3e7ff6cefc35b32674c9a81c3488fe21b48626
2016-05-12 18:54:35 +10:00
Jean-Yves Avenard
d31cb0499b Bug 1206637: P2. Replace all cached preferences with MediaPrefs ones. r=cpearce
Additionally, clean up stray and unused Preferences.h header.

MozReview-Commit-ID: IcPrD2inkDE

--HG--
extra : rebase_source : c3c6e37767627db3601090c2855a3dfa98cb4368
2016-05-10 11:02:28 +10: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
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
Jean-Yves Avenard
98b3022d0a Bug 1240630: [ffvpx] P2. Hook up FFVPX PDM to PDMFactory. r=kentuckyfriedtakahe
Add new preference media.ffvpx.enabled to control FFVPX PDM being enabled.
2016-01-19 17:31:25 +11:00
Wes Kocher
398d96e8e5 Backed out 4 changesets (bug 1240630) for asan failures in mochitest(2) and mochitest(oth) CLOSED TREE
Backed out changeset dc949ca1e1ec (bug 1240630)
Backed out changeset 06abea99a292 (bug 1240630)
Backed out changeset 9d90d4b0b928 (bug 1240630)
Backed out changeset 6162c46b32ff (bug 1240630)

--HG--
rename : dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp => dom/media/platforms/ffmpeg/FFmpegH264Decoder.cpp
rename : dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h => dom/media/platforms/ffmpeg/FFmpegH264Decoder.h
extra : commitid : 2Uwik7JWDjE
2016-01-20 13:47:41 -08:00
Jean-Yves Avenard
83a8dcaada Bug 1240630: [ffvpx] P2. Hook up FFVPX PDM to PDMFactory. r=kentuckyfriedtakahe
Add new preference media.ffvpx.enabled to control FFVPX PDM being enabled.
2016-01-19 17:31:25 +11:00
Carsten "Tomcat" Book
5103ca7337 Backed out changeset ea16467602a8 (bug 1240630)
--HG--
extra : rebase_source : ae4c680edc82a2c0ad74c6fbe84b4d7cf6aa3732
2016-01-20 16:10:51 +01:00
Jean-Yves Avenard
2e03328e3d Bug 1240630: [ffvpx] P2. Hook up FFVPX PDM to PDMFactory. r=kentuckyfriedtakahe
Add new preference media.ffvpx.enabled to control FFVPX PDM being enabled.
2016-01-20 23:55:35 +11:00
Eugen Sawin
81ff3f75e8 Bug 1221991 - [1.3] Make SupportsMimeType a const function. r=jya 2015-11-17 20:50:28 +01:00
Jean-Yves Avenard
f630daef7a Bug 1101885: P3. Allow decoder creation fallback. r=cpearce
While we may be able to instantiate a decoder, we may not be able to initialise
it once all information is available.
2015-10-29 00:46:30 +11:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Chris Pearce
b339118972 Bug 1214932 - Add media.wmf.enabled pref. r=jya 2015-10-15 14:51:34 +13:00
Chris Pearce
bd6f4df204 Bug 1214932 - Add exclusion guards for platform specific media pref caches. r=jya 2015-10-15 14:51:31 +13:00
Jean-Yves Avenard
7d704a120e Bug 1213173: Always use FFmpeg regardless of version. r=kentuckyfriedtakahe
We don't need to prevent using FFmpegDecoderModule on older version anymore
2015-10-12 10:00:04 +11:00
Jean-Yves Avenard
620a0262c9 Bug 1206977: P9. Ensure PDMs are only ever created through the PDMFactory. r=cpearce 2015-10-08 00:34:46 +11:00
Jean-Yves Avenard
5d54dafcb3 Bug 1206977: P8. Have PDMFactory directly manage the EMEDecoderModule. r=cpearce 2015-10-08 00:34:45 +11:00
Jean-Yves Avenard
35090bba3a Bug 1206977: P3. Allow PDM fallback. r=cpearce
We now search in all the PDM present the one that can handle the media.
2015-10-08 00:34:42 +11:00
Jean-Yves Avenard
dd5e99c694 Bug 1206977: P2. Wrap PDM creation in a new PDMFactory class. r=cpearce
There is no change of behaviour from the original PlatformDecoderModule.
2015-10-08 00:34:42 +11:00
Nigel Babu
1a01355c4f Backed out 16 changesets (bug 1206977, bug 1211652, bug 1211335) for linux bc7 bustage ON A CLOSED TREE
Backed out changeset 51b1b076a386 (bug 1206977)
Backed out changeset dec7c35469d1 (bug 1206977)
Backed out changeset bf9ddc78b394 (bug 1206977)
Backed out changeset 08f5cff5aa12 (bug 1206977)
Backed out changeset e4e91de99867 (bug 1206977)
Backed out changeset 696ecf2e2947 (bug 1206977)
Backed out changeset ab2d524a9b35 (bug 1206977)
Backed out changeset d66be0e4547f (bug 1206977)
Backed out changeset 64c58afbd6c1 (bug 1206977)
Backed out changeset eb10d09015e1 (bug 1206977)
Backed out changeset 042959216393 (bug 1206977)
Backed out changeset 7e0de7f62202 (bug 1206977)
Backed out changeset 3d095569f6ba (bug 1206977)
Backed out changeset 041418a07ae5 (bug 1206977)
Backed out changeset 654970da23e4 (bug 1211335)
Backed out changeset 8ba8e24a84d3 (bug 1211652)
2015-10-07 13:43:39 +05:30
Jean-Yves Avenard
27b77f96da Bug 1206977: P9. Ensure PDMs are only ever created through the PDMFactory. r=cpearce 2015-10-07 16:40:28 +11:00
Jean-Yves Avenard
2da2bd26f9 Bug 1206977: P8. Have PDMFactory directly manage the EMEDecoderModule. r=cpearce 2015-10-07 16:40:27 +11:00
Jean-Yves Avenard
78fc388e1e Bug 1206977: P3. Allow PDM fallback. r=cpearce
We now search in all the PDM present the one that can handle the media.
2015-10-07 16:40:24 +11:00
Jean-Yves Avenard
0256993164 Bug 1206977: P2. Wrap PDM creation in a new PDMFactory class. r=cpearce
There is no change of behaviour from the original PlatformDecoderModule.
2015-10-07 16:40:24 +11:00