Josh Matthews
e9baa064b2
Bug 865257 - Implement MediaStreamAudioDestinationNode. r=ehsan,roc
2013-05-21 15:17:47 -04:00
Robert O'Callahan
7f0e8faa0b
Backing out bug 882027
2013-06-16 01:28:34 +12:00
Robert O'Callahan
4ec5ce6398
Bug 880601. Emulate a form of keyframe skipping by allowing MediaOmxReader::DecodeVideoFrame to decode more than one video frame if video decoding is falling behind. r=cpearce
...
If we don't support this in any way, then we get into trouble when there is
plenty of compressed data buffered but for some reason video decoding falls
behind (maybe there was a short period where the video data wasn't available).
Audio playback continues normally, but MediaOmxReader keeps making one call
to ReadAudio and one to ReadVideo, and if each call to ReadAudio decodes at
least as much as the calls to ReadVideo, video decoding can never catch up
to the current audio playback position. So video never plays. And when the
video decoding point gets far enough away from the audio decoding point,
horrible things start to happen, such as video and audio reading completely
different parts of the media cache and interfering with the caching mechanism
(which assumes audio and video reads are close together).
This patch approximates keyframe skipping, and is basically just a way for
MediaOmxReader::DecodeVideoFrame to decode more than one frame at a time
if we need video decoding to catch up.
To prevent pathological situations, we cap both the maximum number of frames
decoded per DecodeVideoFrame and the amount of time we spend in the method
(excluding the time for the last frame).
--HG--
extra : rebase_source : cba95c537fe97df5b696581be8233b6e9cffb70b
2013-06-15 23:51:56 +12:00
Robert O'Callahan
dbd1bda3cd
Bug 882027. Route all calls to GetNextFrameStatus for determining the readyState through MediaDecoder::UpdateReadyStateForData on the main thread. r=cpearce
...
--HG--
extra : rebase_source : 9ea3260f294c633c24e15690fa4bb067af378088
2013-06-15 23:50:44 +12:00
Martijn Wargers
e3e6352d56
Bug 883094 - Fix some test files that don't unset their prefs correctly. r=jgriffin
2013-06-15 00:33:47 +02:00
Martijn Wargers
e36a806dd2
Bug 868439 - Convert some uses of nsIPrefBranch to SpecialPowers. r=jmaher
2013-06-15 00:13:44 +02:00
Caitlin Potter
91c08eabb1
Bug 882535 - Set HTMLTrackElement Readiness State during WebVTT Parsing. r=rillian
...
This patch enables "LOADING", "LOADED" and "ERROR" readiness states to be
applied to the Parent HTMLTrackElement, in order to avoid test flakiness,
and to comply with the HTML5 draft
http://www.w3.org/html/wg/drafts/html/master/embedded-content-0.html#text-track-readiness-state .
2013-06-12 22:26:14 -04:00
Shelly Lin
f3b88db9f4
Bug 882956 - Fix WebAudio stack-buffer-overflow crash. r=ehsan.
2013-06-14 15:16:41 +08:00
Chris Pearce
c7e314fca4
Bug 881954 - Set the thread limit to the idle limit for WMFByteStream's thread pool. This stops the pool from constantly creating and destroying threads when under load, freeing up virtual address space and reducing our thread count. r=padenot
2013-06-14 09:07:59 +12:00
Chris Pearce
83ae9a38b2
Bug 881954 - Only initialize DXVA when we're decoding video. r=padenot
2013-06-14 09:07:28 +12:00
Chris Pearce
89276c11b2
Bug 881954 - Generalize test_too_many_elements to run on more than just Ogg audio. r=padenot
2013-06-14 09:07:07 +12:00
Ehsan Akhgari
d6628d6d1a
Bug 579517 follow-up: Remove NSPR types that crept in
2013-06-12 21:26:59 -04:00
Ehsan Akhgari
96ea05fa5f
Bug 881558 - Re-introduce try-locking in the reverb implementation; r=roc
2013-06-12 20:57:17 -04:00
Chris Pearce
66d1fa1f4a
Bug 880062 - Make WMF video backend call MediaDecoder::SetMediaSeekable(false) when it can't seek like it's supposed to. r=padenot
2013-06-13 10:15:23 +12:00
Caitlin Potter
eeb2928e9b
Bug 881978 - Make WebVTTLoadListener callbacks private. r=rillian
...
WebVTTLoadListener::OnParsedCue() and WebVTTLoadListener::OnReportError() are
for private use and should not be exposed publicly.
2013-06-11 21:12:39 -04:00
Ehsan Akhgari
4e4cb968f6
Bug 881775 - Set the correct channel count in DownmixAndInterleave, and avoid unnecessary downmixing; r=roc
2013-06-11 17:50:21 -04:00
Caitlin Potter
f5b7023a3b
Bug 881475 - Drop cues with malformed timestamps. r=rillian
...
The parsing specification requires the UA to drop
cues containing malformed cue-times.
(http://dev.w3.org/html5/webvtt/#dfn-collect-a-webvtt-timestamp )
The OnReportError callback has been modified to notify the parser
that we need need to drop such cues which are deemed 'malformed'
according to the timestamp parsing rules.
2013-06-10 21:10:30 -04:00
Ryan VanderMeulen
774115510a
Merge m-c to inbound.
2013-06-11 21:03:14 -04:00
Ralph Giles
e55831544d
Bug 879924 - Don't shorten zero-length strings. r=derf
...
We were trying to strip the optional null terminator
even when we knew there wasn't one there.
2013-06-10 17:10:09 -07:00
Shelly Lin
2eeb681648
Bug 842243 - Part 5: Add MediaEncoder.h/.cpp; The main part of this media encoding framework. r=roc
2013-06-05 14:29:12 +08:00
Shelly Lin
b0ad578f08
Bug 842243 - Part 4: Add OpusEncoder.h/.cpp; Implementation of Opus encoder. r=roc, r=tterribe
2013-05-17 19:18:08 +08:00
Shelly Lin
05dcf724ca
Bug 842243 - Part 3: Add TrackEncoder.h/.cpp; Base class for audio/video track encoder. r=roc
2013-05-17 19:16:36 +08:00
Shelly Lin
370c645a9f
Bug 842243 - Part 2: Add OggWriter.h/.cpp; Implementation of Ogg container. r=roc, r=tterribe
2013-05-17 19:13:01 +08:00
Shelly Lin
4d942eeee0
Bug 842243 - Part 1: Add ContainerWriter.h; Base class of media container writer. r=roc
2013-05-17 18:50:58 +08:00
Shelly Lin
effe13c520
Bug 842243 - Part 0: Modify MediaSegment and AudioSegment for use by MediaEncoder. r=roc
2013-06-03 17:59:50 +08:00
Edwin Flores
faab496014
Bug 876305 - Pass the media mimetype on to the gstreamer backend r=alessandro.d
2013-06-11 14:13:10 +12:00
Edwin Flores
d80f358b17
Bug 876305 - Cap the max number of audio buffers gstreamer can use r=alessandro.d
2013-06-11 14:13:10 +12:00
Edwin Flores
d5dcc82182
Bug 874305 - Support older versions of gstreamer r=alessandro.d
2013-06-11 14:13:09 +12:00
Edwin Flores
f0c607f18b
Bug 879995 - Fix assertion failure in gstreamer backend with fragmented mp4 videos r=alessandro.d
2013-06-11 14:13:09 +12:00
Edwin Flores
f0948b7184
Bug 859199 - Load GStreamer libraries at runtime r=doublec
2013-06-11 14:13:09 +12:00
Edwin Flores
56de35440d
Bug 878363 - Silence pragma warnings from gstreamer libraries r=ted
2013-06-11 14:13:09 +12:00
Chris Pearce
b1ded03eee
Bug 880006 - Make WMF video backend call MediaDecoder::NotifyBytesConsumed() like it's supposed to. r=padenot
2013-06-11 12:53:26 +12:00
Ehsan Akhgari
579a771ace
Bug 815643 - Part 9: Port Blink's LayoutTest for ConvolverNode to mochitest-plain; r=roc
...
--HG--
extra : rebase_source : b829991957f0349a6c2541fcc99d4214e701a2ae
2013-06-10 16:10:07 -04:00
Ehsan Akhgari
e2c81dbce5
Bug 815643 - Part 8: Import convolution tests from Blink; r=roc
...
Imported from Blink SVN revision 150518
--HG--
extra : rebase_source : c50aeed5d0fceaa9112cd9e791ec7acd9904fd84
2013-06-10 16:09:53 -04:00
Ehsan Akhgari
8a97dc2304
Bug 815643 - Part 7: Add a basic API test for ConvolverNode; r=roc
...
--HG--
extra : rebase_source : be90de45e240fec45875a65235104d2d92716a14
2013-06-10 16:09:38 -04:00
Ehsan Akhgari
2e533bea4f
Bug 815643 - Part 6: Optimize FFTBlock to avoid recreating kiss_fftr_cfg objects all the time; r=roc
...
Setting up the FFT tables turns out to be quite expensive because of the
large number of calls to sin() and cos().
In the future we may want to look into having a global cache of FFT
tables per size, in order to pay the cost of setting each one of them up
only once.
--HG--
extra : rebase_source : 871d11e7f74db9e3e6c704da9518d40cba3deb8a
2013-06-10 16:09:25 -04:00
Ehsan Akhgari
3af23c62eb
Bug 815643 - Part 5: Implement ConvolverNode's processing based on the Blink implementation; r=roc
...
--HG--
extra : rebase_source : 4c1a8dbaa4ab2d4fcc67c0a5226a6937e0656404
2013-06-10 16:09:12 -04:00
Ehsan Akhgari
2ef673d28b
Bug 815643 - Part 4: Add the Convolution processing implementation to the build system; r=roc
...
--HG--
extra : rebase_source : 2a5aa609334c67bb9b09090d9f681c5c3a940c5c
2013-06-10 16:09:01 -04:00
Ehsan Akhgari
0bdb88b1cd
Bug 815643 - Part 3: Import the Convolution processing implementation from Blink; r=roc
...
The original code was copied from Blink SVN revision 150518.
--HG--
extra : rebase_source : 1fbc3cc7f7325bdd8806d7ef30a5c882b505debf
2013-06-10 16:08:38 -04:00
Ehsan Akhgari
82519eedaf
Bug 815643 - Part 2: Refactor our Web Audio FFT code into the FFTBlock class; r=roc
...
This is useful in order for us to be able to borrow code from Blink with
fewer changes, and also to explore faster platform dependent FFT
implementations in the future if needed.
--HG--
extra : rebase_source : 34bbded736e1b385754756513c59ee27ce7552a5
2013-06-10 16:08:21 -04:00
Ehsan Akhgari
bcac308338
Bug 815643 - Part 1: Implement the DOM bindings for ConvolverNode; r=roc
...
--HG--
extra : rebase_source : 9f6853dcaeeac1f36aa8c2ee90991a7f0ea0b145
2013-06-10 16:07:55 -04:00
Rick Eyre
3800bbb044
Bug 833382 - Implement WebVTTLoadListener r=cpearce,bz
...
- Implemented WebVTTLoadListener to manage the webvtt parser.
- TextTrackCue now handles the conversion of webvtt nodes to
anonymous content which will be displayed on the video div
overlay.
- HTMLTrackElement manages the lifetime of the WebVTTLoadListener.
2013-06-10 08:30:00 -07:00
Paul Adenot
2083c10f3c
Bug 865244 - Test for AudioContext.destination.maxChannelCount. r=ehsan
2013-06-10 19:32:28 +02:00
Paul Adenot
3aa35d131a
Bug 865244 - Implement AudioContext.destination.maxChannelCount. r=ehsan
2013-06-10 19:32:28 +02:00
Paul Adenot
9a67a917d3
Bug 865244 - Expose the maximum channel count in the AudioStream. r=kinetik
2013-06-10 19:32:28 +02:00
Mike Habicher
076c424da2
Bug 879478 - fix regressions when starting camera (crash and de-virtualized functions -- see also bug 880780), r=roc
2013-06-10 15:01:19 -04:00
Sotaro Ikeda
2d8e4dae08
Bug 871485 - Share hw codec between applications/tasks. r=mwu, r=doublec, r=roc
2013-06-10 08:22:05 -04:00
Ivaylo Dimitrov
b0a54a77e9
Bug 880029 - gstreamer - high CPU usage after patch for Bug 856562 landed. r=alessandro.d
2013-06-08 20:53:10 +01:00
Sankha Narayan Guria
5304247273
Bug 880265 - Remove AudioBufferSourceNode.gain; r=ehsan
2013-06-08 00:55:04 +05:30
Paul Adenot
caac06e896
Bug 878875 - Port Blink's LayoutTest for PannerNode to mochitest-plain. r=ehsan
2013-06-07 20:06:40 +02:00