Commit Graph

344 Commits

Author SHA1 Message Date
Karl Tomlinson
afba938cae bug 1161892 use separate thread pool for platform decoder task queues r=bholley
so that platform decoder tasks will run when their readers wait and block
their thread pool.
2015-05-07 16:01:43 +12:00
Bobby Holley
9046a9dfe4 Bug 1161901 - Make MDSM::ScheduleStateMachine runs on the state machine task queue only. r=jww 2015-05-07 09:50:35 -07:00
Jean-Yves Avenard
a5bb7c784d Bug 1157075: Part2. Use MediaPromise to read TrackBuffer metadata. r=bholley,r=karlt 2015-05-01 15:37:31 +10:00
Chris Double
71487ee163 Bug 1160027 - Move ResourceQueue implementation from header file - r=cpearce 2015-05-01 14:09:22 +12:00
Boris Zbarsky
b62339ddc0 Bug 1159756. Stop forcing the media.mediasource.enabled preference to true and the media.mediasource.whitelist preference to false in the test harness. r=kinetik 2015-04-30 14:25:03 -04:00
JW Wang
f4b987f47e Bug 1159162 - Remove unnecessary testing prefs from media mochitests for they are defined in testing/profiles/prefs_general.js. r=kinetik. 2015-04-29 10:22:15 +08:00
Bobby Holley
3849ab2cb8 Bug 1144481 - Force state machine setting to go through a setter. r=jww
We need this so that we can hook up the state mirroring in the subsequent patch.
2015-04-23 11:55:13 -07:00
Bobby Holley
88827fa693 Bug 1144486 - Fix Bogus test. r=cajbir
cajbir said we should do this in the media meeting.
2015-04-22 21:38:09 -07:00
Andrea Marchesini
504f4e8fee Bug 1156632 - Remove unused forward class declarations - patch 2 - dom/media, dom/indexedDB, dom/svg, r=ehsan 2015-04-22 08:29:17 +02:00
Bobby Holley
e40d88bf04 Bug 1154782 - Align the failure handling of the TemporaryRef Dispatch overload with its companion. r=jww
Most of the callers ignore the return values. The MOZ_DIAGNOSTIC_ASSERTS will
tell us if any of these actually fail in practice.
2015-04-15 22:30:36 -07:00
Jean-Yves Avenard
adf3258db5 Bug 1153094: Rename LargeDataBuffer and DataBuffer object. r=cpearce
This causes conflicts with webRTC libraries that use those names already. The
linker appears to get it wrong and calls the destructor of the wrong class.
2015-04-15 15:27:38 +10:00
Gerald Squelart
14cd24f52f Bug 1151676 - [MSE] Add missing ^headers^ files to tests - r=jya 2015-04-06 19:38:00 +02:00
Carsten "Tomcat" Book
5a3d967763 Backed out changeset 52f7770a996c (bug 1151676) 2015-04-07 16:40:53 +02:00
Gerald Squelart
96ddfcab1f Bug 1151676 - [MSE] Add missing ^headers^ files to tests - r=jya 2015-04-06 19:38:00 +02:00
Jean-Yves Avenard
5974ce9333 Bug 1151299: Part1. Only attempt to decode first frame when available. r=mattwoodrow
Don't rely on the demuxer to be blocking when attempting to decode the first
MSE frame.
2015-04-07 20:33:17 +10:00
Bobby Holley
bd1ac6f060 Bug 1150687 - Have callers pass an AbstractThread directly to promise APIs and remove wrapper-style AbstractThreads for MediaTaskQueue. r=jww 2015-04-06 11:09:27 -07:00
Matt Woodrow
23ad2c467e Bug 1102612 - Don't attempt to read data from a resource if we've evicted the start position. r=jya 2015-04-02 11:10:34 +13:00
Gerald Squelart
95dbe27973 Bug 1144409 - Encrypted event should be fired once per initData. r=cpearce 2015-04-01 03:36:00 -04:00
Chris Pearce
715aca878d Bug 1148286 - Ensure we don't nullpointer deref if the CDM crashes in MediaKeys and Reader::SetCDMProxy implementations. r=edwin 2015-04-01 20:48:43 +13:00
Ryan VanderMeulen
91d3768635 Backed out changeset 95866bc69415 (bug 1144409) for bustage. 2015-03-31 11:16:29 -04:00
Gerald Squelart
660c5f330b Bug 1144409 - Encrypted event should be fired once per initData. r=cpearce 2015-03-26 18:57:00 -04:00
Bobby Holley
0e1691bb70 Bug 1144519 - Rename MediaDecoder::OnDecodeThread to MediaDecoder::OnDecodeTaskQueue. r=jya 2015-03-27 11:50:21 -07:00
Bobby Holley
d621df0de5 Bug 1144519 - Rename MediaDecoderReader::OnDecodeThread to MediaDecoderReader::OnTaskQueue. r=jya 2015-03-27 11:50:20 -07:00
Bobby Holley
8daa1431ae Bug 1144519 - Rename OnStateMachineThread-like functions to reflect the fact that it's a task queue. r=jya 2015-03-27 11:50:19 -07:00
Chris Pearce
8d9721c9f7 Bug 1147730 part 1 - Prevent data race between CDMProxy and CDM caps and video decoder startup. r=edwin 2015-03-26 19:53:05 +13:00
Jean-Yves Avenard
5e847f002d Bug 1145815: Do not report discontinuities less than 35ms. r=k17e 2015-03-25 22:32:21 +11:00
Bobby Holley
1ab90e3557 Bug 1142336 - Create one unified thread pool for media code and run the MDSM task queues on it. r=mattwoodrow
This allows for parallel MDSM execution. \o/
2015-03-25 17:46:26 -07:00
Wes Kocher
ab0d6fbec5 Backed out changeset f3b3547c610a (bug 1144409) for eme test failures CLOSED TREE 2015-03-23 16:06:32 -07:00
Bobby Holley
325acf96b9 Bug 1136873 - Deliver NotifyWaitingForResourcesStatusChanged asynchronously on the state machine task queue. r=mattwoodrow
The previous setup is wacky, and can cause the notification to reach the state
machine before the promise rejection, which causes us to stall intermittently.
We also take the opportunity to be a bit less trigger happy when we fire it
in MediaSourceReader.cpp.
2015-03-23 13:17:52 -07:00
Gerald Squelart
0693105064 Bug 1144409 - Encrypted event should be fired once per initData; part 1: first initData. r=cpearce 2015-03-22 23:26:00 -04:00
Jean-Yves Avenard
08e886c1bc Bug 1143971: Rebase bustage fix. r=bustage ON A CLOSED TREE 2015-03-23 21:26:16 +11:00
Jean-Yves Avenard
bc6e9ac326 Bug 1144617: Part2. Allow seek to end of mediasource.duration. r=mattwoodrow
When seeking to the end of a mediasource media data, we will instead seek
to the last audio and video sample. The MediaDecoderStateMachine will then
request more audio or video data that will make it hit End Of Stream and
complete the seek.
2015-03-23 21:08:05 +11:00
Jean-Yves Avenard
e8044901c0 Bug 1144617: Part1. Add MediaResource::IsLiveStream() API. r=cpearce
We can't just rely on the MediaResource size to be -1 with MSE. It needs a
dedicated method.
2015-03-23 21:08:05 +11:00
Jean-Yves Avenard
c5553526a1 Bug 1143971: Part1. Come out of waiting mode when mediasource is ended. r=mattwoodrow 2015-03-23 21:08:05 +11:00
Jean-Yves Avenard
1e9b3335bb Bug 1141333: Mark reader has ended when EndOfStream explicit. r=mattwoodrow 2015-03-23 21:08:05 +11:00
Karl Tomlinson
b76acaeb32 bug 1144341 RemoveDecoder() when initialization is aborted r=jya 2015-03-23 18:13:38 +13:00
Edwin Flores
7d338b8c72 Bug 1134434 - Fix bustage on a CLOSED TREE - r=bustage 2015-03-23 16:44:20 +13:00
Edwin Flores
55b656bb4b Bug 1134434 - Fire loadedmetadata before encrypted event on encrypted MP4s - r=cpearce 2015-03-23 15:31:15 +13:00
Ehsan Akhgari
33bb32f549 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Boris Zbarsky
54c64f20a9 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Phil Ringnalda
5045d9d2c4 Back out 59fd15407a79 (bug 1142336) for shutdown hangs
CLOSED TREE
2015-03-18 20:38:43 -07:00
Bobby Holley
ce2e01163c Bug 1142336 - Create one unified thread pool for media code and run the MDSM task queues on it. r=mattwoodrow
This allows for parallel MDSM execution. \o/
2015-03-18 18:00:49 -07:00
Jean-Yves Avenard
479a64c3bb Bug 1128332: Part3. Re-attempt to decode from last failed position. r=mattwoodrow 2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
29327f0738 Bug 1128332: Part2. Don't consider decoding error as fatal. r=mattwoodrow
A decoding error may be temporary. In particular should the range removal
algorithm be called while attempting to demux frames about to be evicted.
2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
fcde4d14ce Bug 1128332: Part1. Add useful informations to logging. r=mattwoodrow 2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
54fea3f275 Bug 1143514: Update mochitest. r=cajbir
sourcebuffer is added to ms.activeSourceBuffers only once the first init
segment has been appended.
2015-03-18 14:10:57 +11:00
Jean-Yves Avenard
0aa1c25a15 Bug 1143514: Part1. Only add sourcebuffer to ActiveSourceBuffers once active. r=cajbir 2015-03-18 14:10:56 +11:00
Daniel Holbert
2c24121797 Bug 1142841: Convert all nsRefPtr<nsIRunnable> to nsCOMPtr<nsIRunnable>. r=ehsan
This patch was generated by a script.  Here's the source of the script for
future reference:

find . \( -iname "*.cpp" -o -iname "*.h" \) | \
  xargs -n 1 sed -i "s/nsRefPtr<nsIRunnable>/nsCOMPtr<nsIRunnable>/g"
2015-03-17 09:29:17 -07:00
Bobby Holley
297188ca94 Bug 1141785 - Force all audio samples to be keyframes. r=k17e 2015-03-15 21:29:55 -07:00
Matt Woodrow
bfed929c24 Bug 1131638 - Disable hardware decoding if too many frames are invalid. r=cpearce 2015-03-12 22:14:51 +13:00