Blake Wu
2030c9f064
Bug 1147258 - Check with assertion if there is any queued sample when EOS. r=ajones
...
--HG--
extra : rebase_source : 4047c157bbbc196b04879b476e6e7e5d096c8fef
2015-03-27 15:56:07 +08:00
Jean-Yves Avenard
a288b721e4
Bug 1133633: Part2. Enable async decoding on mac. r=mattmoodrow
2015-03-31 20:36:32 +11:00
Jean-Yves Avenard
624eb59f55
Bug 1062098: Do not attempt to display dropped frames. r=mattwoodrow
2015-03-31 20:36:29 +11:00
Chris Pearce
5d922e0e8e
Bug 1146201 - Delay navigator.requestMediaKeySystemAccess if CDM not downloaded yet or needs update. r=jwwang,ehsan
2015-03-31 20:50:01 +13:00
Bobby Holley
e42f8208f6
Bug 1147555 - Implement logging for MediaTimer. r=mattwoodrow
2015-03-30 20:06:38 -07:00
Bobby Holley
9f31ecca48
Bug 1147555 - Invert the ordering of our priority queue. r=mattwoodrow
2015-03-30 20:06:38 -07:00
Carsten "Tomcat" Book
60382cb6ba
Backed out changeset bf22c9e5c5a3 (bug 1094764) for crashtest failures on a CLOSED TREE
2015-03-30 15:14:09 +02:00
Paul Adenot
6ee36e38f6
Bug 1094764 - Implement AudioContext.suspend and friends. r=roc,ehsan
...
- Relevant spec text:
- http://webaudio.github.io/web-audio-api/#widl-AudioContext-suspend-Promise
- http://webaudio.github.io/web-audio-api/#widl-AudioContext-resume-Promise
- http://webaudio.github.io/web-audio-api/#widl-AudioContext-close-Promise
- http://webaudio.github.io/web-audio-api/#widl-AudioContext-state
- http://webaudio.github.io/web-audio-api/#widl-AudioContext-onstatechange
- In a couple words, the behavior we want:
- Closed context cannot have new nodes created, but can do decodeAudioData,
and create buffers, and such.
- OfflineAudioContexts don't support those methods, transitions happen at
startRendering and at the end of processing. onstatechange is used to make
this observable.
- (regular) AudioContexts support those methods. The promises and
onstatechange should be resolved/called when the operation has actually
completed on the rendering thread. Once a context has been closed, it
cannot transition back to "running". An AudioContext switches to "running"
when the audio callback start running, this allow authors to know how long
the audio stack takes to start running.
- MediaStreams that feed in/go out of a suspended graph should respectively
not buffer at the graph input, and output silence
- suspended context should not be doing much on the CPU, and we should try
to pause audio streams if we can (this behaviour is the main reason we need
this in the first place, for saving battery on mobile, and CPU on all
platforms)
- Now, the implementation:
- AudioNodeStreams are now tagged with a context id, to be able to operate
on all the streams of a given AudioContext on the Graph thread without
having to go and lock everytime to touch the AudioContext. This happens in
the AudioNodeStream ctor. IDs are of course constant for the lifetime of the
node.
- When an AudioContext goes into suspended mode, streams for this
AudioContext are moved out of the mStreams array to a second array,
mSuspendedStreams. Streams in mSuspendedStream are not ordered, and are not
processed.
- The MSG will automatically switch to a SystemClockDriver when it finds
that there are no more AudioNodeStream/Stream with an audio track. This is
how pausing the audio subsystem and saving battery works. Subsequently, when
the MSG finds that there are only streams in mSuspendedStreams, it will go
to sleep (block on a monitor), so we save CPU, but it does not shut itself
down. This is mostly not a new behaviour (this is what the MSG does since
the refactoring), but is important to note.
- Promises are gripped (addref-ed) on the main thread, and then shepherd
down other threads and to the GraphDriver, if needed (sometimes we can
resolve them right away). They move between threads as void* to prevent
calling methods on them, as they are not thread safe. Then, the driver
executes the operation, and when it's done (initializing and closing audio
streams can take some time), we send the promise back to the main thread,
and resolve it, casting back to Promise* after asserting we're back on the
main thread. This way, we can send them back on the main thread once an
operation has complete (suspending an audio stream, starting it again on
resume(), etc.), without having to do bookkeeping between suspend calls and
their result. Promises are not thread safe, so we can't move them around
AddRef-ed.
- The stream destruction logic now takes into account that a stream can be
destroyed while not being in mStreams.
- A graph can now switch GraphDriver twice or more per iteration, for
example if an author goes suspend()/resume()/suspend() in the same script.
- Some operation have to be done on suspended stream, so we now use double
for-loop around mSuspendedStreams and mStreams in some places in
MediaStreamGraph.cpp.
- A tricky part was making sure everything worked at AudioContext
boundaries. TrackUnionStream that have one of their input stream suspended
append null ticks instead.
- The graph ordering algorithm had to be altered to not include suspended
streams.
- There are some edge cases (adding a stream on a suspended graph, calling
suspend/resume when a graph has just been close()d).
2015-02-27 18:22:05 +01:00
Edwin Flores
157fb06549
Bug 1142835 - Null check mPlugin on GMPAudioDecoderParent shutdown - r=cpearce
2015-03-30 14:58:19 +13:00
Jan-Ivar Bruaroey
924f8ae71f
Bug 1046245 - IO on STS thread + cleanup BackgroundChild on shutdown. r=jesup
2015-03-29 13:43:43 -04:00
Jan-Ivar Bruaroey
c6676519f2
Bug 1046245 - enumerateDevices w/non-blocking e10s, nsICryptoHMAC, clear cookies, lambdas. r=keeler, florian, billm, jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
95f7adab84
Bug 1046245 - enumerateDevices origin-unique ids persisted to disk. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
8af3083f44
Bug 1046245 - enumerateDevices session-persisted hmac id. r=jesup
2015-02-23 11:50:48 -05:00
Jan-Ivar Bruaroey
7538e95524
Bug 1046245 - enumerateDevices returns label for pages w/active gUM or persistent permissions. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
b711b1abcf
Bug 1046245 - enumerateDevices (harmless interface version) r=smaug, r=jesup
2015-03-03 09:51:05 -05:00
Nicolas Silva
52be9f47b5
Bug 1132854 - Remove useless ThebesIntSize conversion helper. r=Bas
2015-03-29 16:59:15 +02:00
Nicolas Silva
e3eaf89e3f
Bug 1132854 - Make nsIntSize a typedef of gfx::IntSize. r=Bas, roc
2015-03-29 16:59:08 +02:00
Andrew McCreight
46dfeaba0b
Bug 1148070 - Change nsIClassInfo::getHelperForLanguage() to getScriptableHelper(). r=bholley
2015-03-29 07:52:54 -07:00
Randell Jesup
2b3486247c
Backed out 6 changesets (bug 1046245) on a CLOSED TREE
2015-03-29 01:42:32 -04:00
Jan-Ivar Bruaroey
6379bfb0be
Bug 1046245 - IO on STS thread + cleanup BackgroundChild on shutdown. r=jesup
2015-03-28 19:02:46 -04:00
Jan-Ivar Bruaroey
cdd0b089a5
Bug 1046245 - enumerateDevices w/non-blocking e10s, nsICryptoHMAC, clear cookies, lambdas. r=keeler, r=florian, r=billm, r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
c4161900da
Bug 1046245 - enumerateDevices origin-unique ids persisted to disk. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
34c27979df
Bug 1046245 - enumerateDevices session-persisted hmac id. r=jesup
2015-02-23 11:50:48 -05:00
Jan-Ivar Bruaroey
2c6d1d99bc
Bug 1046245 - enumerateDevices returns label for pages w/active gUM or persistent permissions. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
a0143ecf52
Bug 1046245 - enumerateDevices (harmless interface version). r=smaug, r=jesup
2015-03-03 09:51:05 -05:00
Phil Ringnalda
24b4f38005
Back out 6 changesets (bug 1046245) for thinking that MSVC would have anything to do with a __PRETTY_FUNCTION__
...
CLOSED TREE
Backed out changeset 9e3ecca831d8 (bug 1046245)
Backed out changeset 87dc145f4da8 (bug 1046245)
Backed out changeset 01606cf19a77 (bug 1046245)
Backed out changeset 2ed2b15fe940 (bug 1046245)
Backed out changeset 2b99b193828a (bug 1046245)
Backed out changeset d1ac67faccbb (bug 1046245)
2015-03-28 19:57:17 -07:00
Jan-Ivar Bruaroey
f3376e46f8
Bug 1046245 - IO on STS thread + cleanup BackgroundChild on shutdown. r=jesup
2015-03-28 19:02:46 -04:00
Jan-Ivar Bruaroey
222e93c87c
Bug 1046245 - enumerateDevices w/non-blocking e10s, nsICryptoHMAC, clear cookies, lambdas. r=keeler, r=florian, r=billm, r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
1668e7a628
Bug 1046245 - enumerateDevices origin-unique ids persisted to disk. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
7d79ddc696
Bug 1046245 - enumerateDevices session-persisted hmac id. r=jesup
2015-02-23 11:50:48 -05:00
Jan-Ivar Bruaroey
6bea0d068b
Bug 1046245 - enumerateDevices returns label for pages w/active gUM or persistent permissions. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
08e703b65e
Bug 1046245 - enumerateDevices (harmless interface version). r=smaug, r=jesup
2015-03-03 09:51:05 -05:00
Ryan VanderMeulen
003e8f5278
Backed out 6 changesets (bug 1046245) for bustage on a CLOSED TREE.
...
Backed out changeset 222c2f9e3bc9 (bug 1046245)
Backed out changeset 4251eef464a2 (bug 1046245)
Backed out changeset 592f4cc23197 (bug 1046245)
Backed out changeset 5bfb9a1c0550 (bug 1046245)
Backed out changeset e966a5df87b6 (bug 1046245)
Backed out changeset 609f3ca64004 (bug 1046245)
2015-03-28 16:24:25 -04:00
Jan-Ivar Bruaroey
f350dbadee
Bug 1046245 - IO on STS thread + cleanup BackgroundChild on shutdown. r=jesup
2015-03-28 11:45:42 -04:00
Jan-Ivar Bruaroey
59e13faed0
Bug 1046245 - enumerateDevices w/non-blocking e10s, nsICryptoHMAC, clear cookies, lambdas. r=keeler, r=florian, r=billm, r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
6a70b84a54
Bug 1046245 - enumerateDevices origin-unique ids persisted to disk. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
600361d553
Bug 1046245 - enumerateDevices session-persisted hmac id. r=jesup
2015-02-23 11:50:48 -05:00
Jan-Ivar Bruaroey
4a058ae74a
Bug 1046245 - enumerateDevices returns label for pages w/active gUM or persistent permissions. r=jesup
2015-03-03 09:51:05 -05:00
Jan-Ivar Bruaroey
f33f50277c
Bug 1046245 - enumerateDevices (harmless interface version). r=smaug, r=jesup
2015-03-03 09:51:05 -05:00
Edwin Flores
dd924e1125
Bug 1148699 - Fix race in CDM Session IDs - r=cpearce
2015-03-28 20:03:32 +13:00
Bobby Holley
4666516a8c
Bug 1145686 - Assert state machine thread for SetState. r=jww
...
We assert in CheckInDecodeComplete as well for good measure, since that's the
last caller of SetState that doesn't already assert it.
2015-03-27 16:26:03 -07:00
Bobby Holley
01705d6512
Bug 1145686 - Make MDSM::StartBuffering happen on the state machine thread. r=jww
2015-03-27 16:26:02 -07:00
Bobby Holley
896a455d03
Bug 1145686 - Make MDSM::Shutdown happen on the state machine thread. r=jww
2015-03-27 16:26:02 -07:00
Daniel Holbert
a8488fd0b6
Bug 1135541: Annotate new method "IsStillValid" in EME code as 'override'. rs=ehsan
2015-03-27 14:04:16 -07:00
Andrea Marchesini
e6f385fb3d
Bug 1148527 - Indentation fix after bug 1145631, r=ehsan
2015-03-27 18:52:19 +00:00
Bobby Holley
70685709f1
Bug 1144519 - Rename MediaDecoder::OnDecodeThread to MediaDecoder::OnDecodeTaskQueue. r=jya
2015-03-27 11:50:21 -07:00
Bobby Holley
3c6cda710d
Bug 1144519 - Switch MediaDecoderReader subclasses to use OnTaskQueue(). r=jya
2015-03-27 11:50:20 -07:00
Bobby Holley
e9a60fe021
Bug 1144519 - Rename MediaDecoderReader::OnDecodeThread to MediaDecoderReader::OnTaskQueue. r=jya
2015-03-27 11:50:20 -07:00
Bobby Holley
bf4c9334cc
Bug 1144519 - Rename MDSM::OnDecodeThread to MDSM::OnDecodeTaskQueue. r=jya
2015-03-27 11:50:19 -07:00
Bobby Holley
aa048233f5
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
Sotaro Ikeda
3a579f22dc
Bug 1147435 - Fix SetDormant() handling in MediaOmxCommonDecoder r=cpearce
2015-03-26 20:57:42 -07:00
Geoff Brown
53daff6584
Bug 1140148 - Update mochitest manifests for Android 4.3 emulator; r=dminor
2015-03-26 20:35:35 -06:00
Ehsan Akhgari
55d22e403d
Bug 1148230 - Eliminate the duplicate subexpression
...
This is leftover from bug 815643. In that bug,
|destinationChannelL->length()| and |destinationChannelR->length()| both
end up being |destinationBus->mDuration| and I forgot to eliminate the
common subexpression.
2015-03-26 20:58:23 -04:00
Wes Kocher
5b6f65bcdb
Merge m-c to inbound a=merge CLOSED TREE
2015-03-26 17:46:35 -07:00
Randall Barker
1e31bd225a
Bug 1144975 - Video dimensions for tab mirroring can be smaller than the devices display. r=snorp
...
--HG--
extra : rebase_source : 78a9719e7489b3b98754d523924303da79794e59
2015-03-19 14:24:00 -04:00
Ryan VanderMeulen
920db5cb07
Bug 1037287 - Skip test_abort.html on Android and B2G due to intermittent failures.
...
--HG--
extra : rebase_source : d5503d84f656b9339419dfaa297e1207c4c6d38d
2015-03-26 08:59:32 -04:00
Edwin Flores
347ea12255
Bug 1147689 - Fix static analysis bustage - r=bustage
2015-03-26 23:17:13 +13:00
Edwin Flores
b790668a1f
Bug 1147689 - Preserve compatibility with eme-decrypt-v6 - r=cpearce
2015-03-26 22:58:43 +13:00
Edwin Flores
d888a5c88f
Bug 1147689 - Increment eme-decrypt API version to v7 - r=cpearce
2015-03-26 22:58:43 +13:00
Edwin Flores
46cbfd3c6b
Bug 1147689 - Pass the session ID(s) of an encrypted frame into EME CDMs - r=cpearce
2015-03-26 22:57:36 +13:00
Gerald Squelart
93b76062f3
Bug 1135541 - Make crash reporting work for EME CDMs - r=cpearce
2015-03-26 19:55:30 +13:00
Chris Pearce
56ad29a9d5
Bug 1147730 part 2 - Validate input rather than not-yet-set data field in MediaKeySession::SetSessionId. r=jw_wang
2015-03-26 19:53:23 +13:00
Chris Pearce
39e8beae91
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
b5404f62e0
Bug 1145815: Do not report discontinuities less than 35ms. r=k17e
...
--HG--
extra : rebase_source : eb8fa50d7036ceae23756e10d0ad815605aae3f8
2015-03-25 22:32:21 +11:00
Bobby Holley
086ebaa957
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
Bobby Holley
ec38dc1002
Bug 852821 - Disable test on b2g. r=me
2015-03-25 17:46:25 -07:00
Benjamin Chen
261c1523b2
Bug 1139781 - Implement VideoPlaybackQuality for MediaCodecReader. r=cpearce
2015-03-26 17:06:06 +08:00
Bobby Holley
35fe66ae8d
Bug 1147495
- Add missing string to state list. r=me
...
--HG--
extra : histedit_source : b213ac7f814f5be5329c3dca83e59e47abe5844c
2015-03-25 11:59:46 -07:00
Bobby Holley
4e510c7517
Bug 1136827 - Stop synchronously dispatching MediaDecoder::DecodeError from MDSM::DecodeError. r=mattwoodrow
...
MediaDecoder::DecodeError invokes MediaDecoder::Shutdown, which shuts down the
state machine. Given the sync dispatch, this means that this is basically already
what's happening.
2015-03-24 22:02:43 -07:00
Bobby Holley
e0a0c3cf07
Bug 1136827 - Stop proxying DecodeError to the decode thread. r=mattwoodrow
...
At this point, all the callers actually call it on the state machine thread,
where it belongs.
2015-03-24 22:02:36 -07:00
Bobby Holley
01abf4455d
Bug 1136827 - Call OnAudioSinkError on state machine thread. r=jww
2015-03-24 22:02:02 -07:00
JW Wang
a4f6051da3
Bug 1146733 - remove PlayFragmented() from eme.js r=ediwn.
2015-03-25 09:55:20 +08:00
Wes Kocher
82959e5df3
Backed out 2 changesets (bug 1136827) for crashtest assertions CLOSED TREE
...
Backed out changeset 998f44ed19fb (bug 1136827)
Backed out changeset 3eb419228c1f (bug 1136827)
2015-03-24 17:21:21 -07:00
Bobby Holley
bb1cc46dff
Bug 1136827 - Stop synchronously dispatching MediaDecoder::DecodeError from MDSM::DecodeError. r=mattwoodrow
...
MediaDecoder::DecodeError invokes MediaDecoder::Shutdown, which shuts down the
state machine. Given the sync dispatch, this means that this is basically already
what's happening.
2015-03-24 15:01:48 -07:00
Bobby Holley
6aa248ee60
Bug 1136827 - Stop proxying DecodeError to the decode thread. r=mattwoodrow
...
At this point, all the callers actually call it on the state machine thread,
where it belongs.
2015-03-24 15:01:47 -07:00
Jean-Yves Avenard
04753af547
Bug 1146222: use nsAutoCString to store mimetype string. r=karlt
...
We use a nsAutoCString as the mimetype is typically less than 64 characters
and prevent a heap allocation (and the unecessary fragmentation linked to it)
2015-03-24 14:45:17 +11:00
Bobby Holley
16efc5f196
Bug 1145203 - Unify FlushDecoding, ResetDecode, and ResetPlayback into a single Reset() method. r=mattwoodrow
2015-03-23 17:07:10 -07:00
Bobby Holley
1e549f9ca5
Bug 1145203 - Remove the AwaitIdle call in FlushDecoding. r=mattwoodrow
...
There are two callers of FlushDecoding - One is shutdown (where we already use
promises to wait for the queue to go idle via BeginShutdown), and the other is
dormant (see the comment).
2015-03-23 17:07:09 -07:00
Wes Kocher
14ef0e0f7d
Backed out changeset f3b3547c610a (bug 1144409) for eme test failures CLOSED TREE
...
--HG--
extra : amend_source : 4d2becbe491a36feec46af2b418e124a32f0be87
2015-03-23 16:06:32 -07:00
Wes Kocher
99ed20cdcb
Backed out changeset 6cb38e697216 (bug 1144409)
2015-03-23 16:06:31 -07:00
Wes Kocher
4563c148db
Backed out changeset c58f5ffb38e0 (bug 1142379
)
2015-03-23 16:06:30 -07:00
Wes Kocher
03bb94525b
Backed out changeset f5a026d98faa (bug 1138294)
2015-03-23 16:06:28 -07:00
Bobby Holley
9487e1743a
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
Bobby Holley
40a80320a6
Bug 1136873 - Use promises for metadata decoding. r=mattwoodrow
2015-03-23 13:17:51 -07:00
Gerald Squelart
6ff22dceea
Bug 1138294 - EME Mochitests with MSE stream switches. r=edwin
2015-03-23 15:12:19 -04:00
Gerald Squelart
35cad88667
Bug 1142379
- Encrypt audio and video tracks using separate encryption settings. r=edwin
...
--HG--
rename : dom/media/test/bipbop-frag-cenc.xml => dom/media/test/bipbop-frag-cenc-audio.xml
rename : dom/media/test/bipbop-frag-cenc.xml => dom/media/test/bipbop-frag-cenc-video.xml
2015-03-22 12:41:00 -04:00
Gerald Squelart
51b6885024
Bug 1144409 - Encrypted event should be fired once per initData; part 2: future initData. r=cpearce
2015-03-22 23:27:00 -04:00
Gerald Squelart
e9b08e251b
Bug 1144409 - Encrypted event should be fired once per initData; part 1: first initData. r=cpearce
2015-03-22 23:26:00 -04:00
Byron Campen [:bwc]
ae13d463e0
Bug 1145407: Another mochitest 3 bustage fix on CLOSED TREE. r=bustage
...
--HG--
extra : amend_source : b35ca98cbfb6d3e745dbb1d7fbfa36f9f3ba93a4
2015-03-23 10:29:53 -07:00
Byron Campen [:bwc]
534d79b207
Bug 1145407: Fix mochitest 3 bustage on CLOSED TREE. r=bustage
...
--HG--
extra : rebase_source : d7e281e62c03169b80e07bdf205c40455fb231e9
2015-03-23 10:21:23 -07:00
Byron Campen [:bwc]
286f76f96c
Bug 1145407: Add mochitests that cause multiple tracks of the same type to be placed in the same remote stream. r=mt
...
--HG--
extra : rebase_source : a713ec8aa5e387f2d414c02d5932977f128129cb
extra : amend_source : fdbe09e35959651df4d0004c1cfe9b4e5bb47097
2015-03-19 16:18:42 -07:00
Jean-Yves Avenard
65525c3610
Bug 1143971: Rebase bustage fix. r=bustage ON A CLOSED TREE
...
--HG--
extra : rebase_source : 9c76279d11fdcd747fc69b24939b888372c6f5ca
2015-03-23 21:26:16 +11:00
Jean-Yves Avenard
586ae964db
Bug 1145411: Reduce Apple audio decoder verbosity. r=mattwoodrow
2015-03-23 21:09:05 +11:00
Jean-Yves Avenard
40a01374c1
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
964b3518d3
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
7340f59893
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
ece3ad624d
Bug 1141333: Mark reader has ended when EndOfStream explicit. r=mattwoodrow
2015-03-23 21:08:05 +11:00
Karl Tomlinson
9b81843d7f
bug 1144189 don't dispatch runnable again after immediate dispatch in RunAfterPendingUpdates r=roc
...
--HG--
extra : rebase_source : 62cdf00643cbf1591fe147f932905f190cd7bf8a
2015-03-18 09:29:33 +13:00
Karl Tomlinson
8abd20cef2
bug 1144341 RemoveDecoder() when initialization is aborted r=jya
...
--HG--
extra : rebase_source : c19a2d8d2f8e736bbcf12925ea7792a0d6bfdcd9
2015-03-23 18:13:38 +13:00
Edwin Flores
d3bddb14f8
Bug 1134434 - Fix bustage on a CLOSED TREE - r=bustage
2015-03-23 16:44:20 +13:00
Stephen Pohl
d123931436
Bug 1145336: Remove old GMPs during updates. r=jwwang
2015-03-22 23:12:03 -04:00
Edwin Flores
9a9b42ccdf
Bug 1134434 - Fire loadedmetadata before encrypted event on encrypted MP4s - r=cpearce
2015-03-23 15:31:15 +13:00
Edwin Flores
bee5912b34
Bug 1134434 - Change test_eme_non_fragmented to expect a `loadedmetadata' event instead of `encrypted' - r=cpearce
2015-03-23 15:31:15 +13:00
Jean-Yves Avenard
ec3133be54
Bug 1145101: Part6. Remove the PDM::Shutdown() method. r=cpearce
...
PDM::Shutdown() was documented in some implementation as running from the main
thread which wasn't the case. It served no purpose and all can be done from the
destructor instead.
The PDM being a refcounted object can be referenced by more than one object.
Shutting it down too early could cause crash. This is now avoided.
2015-03-23 11:12:59 +11:00
Jean-Yves Avenard
29c3f07735
Bug 1145101: Part5. Re-use the same PDM when recreating a decoder. r=mattwoodrow
...
This ensure proper balance of PDM/Media Data Decoder Shutdown()
2015-03-22 13:13:42 +11:00
Jean-Yves Avenard
eba783fa56
Bug 1145101: Part4. Fix coding style. r=cpearce
2015-03-23 11:12:58 +11:00
Jean-Yves Avenard
2a25b5ab4d
Bug 1145101: Part3. Ensure PDM is shutdown after decoder. r=cpearce
...
A MediaDataDecoder object can't be used once the PDM that created it is
shutdown.
We ensure that if the PDM is in use by the SharedDecoderManager we do not
shut it down.
2015-03-23 11:12:58 +11:00
Jean-Yves Avenard
51d848ba61
Bug 1145101: Part2. Unset VDA/VT system functions when unlinking framework. r=cpearce
...
Makes it much easier to debug when framework got unlinked but is incorrectly
still later used as it will crash as a null deref.
2015-03-23 11:12:58 +11:00
Jean-Yves Avenard
5c5bf460e7
Bug 1145101: Part1. Correct log entry. r=cpearce
2015-03-23 11:12:57 +11:00
Ehsan Akhgari
883849ee32
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
Wes Kocher
14f75f943c
Merge m-c to inbound a=merge CLOSED TREE
2015-03-20 18:01:17 -07:00
Wes Kocher
5e68488fa0
Bug 1145816 - Disable test_mediaStreamAudioDestinationNode.html as well for frequent timeouts CLOSED TREE
2015-03-20 16:22:05 -07:00
Ryan VanderMeulen
edd40992cc
Bug 1145816 - Disable test_mediaElementAudioSourceNodePassThrough.html on Android for being nearly perma-timeout.
...
CLOSED TREE
2015-03-20 17:15:43 -04:00
Byron Campen [:bwc]
3d398312bf
Bug 1141230: Stop using getLocalStreams() to drive checking of various things in the mochitest suite. r=jib
...
--HG--
extra : rebase_source : 27e7d4f3d86d33a1c4e046fa0e677c4d3bccc247
2015-03-12 17:30:12 -07:00
Jan-Ivar Bruaroey
e9cc1b61ab
Bug 1145403 - Don't open MediaManager on shutdown. r=jesup
2015-03-19 18:43:25 -04:00
Alexandre Lissy
77d1e01b3c
Bug 1144080 - Disable mochitests on Mulet for TaskCluster. r=ahal
2015-03-20 00:45:00 +01:00
Boris Zbarsky
dc24477d79
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
Matt Woodrow
bfd6201948
Bug 1145029 - Disable DXVA for 4k videos on AMD hardware since it performs poorly. r=jya
...
--HG--
extra : rebase_source : b2b686f7b6774fb04766b47133299c78061793b5
2015-03-19 22:01:47 +13:00
Jan-Ivar Bruaroey
d9836cc0ca
Bug 1144984 - add missing includes in MediaTimer.cpp. r=bobbyholley
2015-03-18 21:21:15 -04:00
JW Wang
88d592058a
Bug 1143562. Part2 - only init |mStorageBaseDir| in the chrome process. r=cpearce
2015-03-18 19:15:00 +01:00
JW Wang
80b1b90328
Bug 1143562 - use /data/b2g/mozilla/gmp as the gmp storage folder on B2G. r=cpearce
2015-03-16 19:51:00 +01:00
Phil Ringnalda
0400bc353a
Back out 59fd15407a79 (bug 1142336) for shutdown hangs
...
CLOSED TREE
2015-03-18 20:38:43 -07:00
Bobby Holley
7afd45ea42
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
Matt Woodrow
cfd81254b3
Bug 1138967 - Part 2: Create IMFYCbCrImage so that image data copying happens off the decoder thread. r=nical,cpearce
...
--HG--
extra : rebase_source : f42bec1f1f15eb9e825643df87f3f9285dcb7189
2015-03-19 10:16:23 +13:00
Matt Woodrow
a426242c6b
Bug 1138967 - Part 1: Remove ISharedImage. r=nical
...
--HG--
extra : rebase_source : e8ddd7c6cd6d3bb76befb65fe32210ed65d22eeb
2015-03-19 10:15:38 +13:00
Bobby Holley
c64dbd1ed9
Bug 1144487 - Implement AbstractThread. r=mattwoodrow
2015-03-18 08:25:55 -07:00
Sylvestre Ledru
57e754e11c
Bug 1144176 - Remove a useless declaration. r=bholley
2015-03-18 14:10:08 +01:00
Benjamin Chen
5fb5f6af9a
Bug 1138825 - Fix the crash at mAudioPromise: call decode audio data when the audio queue is empty and check the mAudioPromise is empty or not. r=sotaro
2015-03-10 14:38:39 +08:00
Nigel Babu
0a587c5cdd
Backed out changeset 05850dac2882 (bug 1143562) for B2G Emulator ICS M2 bustage CLOSED TREE
2015-03-18 12:20:57 +05:30
Jean-Yves Avenard
09f736c2cc
Bug 1143987: Use SharedDecoderManager with EME PDM. r=cpearce
...
--HG--
extra : rebase_source : cf3c5fff87bdca3b55d10e41d5b4f44678253c72
2015-03-18 14:10:59 +11:00
Jean-Yves Avenard
c9bc9c96bd
Bug 1128332: Part3. Re-attempt to decode from last failed position. r=mattwoodrow
...
--HG--
extra : rebase_source : e583e0255e21c32f5d35a97d17f4dec92e2ba10c
2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
44a39a5316
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.
--HG--
extra : rebase_source : 0bc4f1a3a2eb389c6f4735614a1d4fdf0c850f49
2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
9b95bf6cfe
Bug 1128332: Part1. Add useful informations to logging. r=mattwoodrow
...
--HG--
extra : rebase_source : ace658fb62ed051b63852c7f991c0a603e83d9c3
2015-03-18 14:10:58 +11:00
Jean-Yves Avenard
0e069551e7
Bug 1143586: Part1. Be more relaxed when parsing h264 codecs' levels. r=cpearce
...
--HG--
extra : rebase_source : f1dd779a298894ae81cbae62d96396a2c41dc0db
2015-03-18 14:10:57 +11:00
Jean-Yves Avenard
77358caae1
Bug 1143514: Update mochitest. r=cajbir
...
sourcebuffer is added to ms.activeSourceBuffers only once the first init
segment has been appended.
--HG--
extra : rebase_source : fe1bfedce8aa377914be6ea99579e3267da760d5
2015-03-18 14:10:57 +11:00
Jean-Yves Avenard
2bc6b14368
Bug 1143514: Part1. Only add sourcebuffer to ActiveSourceBuffers once active. r=cajbir
...
--HG--
extra : rebase_source : 766249adc3b7a3cbb4aa63c24aaefbe855c121fd
2015-03-18 14:10:56 +11:00
JW Wang
e21abfe964
Bug 1143562 - use /data/b2g/mozilla/gmp as the gmp storage folder on B2G. r=cpearce.
2015-03-18 10:29:31 +08:00
Daniel Holbert
082fd9cd7f
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
Daniel Holbert
c4a0036a5d
Bug 1143823 part 1: Make MediaStream::RunAfterPendingUpdates() take already_AddRefed instead of a nsRefPtr. r=karlt
2015-03-17 09:29:17 -07:00
Jean-Yves Avenard
ddd2384f4e
Bug 1143516: Ignore SPS's aspect ratio if value is nonsensical. r=cpearce
2015-03-17 16:42:02 +11:00
Ehsan Akhgari
97b5f363cc
Bug 579517 follow-up: Remove NSPR types that crept in
2015-03-16 21:15:10 -04:00
Bobby Holley
f4ba405552
Bug 1135424 - Run MDSM disposal off the MediaPromise returned by initiating shutdown on the task queue. r=mattwoodrow
2015-03-16 14:38:45 -07:00
Bobby Holley
53ad5b2a9c
Bug 1135424 - Switch the MDSM to a task queue. r=mattwoodrow
2015-03-16 14:38:44 -07:00
Bobby Holley
11f667af87
Bug 1135424 - Implement MediaTimer. r=mattwoodrow
2015-03-16 14:38:43 -07:00
Bobby Holley
1d46643778
Bug 1135424 - Allow MediaPromise dispatch to fail if the ThenValue has been disconnected. r=mattwoodrow
...
The original idea behind the current model was that we wanted ironclad guarantees
that consumers would always get a callback on their promise. But we now have use
cases where the consumer wants to forget about a promise (using the new
Disconnect()) feature, and in some cases wants to shut down the task queue that
the response is going to be dispatched on. In the case of this bug, we want to
avoid waiting for the longest outstanding timer promise to be resolved before
shutting down the MDSM.
So this patch fixes up the pieces needed to make this work:
* Loosening our invariants to allow dispatch targets to be released on any thread,
since MediaTaskQueue and nsIEventTarget both have thread-safe refcounting.
* Releasing mThisVal in Disconnect, so that we no longer depend on successful
dispatch to release it on the correct (dispatch) thread.
* Fiddling with various assertions.
We also make some assertions fatal in nightly/aurora builds while we're at it.
2015-03-16 14:38:42 -07:00
Andreas Pehrson
ba688bded0
Bug 1142688 - Wait for actual audio data on remote side before checking audio sanity. r=jesup,padenot
2015-03-16 16:32:19 +08:00
Paul Adenot
e95766a93b
Bug 1141781 - Grip the VideoFrameContainer when queing a call to invalidate in the MediaStreamGraph. r=roc
2015-03-16 18:12:36 +01:00
JW Wang
05f13e6968
Bug 1142917 - add logs to GMPChild. r=edwin.
2015-03-16 11:27:49 +08:00
Bobby Holley
ca9369a50d
Bug 1141785 - Force all audio samples to be keyframes. r=k17e
2015-03-15 21:29:55 -07:00
Bobby Holley
9f9d0175f0
Bug 1141785 - Logging fixes. r=jya
2015-03-15 21:29:54 -07:00
Chris Peterson
df594b2b0d
Bug 1143336 - Fix and suppress -Wunreachable-code-return warnings in media code. r=cajbir
2015-03-14 13:47:51 -07:00
Sotaro Ikeda
5bcb8e7249
Bug 1142527 - Always call ReleaseMediaResources() when entering dormant r=cpearce
2015-03-15 20:51:02 -07:00
Phil Ringnalda
571ce099b4
Back out 7f1f85ee4ba6 (bug 1143278) for Win7 near-permaorange in test_eme_canvas_blocked.html
2015-03-15 18:30:53 -07:00
Jean-Yves Avenard
2572f7570a
Bug 1143339: Part3. FFmpeg decoder can play video/mp4 mimetype. r=edwin
2015-03-16 08:49:19 +11:00
Jean-Yves Avenard
a2d00dfc0a
Bug 1143339: Part2. Also wrap mimetype video/mp4 in avcc wrapper. r=cpearce
2015-03-16 08:48:44 +11:00
Jean-Yves Avenard
68dde32c37
Bug 1143339: Part1. Ensure successive calls to Shutdown() won't potentially crash. r=cpearce
2015-03-16 08:48:29 +11:00
Chris Pearce
151f899496
Bug 1143278 - Make gmp-clearkey not require a Win8 only DLL to decode audio on Win7. r=edwin
2015-03-15 11:30:24 +13:00
Jan-Ivar Bruaroey
c27c8bdddb
Bug 1135655 - bump up tab sharing dimension defaults to match screensharing r=jesup
2015-03-13 12:21:20 -04:00
Randell Jesup
d2e1438a01
Bug 1141622: bustage fix for warnings-as-errors r=bustage on a CLOSED TREE
2015-03-13 10:12:59 -04:00
Jan-Ivar Bruaroey
293c4b5fad
Bug 1141622 - unregress screensharing frameRate by limiting hardcoded capabilities to osx camera r=jesup
2015-03-12 12:37:25 -04:00
Phil Ringnalda
345a4eca93
Back out 3 changesets (bug 1135424) on suspicion of causing frequent hangs in test_playback.html on mochitest-e10s
...
CLOSED TREE
Backed out changeset 584d91ffdf88 (bug 1135424)
Backed out changeset d86806ea63f4 (bug 1135424)
Backed out changeset e52401d30a67 (bug 1135424)
2015-03-12 23:05:11 -07:00
Chris Double
1ef0fc9d78
Bug 1127646 - Report MSE Join Latency and MTBR in telemetry - r=cpearce,bsmedberg
2015-03-13 15:02:49 +13:00
Bobby Holley
0563f41ef7
Bug 1135424 - Switch the MDSM to a task queue. r=mattwoodrow
2015-03-12 17:54:35 -07:00
Bobby Holley
de5342cf9d
Bug 1135424 - Implement MediaTimer. r=mattwoodrow
2015-03-12 17:52:51 -07:00
Bobby Holley
ab44849fc5
Bug 1135424 - Allow MediaPromise dispatch to fail if the ThenValue has been disconnected. r=mattwoodrow
...
The original idea behind the current model was that we wanted ironclad guarantees
that consumers would always get a callback on their promise. But we now have use
cases where the consumer wants to forget about a promise (using the new
Disconnect()) feature, and in some cases wants to shut down the task queue that
the response is going to be dispatched on. In the case of this bug, we want to
avoid waiting for the longest outstanding timer promise to be resolved before
shutting down the MDSM.
So this patch fixes up the pieces needed to make this work:
* Loosening our invariants to allow dispatch targets to be released on any thread,
since MediaTaskQueue and nsIEventTarget both have thread-safe refcounting.
* Releasing mThisVal in Disconnect, so that we no longer depend on successful
dispatch to release it on the correct (dispatch) thread.
* Fiddling with various assertions.
We also make some assertions fatal in nightly/aurora builds while we're at it.
2015-03-12 17:52:50 -07:00
Chris Double
17b0191dec
Bug 1131884 - Video buffering calculation fails for some MP4 videos - r=jya
...
Playback position used in calculating buffering time is set
during metadata reading. This is at end of file for the
video in the bug. As a result the buffering data is always
wrong.
Changed to not setting position during metadata - it is set
during frame playback anyway.
Also changes buffering timeout to 15s from 30s.
2015-03-13 13:45:51 +13:00
Jonathan Griffin
d1c61bc9b6
Bug 1116187 - Disable failing mochitest-chrome tests for B2G, r=gbrown
2015-02-06 16:30:37 -08:00
Gerald Squelart
71b9547ba6
Bug 1121774 - Split audio and video tracks in EME MSE tests. r=edwin
...
--HG--
rename : dom/media/test/gizmo-frag-cenc.xml => dom/media/test/bipbop-frag-cenc.xml
rename : dom/media/test/test_eme_non_fragmented.html => dom/media/test/test_eme_non_mse_fails.html
2015-03-11 20:40:00 -04:00
Paul Adenot
1a25b47c65
Bug 1141282 - Test the type of the attributes of the DynamicCompressoNode, and make sure it returns sane values. r=ehsan
2015-03-12 14:36:40 +01:00
Paul Adenot
ada66aa858
Bug 1141282 - DynamicCompressorNode's readonly 'reduction' should be a float. r=ehsan
2015-03-12 14:36:39 +01:00
Carsten "Tomcat" Book
f11551a724
Merge mozilla-central to mozilla-inbound
2015-03-12 12:10:54 +01:00
Carsten "Tomcat" Book
fb7ccb2edc
merge fx-team to mozilla-central a=merge
2015-03-12 10:17:35 +01:00
Wes Kocher
42e0c8a496
Merge m-c to fx-team a=merge CLOSED TREE
2015-03-11 19:09:10 -07:00
Wes Kocher
b7ae2e9516
Merge m-c to inbound a=merge
...
--HG--
extra : rebase_source : 243776ce01fcd38161dd94411e0bc1cbfb2f7cb2
2015-03-11 19:06:00 -07:00
Ryan VanderMeulen
97acbd9776
Merge m-c to b2g-inbound. a=merge
2015-03-11 16:03:39 -04:00
Sotaro Ikeda
ccf07f5419
Bug 1137515 part 2 - Change to media r=jesup
2015-03-11 12:32:38 -07:00
Jan-Ivar Bruaroey
d132e36539
Bug 1136871 - cleanup RtpSenders accounting to not rely on streams r=mt
2015-03-11 12:24:38 -04:00
Andrew Osmond
ce39ae083d
Bug 1139027 - Permit running of camera mochitests on B2G desktop. r=mikeh
2015-03-10 19:39:49 -04:00
Chris Pearce
de13adbecb
Bug 1141883 - Add more logging to help debugging EME. r=edwin
2015-03-11 17:02:08 +13:00
Ryan VanderMeulen
e2754f772f
Merge m-c to fx-team. a=merge
...
CLOSED TREE
2015-03-11 16:05:05 -04:00
Mike de Boer
04f3c42e8e
Bug 1139907: show WebRTC screen sharing notification icon in Hello conversation window and globally when tab sharing is active. r=jesup,florian
2015-03-11 16:34:31 +01:00
Chris Pearce
46dba701ac
Bug 1141241 - Add nullcheck for mDecoder in WMFMediaDataDecoder::ProcessDrain(). r=mattwoodrow
2015-03-11 22:01:19 +13:00
Jan-Ivar Bruaroey
1a0a70d9a2
Bug 1136871 - test invalid replaceTrack arg r=standard8
2015-02-27 11:23:46 -05:00
Mark Banner
de623dc60c
Bug 1136871: replaceTrack testcase r=jib
2015-03-11 15:29:37 -04:00
Byron Campen [:bwc]
6fb59a4364
Bug 1136871 - Part 2: Clear up some inconsistencies with ReplaceTrack r=jib,smaug
2015-03-11 12:08:21 -04:00
Matt Woodrow
10ced0676b
Bug 1131638 - Disable hardware decoding if too many frames are invalid. r=cpearce
2015-03-12 22:14:51 +13:00
Matt Woodrow
c2badcb2ef
Bug 1131638 - Record invalid frames as dropped for video playback stats. r=ajones
2015-03-12 22:14:04 +13:00
Jean-Yves Avenard
587ac422b8
Bug 1140688: Only print a warning when VDA decoder couldn't be created. r=rillian
...
--HG--
extra : rebase_source : 3292410fbd8a8b03469ece9a257d6cd744ce5fef
2015-03-12 11:07:20 +11:00
Jean-Yves Avenard
4c60d0f785
Bug 1141914: Always use video dimensions using extradata's SPS. r=cpearce
...
--HG--
extra : rebase_source : f8d97ec431cc5147edc9013029e2053d3f2e4a40
2015-03-12 11:07:20 +11:00
Jean-Yves Avenard
100d451a99
Bug 1128381: Part7. Streamline code across platforms. r=cpearce
...
--HG--
extra : rebase_source : bd3fa9d07c8e37711f2409ef731f60ff882f8dbb
2015-03-12 11:07:20 +11:00
Jean-Yves Avenard
7434c7c6ac
Bug 1128381: Part6. Remove unused member functions. r=cpearce
...
--HG--
extra : rebase_source : f310f0f143662154332963e6f7678a4f87057ad8
2015-03-12 11:07:20 +11:00
Jean-Yves Avenard
51d8526603
Bug 1128381: Part5. Make AVCC wrapper be dormant capable. r=cpearce
...
This makes the Apple VDA and VideoToolbox as well as EME and FFmpeg decoder
dormant capable.
--HG--
extra : rebase_source : f350d83ea8bb3a2a7d80c51c4861272f1093eee3
2015-03-12 11:07:20 +11:00
Jean-Yves Avenard
83de7dcb78
Bug 1128381: Part4. Make AVCC wrapper work with SharedDecoderManager. r=cpearce
...
--HG--
extra : rebase_source : 957ef4b523f795804fec06c295c80c5de0da7bde
2015-03-12 11:07:19 +11:00
Jean-Yves Avenard
adf3e336a3
Bug 1128381: Part3. Handle on the fly video format change. r=cpearce
...
Add monitoring of the current SPS NAL and destroy/recreate H264 decoder as
required.
--HG--
extra : rebase_source : fbab04b0ae3b4be42eea34a1c6f1b19bf39ad2f0
2015-03-12 11:07:19 +11:00
Brian Birtles
78cbd39cef
Bug 1134487 - Remove delegated constructors in GMP{Audio,Video}Decoder since they're not supported by GCC 4.6. r=cpearce
2015-02-19 10:37:29 +09:00
Ryan VanderMeulen
d4a838cbc3
Backed out changesets cd5ec762afa1 and fad66e8fe874 (bug 1137515) for Nexus 5-L bustage.
...
CLOSED TREE
--HG--
extra : rebase_source : 59680d649177809d0a31d87091ab9d18070f7a0f
2015-03-11 12:35:08 -04:00
Alexandre Lissy
1e7c8bf446
Bug 1141029 - Disabling mochitests on Mulet with parity to B2G Desktop for taskcluster. r=ahal
2015-03-11 08:15:00 -04:00
Andreas Pehrson
2050f9e190
Bug 1081819 - Handle InMutedCycle() in TrackUnionStream::ProcessInput. r=roc,padenot
2015-03-05 12:27:16 +08:00
Andreas Pehrson
7f6daeea34
Bug 1081819 - Add mochitest for piping WebAudio in and out of PeerConnection. r=jesup,padenot
2015-03-02 18:07:20 +08:00
Andreas Pehrson
35fb84dfd4
Bug 1081819 - Let the output stream itself process input data from MediaStreamAudioDestinationNode::mStream. r=roc
2015-03-02 17:08:40 +08:00
James Willcox
99105b89d6
Bug 1084441 - Test for ability to play MP4 on Android Jelly Bean and higher r=cpearce
2015-03-11 09:22:55 -05:00
Sotaro Ikeda
80cec56356
Bug 1137515 part 2 - Change to media r=jesup
2015-03-11 07:18:23 -07:00
Jim Porter
d0a2187ca7
Bug 1039639 - Add support for Flac on Firefox OS. r=cajbir
2014-12-02 16:37:00 -05:00
Benjamin Chen
6649eea3cd
Bug 1131563 - Set the flag skipToNextKeyFrame to false if there is no keyframe behind. r=kinetik
...
--HG--
extra : rebase_source : e561bdfe1bddfc5073587056925248a4ba905977
2015-03-19 18:00:02 +08:00
JW Wang
2689394ff9
Bug 1143532 - Include pid in the log messages of GMPParent. r=edwin
...
--HG--
extra : rebase_source : 704c153d9227781f9cc443315603204efc7e2b0a
2015-03-15 23:30:00 +01:00
Matthew Gregan
a5dd52d5ad
Bug 1144523 - Convert input buffer to expected format for OpenH264 GMP plugin. r=cpearce
2015-03-20 17:52:10 +13:00
Wes Kocher
014849cca6
Merge m-c to inbound a=merge CLOSED TREE
2015-03-10 16:11:23 -07:00
Wes Kocher
d8ac0068e5
Merge b2g-inbound to m-c a=merge CLOSED TREE
2015-03-10 15:44:53 -07:00
Carsten "Tomcat" Book
cc4d1b9af9
Merge mozilla-central to b2g-inbound
2015-03-10 14:07:36 +01:00
Thomas Zimmermann
1ddf770fc6
Bug 1137151: Marked destructor of |MuxerOperation| as protected, r=sotaro
2015-03-10 13:44:01 +01:00
Thomas Zimmermann
9823b29ee9
Bug 1137151: Remove ref-counting from |OMXVideoEncoder| r=sotaro
...
Reference counting in |OMXVideoEncoder| is used inconsistently any actually
not necessary. This patch removed the code. Users are converted to auto
pointers.
2015-03-10 13:44:01 +01:00
Thomas Zimmermann
e90fcbf7f7
Bug 1137151: Marked destructor of |android::MediaCodecReader| as protected, r=sotaro
2015-03-10 13:44:01 +01:00
Randell Jesup
0994edf17b
Bug 1130150: mSources update r=roc
2015-03-10 01:08:03 -04:00
Karl Tomlinson
96611b45a9
bug 1139874 check for shutdown before asking the reader for buffered r=bholley
...
--HG--
extra : rebase_source : cbc7f06a89dfbaf22eb590c51ba709a4757296d0
2015-03-10 09:53:31 +13:00
Wes Kocher
8e389f1730
Merge inbound to m-c a=merge CLOSED TREE
2015-03-09 18:27:28 -07:00
Mike Taylor
6cd22be51a
Bug 1136877 - Collect telemetry on SPS.max_num_ref_frames. r=jya
2015-03-06 08:18:00 -05:00
Mike Taylor
df74a152aa
Bug 1136877 - Collect telemetry on constraint_set flags from decoded SPS. r=jya
2015-03-06 08:17:00 -05:00
Ethan Tseng
5bc6a1cede
Bug 1133461 - [RTSP] Remove the extra PLAY request for seek operation. r=bechen
2015-03-04 17:34:35 +08:00
Mike Taylor
8efae6d25f
Bug 1136877 - Collect telemetry on constraint_set flags from canPlayType. r=jya
2015-03-03 08:54:00 -05:00
Chris Pearce
290ac2d4af
Bug 1131387 - Enable EME, update whitelist. r=kentuckyfriedtakahe
2015-03-09 16:24:26 +13:00
Chris Pearce
e49356bdaf
Bug 1131387 - Rename MSE whitelist pref. r=kentuckyfriedtakahe
2015-03-09 16:24:21 +13:00
Chris Pearce
44bf110503
Bug 1140778 - Disable test_eme_obs_notification since it's testing functionality we're going to remove. r=test-only.
2015-03-09 16:24:18 +13:00
Jean-Yves Avenard
3a14d38778
Bug 1128380: Make AmpleVideoFrames calculation dynamic. r=cpearce
2015-03-09 14:17:30 +11:00
Jean-Yves Avenard
24c09255ca
Bug 1128380: Add IsHardwareAccelerated implementation for AVCC and mac decoder. r=cpearce
2015-03-09 14:17:27 +11:00
Matt Woodrow
3154f0f851
Back out bug 1131638 (changesets 78b34d0e414a and 1b55b99dc432) for causing various video regressions
2015-03-09 16:18:32 +13:00
Jean-Yves Avenard
52763888a3
Bug 1139779: Part5. Move picture/display size calculations in AVCC wrapper. r=rillian
2015-03-10 21:19:42 +11:00
Jean-Yves Avenard
313c854fd3
Bug 1139779: Part4. Make FFmpeg video decoder use AVCC. r=edwin
...
FFmpeg h264 decoder doesn't handle change of SPS in-band and only use the first
found.
2015-03-10 21:19:42 +11:00
Jean-Yves Avenard
b849b45758
Bug 1139779: Part3. Use dispay size extracted from SPS NAL. r=edwin
...
This also adds proper aspect ratio support.
2015-03-10 21:19:41 +11:00
Jean-Yves Avenard
85f78b847d
Bug 1139779: Part2. Use display dimension from SPS NAL. r=rillian
2015-03-10 21:19:41 +11:00
Nils Ohlmeier [:drno]
7bfa9a84ae
Bug 1139094 - Fix multiple steeplechase test execution problems. r=bwc, r=mt
2015-03-03 21:33:00 -05:00
Chris Pearce
4dd06c566c
Bug 1140947 - Correct some logging in SourceBufferResource.cpp. r=cajbir
2015-03-09 15:38:33 +13:00
Jean-Yves Avenard
ec19ab2505
Bug 1139380: Ensure all queued tasks are aborted when shutting down. r=cpearce
2015-03-06 16:49:00 +11:00
Ehsan Akhgari
0f8abb1d44
Bug 1140763 - Build dom/media/gtest in unified mode; r=cpearce
2015-03-08 15:46:07 -04:00
Phil Ringnalda
df31a989de
Backed out 3 changesets (bug 1081819) for frequent mochitest-e10s failures
...
Backed out changeset b78fd38002f5 (bug 1081819)
Backed out changeset ff063b9a1ea2 (bug 1081819)
Backed out changeset 322d60fc413e (bug 1081819)
2015-03-07 18:14:05 -08:00
Andreas Pehrson
a58f208924
Bug 1081819 - Handle InMutedCycle() in TrackUnionStream::ProcessInput. r=roc,padenot
2015-03-05 12:27:16 +08:00
Andreas Pehrson
dfcdf561b0
Bug 1081819 - Add mochitest for piping WebAudio in and out of PeerConnection. r=jesup,padenot
2015-03-02 18:07:20 +08:00
Andreas Pehrson
307e15ba05
Bug 1081819 - Let the output stream itself process input data from MediaStreamAudioDestinationNode::mStream. r=roc
2015-03-02 17:08:40 +08:00
L. David Baron
97b31730a2
Bug 1135170 bustage fix: add #include to fix bustage with EME disabled.
...
This led to build errors on some periodic B2G device image builds for Nexus 5-L.
2015-03-06 21:33:25 -08:00
Bobby Holley
774e705988
Bug 1093980 - Rewrite test_FrameSelection to avoid assuming that resizes will always be processed before firing 'seeked'. rpending=mattwoodrow
...
Nothing in the spec says this should hold, and it holds less often when we move
invalidation to happen at the end of seeking.
2015-03-06 19:17:32 -08:00
Bobby Holley
91d1025f91
Bug 1135170 - Remove garbage test_bug493187.html. rpending=mattwoodrow
...
This test is fundamentally racey - it loads very short video files (some less
than 1s), plays them, waits for timeupdate events to try to find just the right
moment to seek, performs a seek, and then checks various pieces of
playback-dependent state (while playing).
The specific issue I ran into was that the video would sometimes finish playing
before the 'seeked' event handler fired, which means that readyState is
HAVE_CURRENT_DATA (per spec). I could fiddle with the test a bit to handle this
case, but I think we're doing a disservice to ourselves by having it in the tree.
2015-03-06 19:17:24 -08:00
Bobby Holley
7d849fa87c
Bug 1135170 - Fix up racey test_seek-1.html. rpending=mattwoodrow
...
The use of play() and pause() in the test is hugely problematic for short video
files and slow/laggy platforms. In particular, if playback has ended by
the time that we fire the 'seeked' event listener, then the ensuing play() will
put us back into seeking mode (seeking to 0), making the test fail.
2015-03-06 19:17:10 -08:00
Bobby Holley
4406d389a4
Bug 1135170 - Remove now-unused state machine scheduler freezing/thawing. r=mattwoodrow
2015-03-06 19:17:09 -08:00
Bobby Holley
578cad549e
Bug 1135170 - Rewrite the MediaDecoder-to-MediaDecoderStateMachine interface to be Promise-based. r=mattwoodrow
2015-03-06 19:17:07 -08:00
Bobby Holley
1dd7c91f68
Bug 1135170 - Move the RenderVideoFrame call to the end of SeekCompleted. r=mattwoodrow
...
This means that we can get rid of the code to recheck state after dropping the
monitor. We'll remove the other monitor drop from this method in a subsequent
patch.
2015-03-06 19:17:06 -08:00
Bobby Holley
e02c011cd4
Bug 1135170 - Move some work from MDSM::Seek to MDSM::InitiateSeek. r=mattwoodrow
...
This has two implications:
* We no longer need to pipe mQueuedSeekTarget through MDSM::Seek to get the
appropriate clamping.
* MDSM::Seek doesn't _need_ to be called on the main thread anymore.
2015-03-06 19:17:04 -08:00
Bobby Holley
d846586729
Bug 1135170 - Reap some cleanup and assertions that were waiting on this bug. r=mattwoodrow
2015-03-06 19:17:01 -08:00
Bobby Holley
845ad750dc
Bug 1135170 - Stop updating playback position from Ogg seek and remove MediaDecoder::UpdatePlaybackPosition. r=mattwoodrow
...
The ogg reader makes two adjustments to the seek time - the first is to clamp it
between start and end time, which MDSM already does. The second is to subtract
SEEK_OPUS_PREROLL from the target. If we wanted to, we could return this as the
resolve value in the seek promise and handle the update in the MDSM. But I think
DropVideoUpToSeekTarget should actually handle this just fine.
2015-03-06 19:17:00 -08:00
Bobby Holley
bf69dac697
Bug 1135170 - Streamline seek initiation logic and abolish manual seek cancels and retries. r=mattwoodrow
...
The model we're moving towards is one where the MDSM can just disconnect all of
its promises, send a ResetDecode down the pipe, and start doing something
unrelated.
2015-03-06 19:16:59 -08:00
Bobby Holley
243db68fec
Bug 1135170 - Stop doing sync dispatch for SeekingStarted. r=mattwoodrow
...
I can't see any reason why this should be necessary, and cursory archaeology
suggests that this too is a hand-me-down from previous threading models.
2015-03-06 19:16:57 -08:00
Bobby Holley
df32aaa30e
Bug 1135170 - Remove silly special case for seeking to exactly the current time. r=mattwoodrow
...
I traced this back to something 2011 or earlier and then gave up. Given that we're
doing an exact microsecond comparison here this is almost certainly dead code in
every case except for the one where the media is paused and JS does
|el.currentTime = el.currentTime|. And in that case, I think running through the
regular seek machinery is probably fine.
2015-03-06 19:16:56 -08:00