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
Paul Adenot
6c0f9e38fb
Bug 848954 - Part 10 - Add a MediaStreamGraph driver based on an audio callback. r=roc
2014-08-26 17:01:33 +02:00
Paul Adenot
b76a30bb3f
Bug 848954 - Part 9 - Allow to pass in hints when getting a reference to a MediaStreamGraph to get the right driver started as soon as possible. r=roc
...
This is useful because some platform have rather slow audio stream
initialization time, especially the first time an audio stream is created for
the process.
We put in telemetry probes to measure that:
First stream opened for the process:
http://telemetry.mozilla.org/#filter=nightly%2F33%2FAUDIOSTREAM_FIRST_OPEN_MS&aggregates=multiselect-all!Submissions!Mean!5th%20percentile!25th%20percentile!median!75th%20percentile!95th%20percentile&evoOver=Builds&locked=true&sanitize=true&renderhistogram=Graph
Subsequent streams:
http://telemetry.mozilla.org/#filter=nightly%2F33%2FAUDIOSTREAM_LATER_OPEN_MS&aggregates=multiselect-all!Submissions!Mean!5th%20percentile!25th%20percentile!median!75th%20percentile!95th%20percentile&evoOver=Builds&locked=true&sanitize=true&renderhistogram=Graph
2014-08-25 15:27:25 +02:00
Paul Adenot
159e08eece
Bug 848954 - Part 8 - Implement classes to ensure safe audio buffer manipulation. r=roc
2014-08-25 15:26:34 +02:00
Paul Adenot
679fac5442
Bug 848954 - Part 7 - Get rid of the stack allocated message queue. r=roc
...
In the next patches, when the AudioDriver will be implemented, the audio backend
thread (that we don't control), will return from the stack frame where the
nsTArray that allows the MSG thread to exchange message queues in a efficient
manner with the main thread. We put it in the MediaStreamGraph to avoid adding
an allocation/deallocation per iteration on the MSG thread.
In addition, the graph will be able to run on different threads during its
lifetime, so we can't guarantee a stable stack frame to allocate things on
anymore.
The array are renamed with meaningful names, explaining the double-buffering
pattern: the back queue is filled by the main thread, and is swapped with the
front queue that is processed by the MSG thread.
Arrays accesses are synchronized using the driver's monitor.
2014-08-25 15:26:21 +02:00
Paul Adenot
3494e982d0
Bug 848954 - Part 6 - Put cubeb-related static functions in their own file. r=kinetik
2014-08-25 15:26:09 +02:00
Paul Adenot
5283170bbe
Bug 848954 - Part 5 - Mix down all audio and only output a single stream. r=roc
2014-08-25 15:25:49 +02:00
Paul Adenot
8f4a6f19f7
Bug 848954 - Part 4 - Factor behavior for drivers that manage their thread. r=roc
2014-04-25 18:04:53 +02:00
Paul Adenot
af9bfbca22
Bug 848954 - Part 3 - Separate interval time calculation and actual processing, and give an audio-callback compatible interface to the Process function. r=roc
2014-04-25 18:04:23 +02:00
Paul Adenot
f04cfc8457
Bug 848954 - Part 2 - Put the thread management in the driver. r=roc
2014-04-25 18:03:04 +02:00
Paul Adenot
53b7efb271
Bug 848954 - Part 1 - Factor out clocks and scheduling of MSG iterations. r=roc
2014-04-25 16:09:30 +02:00
Paul Adenot
3a76d049e6
Bug 989921 - Allow the MediaStreamGraph mixer to send data back to multiple consumers. r=jesup
2014-08-25 14:13:08 +02:00
Jean-Yves Avenard
fa51317cc8
Bug 1058428 - Ensure all in-use decoders contain the target range - r=cajbir
2014-08-27 14:08:33 +12:00
Matthew Gregan
18b96d4a9f
Bug 1055967 - Log "discarding video frame" message only when we discard frames. r=cpearce
2014-08-27 13:51:40 +12:00
Chris Double
4d44e30e6b
Bug 1058549 - Implement SourceBufferDecoder::GetEndMediaTime - r=kinetik
2014-08-27 11:45:48 +12:00
Ralph Giles
507f086661
Bug 1058400 - Fix AppleCMLinker assertion. r=cpearce
...
We call Unlink() from the failure cleanup code in Link() when
the dlopen call fails, so it's incorrect to assert that sLink
is non-null. We've already incremented the refcount, so that
check is fine.
2014-08-26 13:26:00 -07:00
Ralph Giles
0906ff6d40
Bug 1058399 - Fix VideoData leak on osx fmp4 seek. r=cpearce
...
Calling Clear() on the reorder queue doesn't call delete on
the stored pointer elements. Do this explicitly to avoid leaking
decoded frames when ::Flush() is called.
2014-08-26 14:22:00 -07:00
JW Wang
e13b04d3b6
Bug 1054831 - Improve state transition about decoding metadata by removing |mDispatchedDecodeMetadataTask|. r=cpearce
...
--HG--
extra : rebase_source : 23e040a5d35954e10f65029f5550e4440aeb4117
2014-08-20 23:37:00 -04:00
Benjamin Chen
927916753d
Bug 1050664 - 1. Fix IsDormantNeeded() function. 2. Invoke mSource->stop at the suspend code path that will rewind the sampletable implicitly. r=cpearce
2014-08-26 16:17:08 +08:00
Chris Double
73c9e418e0
Bug 1041374 - Fix deadlock in MSE reading vs data adding - r=kinetik
2014-08-26 19:26:03 +12:00
Chris Double
00108692aa
Bug 1058364 - MediaSource streams don't correctly handle the end of sub decoders - r=kinetik
2014-08-26 19:25:09 +12:00
Anthony Jones
a68916671d
Bug 1057203 - Parse timestamps for MP4 fragments; r=kinetik
2014-08-26 16:53:50 +12:00