Commit Graph

21886 Commits

Author SHA1 Message Date
Anthony Jones
521d1bcd79 Bug 1060704 - Save MP4 init segment for later; r=kinetik 2014-09-01 20:45:48 +12:00
Anthony Jones
d8db640996 Bug 1060182 - Cache MP4 buffered ranges; r=cpearce 2014-09-01 20:45:46 +12:00
Ehsan Akhgari
a3e58b5225 Bug 1061051 - Fix more bad implicit constructors in the media code; r=roc
--HG--
extra : rebase_source : c3d5f6a1cc95f4a7f123129e14a9a0c57d00ef38
2014-08-31 23:50:59 -04:00
Ehsan Akhgari
5c071cc02e Bug 1060980 - Fix more bad implicit constructors in the media code; r=roc
--HG--
extra : rebase_source : 14da50f7d2e37e04452445dea575ea4d582e8efd
2014-08-31 23:50:23 -04:00
Ehsan Akhgari
d32c17358d Bug 1060983 - Fix more bad implicit constructors in the SVG code; r=smaug 2014-08-31 21:08:04 -04:00
Paul Adenot
f10161b39f Bug 1060311 - Force the use of an AudioCallbackDriver when at least an AudioNodeStream is present in the graph. r=jesup
This prevent a bug where the graph would be using a SystemClockDriver even if it
was rendering Web Audio API content.

It went like this:
- An AudioContext was created.
- Some AudioNodeStream (Web Audio API MediaStreams) were created, but their
MediaStreamTrack was not added yet
- During the stream ordering, we would see that we were running an
AudioCallbackDriver (because the MSG was created using an AudioContext, and we
pass in hints regarding the type of MediaStreams that will be added in the
future, to open the audio stream as early as we can, because it can take some
time, the MSG was created directly using an AudioCallbackDriver)
- Also during the stream ordering, we see that none of our MediaStream have an
MediaStreamTrack with an audio track. This triggers a switch to a
SystemClockDriver, because the graph thinks there is no audio.
- During CreateAndDestroyAudioNode, we would not switch to an
AudioCallbackDriver on the first iteration (right after the UpdateStreamOrder
call), because we would be switching, and not during the iteration after,
because we thought we already switched (the first patch makes this more robust).

This basically forces an AudioCallbackDriver if there is an AudioNodeStream,
which prevents unnecessary GraphDriver switches (and save threads creation
destruction, audio stream create and destruction, and all other resources
associated with a GraphDriver).
2014-08-29 20:26:29 +02:00
Andrea Marchesini
35125820b7 Bug 1058470 - Blob URL should contain the origin as part of the URI, r=bz 2014-08-31 11:40:11 +01:00
Matthew A. Miller
ad16f7e264 Bug 1056213 - Window title in "windows or screen to share" list is not updated when navigating to another page r=rjesup 2014-08-27 16:32:28 -06:00
Timothy Nikkel
b51e4ac876 Bug 1008942. When a network request for an image finishes during paint suppression and the image doesn't have a frame don't start a decode. r=mats
Either the image won't get a frame, or it will get a frame very soon and that frame will check its own visibility and kick off a decode if needed.
2014-06-25 23:45:08 -05:00
Daniel Holbert
43688fd271 Bug 1056166 followup: move margin{SIDE} and textAlign atoms out of '#ifdef ACCESSIBILITY' section, to fix --disable-accessibility builds. r=ehsan 2014-08-31 00:56:26 -07:00
Randell Jesup
6d0bd79ea8 Backed out changeset ef2bf9308ed7 (bug 1056213) 2014-08-30 12:11:27 -04:00
Matthew A. Miller
4c10ef5484 Bug 1056213 - Window title in "windows or screen to share" list is not updated when navigating to another page r=rjesup 2014-08-27 16:32:28 -06:00
Tim Abraldes
6157602479 bug 1027906. Set delayed token level for GMP plugin processes to USER_RESTRICTED. Whitelist certain files and registry keys that are required for EME plugins to successfully load. r=bobowen. r=jesup. r=bent. 2014-08-29 17:34:26 -07:00
Tanvi Vyas
134527c588 Bug 1058836 - Set aDecision parameter to block by default and update cases where it wasn't initially set in nsMixedContentBlocker.cpp. r=smaug 2014-08-29 12:57:08 -07:00
Ryan VanderMeulen
28146780ed Merge m-c to inbound. a=merge
--HG--
extra : rebase_source : 3282a3113131b9cdc5b808ad75a834516c43ef73
2014-08-29 15:39:48 -04:00
Neil Rashbrook
1aa2452ae4 Bug 1054289 Scroll to the current ref, not the original one r=smaug 2014-08-29 20:34:35 +01:00
Neil Rashbrook
7b393e863a Bug 1059707 Don't print a deprecation warning for theme XBL binding documents r=smaug 2014-08-29 20:33:16 +01:00
Ryan VanderMeulen
a3c8179253 Merge b2g-inbound to m-c. a=merge 2014-08-29 15:26:40 -04:00
Paul Adenot
6c7bc575a7 Backed out changeset aaa4cf41cade (bug 1060311) on a CLOSED TREE 2014-08-29 18:25:35 +02:00
Paul Adenot
fed8eec47b Backed out changeset 36cedce0c8b3 (bug 1060311) 2014-08-29 18:23:12 +02:00
Carsten "Tomcat" Book
b838e5c2a9 Merge mozilla-central to b2g-inbound a=merge 2014-08-29 15:41:02 +02:00
Paul Adenot
36f7be71dd Bug 1060311 - Force the use of an AudioCallbackDriver when at least an AudioNodeStream is present in the graph. r=jesup
This prevent a bug where the graph would be using a SystemClockDriver even if it
was rendering Web Audio API content.

It went like this:
- An AudioContext was created.
- Some AudioNodeStream (Web Audio API MediaStreams) were created, but their
MediaStreamTrack was not added yet
- During the stream ordering, we would see that we were running an
AudioCallbackDriver (because the MSG was created using an AudioContext, and we
pass in hints regarding the type of MediaStreams that will be added in the
future, to open the audio stream as early as we can, because it can take some
time, the MSG was created directly using an AudioCallbackDriver)
- Also during the stream ordering, we see that none of our MediaStream have an
MediaStreamTrack with an audio track. This triggers a switch to a
SystemClockDriver, because the graph thinks there is no audio.
- During CreateAndDestroyAudioNode, we would not switch to an
AudioCallbackDriver on the first iteration (right after the UpdateStreamOrder
call), because we would be switching, and not during the iteration after,
because we thought we already switched (the first patch makes this more robust).

This basically forces an AudioCallbackDriver if there is an AudioNodeStream,
which prevents unnecessary GraphDriver switches (and save threads creation
destruction, audio stream create and destruction, and all other resources
associated with a GraphDriver).

--HG--
extra : rebase_source : 3c79c64a5dffee4c059d286125f0446c04a07a01
2014-08-29 15:18:03 +02:00
Paul Adenot
48eca544bb Bug 1060311 - Always use an AudioCallbackDriver when there is and AudioOutputStream. r=jesup
This makes the driver switching logic more robust against other bugs.

--HG--
extra : rebase_source : 556c2c80e1f5901b26f8bb56ea1cebfed3259412
2014-08-29 15:16:41 +02:00
JW Wang
83bd7810fd Bug 1059052 - centralize state transitions of MediaDecoderStateMachine. r=cpearce 2014-08-28 02:46:00 +02:00
John Lin
7ea3ecdbd4 Bug 968109 - Add test for recording audio node output. r=roc 2014-08-27 23:43:00 +02:00
John Lin
419a843462 Bug 968109 - Add new constructor to support recording from any web audio node. r=roc,smaug 2014-08-27 23:40:00 +02:00
Jean-Yves Avenard
af0c50e988 Bug 1058422: Don't immediately request new data r=cajbir 2014-08-29 12:15:40 +12:00
Anthony Jones
2707540462 Bug 1057911 - Fix libav/ffmpeg drain; r=jya 2014-08-29 14:29:12 +12:00
Matthew Gregan
b8e655cdde Bug 1059625 - Bustage fix. 2014-08-29 12:47:14 +12:00
Matthew Gregan
fedb2b5a07 Bug 1044498 - Pass saved init segment to decoder's NotifyDataAvailable. r=cajbir 2014-08-27 18:15:36 +12:00
Matthew Gregan
466c3d3e0b Bug 1059625 - Detach MediaSource upon decoder shutdown. r=cajbir 2014-08-28 15:44:58 +12:00
Matthew Gregan
59264a4e6d Bug 1044498 - Create new decoder if non-consecutive non-overlapped appended occurs. r=cajbir 2014-08-27 16:43:25 +12:00
Matthew Gregan
07496c798b Bug 1044498 - Improve calculation of init segment region. r=cajbir 2014-08-27 16:28:44 +12:00
Matthew Gregan
aad9564ebe Bug 1044498 - Return a null decoder when CreateSubDecoder is called in Shutdown state. r=cajbir 2014-08-27 12:45:05 +12:00
Matthew Gregan
e42250484c Bug 1044498 - Fix a bunch of WebM buffered range bugs. r=cajbir 2014-08-26 18:23:02 +12:00
Matthew Gregan
ad36ee7008 Bug 1044498 - Save init segment for reuse during overlapped appends. r=cajbir 2014-08-26 18:22:20 +12:00
Benjamin Chen
8b7644737d Bug 1033910 - Enable RTSP capability while using android::MediaCodec. r=cpearce 2014-08-28 18:36:34 +08:00
Aryeh Gregor
7512726531 Bug 1056166 part 4 - Remove nsEditProperty; r=ehsan 2014-08-29 14:43:24 +03:00
Matthew Gregan
647aa498f2 Bug 1044498 - Handle overlapped SourceBuffer appends by spinning up a new decoder. Only implemented for WebM so far. r=cajbir 2014-08-19 17:13:27 +12:00
Matthew Gregan
ddf2bf9881 Bug 1059035 - Check IsAttached() before accessing mMediaSource in SourceBuffer::Remove. r=cajbir 2014-08-27 14:24:01 +12:00
Matthew Gregan
cb6c66cb97 Bug 1058418 - Make SBR::GetNextCachedData return a sane value, add more unimplemented function logging in MSE, drop unused mPrincipal from SBR. r=cajbir 2014-08-25 18:05:48 +12:00
Fabrice Desré
172043d717 Bug 1011738 - Theme support for b2g/gaia, Part 4 : security checks r=bent,bz 2014-08-28 17:20:27 -07:00
Fabrice Desré
9cf1eb0db0 Bug 1011738 - Theme support for b2g/gaia, Part 2 : stylesheet reloading r=bz,seth 2014-08-28 17:20:27 -07:00
Botond Ballo
ce6b54b741 Bug 1057642 - Revert [Int]::PointTyped::[x|y] to be of primitive type. r=kats
--HG--
extra : rebase_source : 55e56423f6c8f5278315a6dc9dfcb9fb983c9309
2014-08-28 12:45:48 -04:00
Timothy Nikkel
55c9b4ab9c Bug 1051530. Update the nsImageLoadingContent state when we get a decode complete notification so that decode errors are recorded in our image state. r=bzbarsky
In nsImageLoadingContent whether a decode error put our image state into error depends on when the decode starts in relation to the network load event for the image. In nsImageLoadingContent::OnStopRequest if a decode has been started then we wait until the decode is complete to fire the load/error event. When we fire this event we also update the image state. However if a decode has not started by the time OnStopRequest runs, but a decode does happen later then when it completes nsImageLoadingContent::Notify does nothing, and our image state stays as non-error.
2014-08-28 13:43:21 -05:00
Paul Adenot
7d14b2516c Bug 1059132 - Bustage fix: fix printf format. 2014-08-28 19:34:35 +02:00
Paul Adenot
305b725752 Bug 1059601 - Make sure we don't try to play audio with a system driver. r=jesup
--HG--
extra : rebase_source : 7142e0d9baf38491637d40d66375d92a0aaa9e9e
2014-08-27 19:13:15 +02:00
Paul Adenot
b11b217ab3 Bug 1059132 - Log a message and continue when we found our clock went backward while using a system clock. r=jesup
--HG--
extra : rebase_source : d808c5f8f32dfa1746c9f0b19828dba9b8ecdc30
2014-08-27 11:48:27 +02:00
Paul Adenot
b1c465ca10 Bug 909925 - Disable crashtest test 691096-1.html on windows. r=jesup
--HG--
extra : rebase_source : fed9ee61b50c411125714d5b68075d20b5adb699
2014-08-28 19:07:03 +02:00
Martijn Wargers
ee3dee3fa0 Bug 1058451 - Intermittent test_CSP_bug885433.html | Inline script should be allowed - Result logged after SimpleTest.finish(). r=sstamm 2014-08-26 17:59:42 +02:00
Olli Pettay
dc7e48aa78 Bug 1059705 - revert the change which made nsIEditor builtinclass, r=masayuki 2014-08-28 17:33:35 +03:00
Tapas Das
fcb9091d95 Bug 1048171 - Add variable to prevent the Audio Channel Toggle during Fast/Continous seek. r=baku 2014-08-28 04:07:00 -04:00
Gabor Krizsanits
9cb25d668e Bug 1056841 - Always nulling mContainingShadow in Element::UnbindFromTree. r=wchen 2014-08-28 13:53:21 +02:00
Jean-Yves Avenard
633e79da27 Bug 1059569 - Check that GetTaskQueue() doesn't return NULL. r=cpearce 2014-08-28 11:56:32 +12:00
Chris Pearce
35125dcceb Bug 861090 - Create media.play-stand-alone pref to prevent loading videos as video documents. r=kinetik 2014-08-28 15:33:14 +12:00
Chris Pearce
27cf80e942 Bug 1059523 - Make codecs/mimetypes supported by MP4Decoder/Reader less inaccurate. r=kinetik 2014-08-28 15:32:34 +12:00
Nicholas Nethercote
d6d35eac77 Bug 1059056 - Instantiate nsDOMAttributeMap::mAttributeCache lazily. r=bz.
--HG--
extra : rebase_source : 081273d98319c24e770a45ca4c146adfc21c2287
2014-08-26 22:46:24 -07:00
Trevor Saunders
035a599688 bug 1049758 - fixup copy and move ctors for children iterators r=wchen 2014-08-06 14:21:28 -04:00
Ralph Giles
09315708bc Bug 1043710 - Reorder frames by comparing pts to dts. r=ajones
Pull frames out of the reorder queue in presentation
timestamp order when those timestamps are prior to
the latest decode timestamp.

The idea here is that when we see a frame with a decode
timestamp after the presentation timestamp of a frame
in the reorder buffer, that buffered frame can't be a
dependency of any more frames, and so decode timestamp
sample ordering ensures we've buffered all the frames
which need reordering up to that point.
2014-08-27 15:17:00 -07:00
Ralph Giles
2f9e812c9b Bug 1043710 - Pass dts to VideoToolbox decoder. r=ajones 2014-08-27 14:08:00 -07:00
Anthony Jones
3b67e0d61c Bug 1043710 - Expose decode timestamp. r=edwin 2014-08-27 14:08:00 -07:00
Andrea Marchesini
6bc1797ff9 Bug 1059215 - Get rid of nsIDOMFile::GetInternalUrl, r=bz 2014-08-27 17:16:31 +01:00
Randell Jesup
2fcda237b8 Bug 1057955: Stop the backend capture when the MSG track is stopped r=jib 2014-08-27 01:03:50 -04:00
Randell Jesup
decf9b7b4e Bug 1057955: Support MediaStreamTrack.stop() r=roc,smaug 2014-08-27 01:03:49 -04:00
Robert O'Callahan
5308dc1250 Bug 1057955: Adjust TrackUnion TrackID mapping to be 1:1 whenever possible with source tracks r=jesup,padenot 2014-08-27 01:03:49 -04:00
Jacek Caban
57c0ae2d2e Bug 1042426 - Added --disable-sandbox option that disables building sandbox code. r=glandium 2014-08-27 16:32:55 +02:00
Blake Wu
6d90f40449 Bug 1057172 - Add one more length check for valid decoded frame. r=sotaro 2014-08-26 10:57:19 +08:00
JW Wang
e701bd5278 Bug 1057978 - do nothing in MediaDecoderStateMachine::Seek() while shutting down. r=cpearce 2014-08-25 00:58:00 +02:00
Chris Pearce
1ae30a468a Bug 1057171 - Implement MediaKeySession.getUsableKeyIds. r=bz 2014-08-27 20:46:56 +12:00
Chris Pearce
069722c355 Bug 1057170 - Update MediaKey* Uint8Arrays to be ArrayBuffer. r=bz 2014-08-27 20:46:56 +12:00
Chris Pearce
3659319904 Bug 1057173 - Rename MediaKeyNeededEvent to MediaEncryptedEvent. r=bz
--HG--
rename : content/media/eme/MediaKeyNeededEvent.cpp => content/media/eme/MediaEncryptedEvent.cpp
rename : content/media/eme/MediaKeyNeededEvent.h => content/media/eme/MediaEncryptedEvent.h
rename : dom/webidl/MediaKeyNeededEvent.webidl => dom/webidl/MediaEncryptedEvent.webidl
2014-08-27 20:46:56 +12:00
Ahmed Kachkach
3e86d6f941 Bug 1057558 - Fix IPC test results not being reported in first iframe. r=drno 2014-08-26 15:53:00 +02:00
Alexandre Poirot
8f1bd100b6 Bug 848954 - Disable webaudio tests on mulet on CLOSED TREE. r=jesup a=tomcat
--HG--
extra : amend_source : 448213f90bc8e4929aa1e98b2606d2c906cfba5e
2014-08-27 00:22:00 +02:00
Carsten "Tomcat" Book
6a55c0aec3 Backed out changeset a7e4ef74441d (bug 1057955) for Crashtest failures (crashes/assertions) on a CLOSED TREE 2014-08-27 08:40:50 +02:00
Carsten "Tomcat" Book
75c2551865 Backed out changeset ef1c321a4a32 (bug 1057955) 2014-08-27 08:40:11 +02:00
Carsten "Tomcat" Book
35276ee64f Backed out changeset 0edf5afdc13c (bug 1057955) 2014-08-27 08:40:09 +02:00
Randell Jesup
2c65768ded Bug 1057955: Stop the backend capture when the MSG track is stopped r=jib 2014-08-27 01:03:50 -04:00
Randell Jesup
3cf28a0949 Bug 1057955: Support MediaStreamTrack.stop() r=roc,smaug 2014-08-27 01:03:49 -04:00
Robert O'Callahan
cab8e88478 Bug 1057955: Adjust TrackUnion TrackID mapping to be 1:1 whenever possible with source tracks r=jesup 2014-08-27 01:03:49 -04:00
Randell Jesup
5d75646bd9 Bug 848954 - Part 32 - Disable MSG sleep. r=padenot
This has a race somewhere, so we disable it for now.

The real fix will come from the Web Audio API Suspend API [0]

[0]: https://github.com/WebAudio/web-audio-api/issues/317
2014-08-26 17:12:41 +02:00
Randell Jesup
ba39d0e7ab Bug 848954 - Part 31 - Temporarily disable a web audio api test. r=padenot
This will be reenabled in bug 1058586
2014-08-26 17:04:39 +02:00
Randell Jesup
7dc8dd9b1e Bug 848954 - Part 29 - Make the MSG in stable state event ref counted. r=padenot 2014-08-26 17:04:39 +02:00
Randell Jesup
709c9d60a7 Bug 848954 - Part 29 - Make sure to clear the right boolean flag when dispatching a stable state event. r=padenot 2014-08-25 14:13:14 +02:00
Paul Adenot
4d9c2e35fb Bug 848954 - Part 28 - Properly stop the driver when shutting down the graph. r=jesup
(this was originaly present, probably caused by a bad rebase)
2014-08-26 17:04:38 +02:00
Paul Adenot
1e9aca6c1d Bug 848954 - Part 28 - Allow to set a driver twice per iteration iff the second driver is an audio driver. r=jesup
This should not happen, but does. Somehow, we detect that there is no track with
audio in the graph, during the graph updates (after having ran the messages),
and then, during CreateOrDestroyAudioStream, there is a track with audio.
2014-08-26 17:04:38 +02:00
Paul Adenot
e8039f0369 Bug 848954 - Part 27 - Only attempt to sleep if the graph is still running. r=jesup 2014-08-26 17:04:36 +02:00
Paul Adenot
031bd0f622 Bug 848954 - Part 26 - Prevent a race when the MSG is going to sleep mode. r=roc 2014-08-26 17:02:31 +02:00
Paul Adenot
621ed597e2 Bug 848954 - Part 25 - Add documentation on some driver's members. r=roc 2014-08-26 17:02:31 +02:00
Paul Adenot
e686bd4763 Bug 848954 - Part 24 - Clean up the clock getter, because the right thing is now done by the GraphDriver. r=roc 2014-08-26 17:02:31 +02:00
Paul Adenot
5f32ebf427 Bug 848954 - Part 23 - Refcount the AudioOutputObserver. r=jesup 2014-08-26 17:02:31 +02:00
Paul Adenot
0b444838eb Bug 848954 - Part 22 - Port the osx panning code to live in the AudioCallbackDriver. r=jesup 2014-08-26 17:02:31 +02:00
Paul Adenot
6628654530 Bug 848954 - Part 21 - Fix sleep/wake up code for the MSG. r=roc 2014-08-26 17:02:30 +02:00
Paul Adenot
7846782ef2 Bug 848954 - Part 20 - Remove the now useless DriverHolder class. r=roc 2014-08-26 17:02:28 +02:00
Paul Adenot
f871e58c1b Bug 848954 - Part 19 - Delete the mixer callbacks on removal. r=roc 2014-08-26 17:02:09 +02:00
Paul Adenot
6da931e7d6 Bug 848954 - Part 18 - Start the thread after having processed the messages to make sure there are messages in the queue when processing starts. r=roc 2014-08-26 17:02:09 +02:00
Paul Adenot
c66ac1d38b Bug 848954 - Part 16 - Make AudioCallbackDriver respect the AudioChannelType. r=roc 2014-08-26 17:02:08 +02:00
Paul Adenot
3bfd993eac Bug 848954 - Part 15 - Allow an AudioCallbackDriver to sleep to save power. r=roc 2014-08-26 17:02:08 +02:00
Paul Adenot
ee5c66a26b Bug 848954 - Part 14 - Run all blocking cubeb operations off-main-thread. r=roc 2014-08-26 17:02:07 +02:00
Paul Adenot
12a686451d Bug 848954 - Part 13 - Add an RAII class to ensure another thread is not in the audio callback when shutting down. r=roc 2014-08-26 17:01:35 +02:00
Paul Adenot
5b06f66f01 Bug 848954 - Part 11 - When deciding to block a MediaStream due to a speculative data underrun, don't block if we have exactly the right number of frames buffered. r=roc 2014-08-26 17:01:35 +02:00