Commit Graph

1733 Commits

Author SHA1 Message Date
Ehsan Akhgari
cafa3e6710 Backed out changeset 6a23d4536079 (bug 851338) because of Android test failures 2013-03-15 01:26:22 -04:00
Ehsan Akhgari
73323cede0 Bug 851338 - Implement AudioContext.currentTime; r=roc
Landed on a CLOSED TREE, because I'm mad at X11!
2013-03-14 21:01:02 -04:00
Ehsan Akhgari
e772eb035b Backed out changeset a96fb85d42bf (bug 851338) because of Linux build failures
Landed on a CLOSED TREE
2013-03-14 23:53:27 -04:00
Ehsan Akhgari
89619fddff Bug 851338 - Implement AudioContext.currentTime; r=roc
--HG--
extra : rebase_source : 064da119e26ca15e361c003a4fabe7d3fe77e256
2013-03-14 21:01:02 -04:00
Ehsan Akhgari
0165be1d18 Bug 850970 - Set the initial value of gain nodes on the audio stream to make sure that they don't mute playback; r=roc
--HG--
extra : rebase_source : caf58ca903665f8b3014451926cec9772969663f
2013-03-13 23:44:49 -04:00
Chris Double
fcfd2097a5 Bug 848639 - Prevent DecodeHeader for Ogg Skeleton tracks from failing on valid indexes - r=cpearce
--HG--
extra : rebase_source : cb913d45d6b9ab396b563391f3ccd096500dcef1
2013-03-14 13:57:18 +13:00
Ehsan Akhgari
aeb36af79e Bug 849713 - Part 5: Implement the looping logic in AudioBufferSourceNodeEngine; r=roc
The logic in this function is based around a while loop.  In every
iteration of the loop, we determine whether we need to output silence
(if we're at a position before the playback has started or after it has
stopped) or if we need to produce sound.  In each case, we call a helper
function which eagerly tries to produce as much silence or sound as
possible, while maintaining the constraints that are explained in the
comments in the code.
2013-03-10 21:02:22 -04:00
Ehsan Akhgari
f873b5a8da Bug 849713 - Part 4: Refactor the logic for borrowing the output buffer from the input buffer; r=roc 2013-03-10 18:38:57 -04:00
Ehsan Akhgari
231f1bbd52 Bug 849713 - Part 3: Set the loop parameters on AudioBufferSourceNodeEngine if looping is turned on when start() gets called; r=roc 2013-03-10 14:11:12 -04:00
Ehsan Akhgari
adc766a5b6 Bug 849713 - Part 2: Accept the loop parameters on AudioBufferSourceNodeEngine; r=roc 2013-03-10 13:59:41 -04:00
Ehsan Akhgari
dae847512c Bug 849713 - Part 1: Add DOM bindings for AudioBufferSourceNode loop attributes; r=roc 2013-03-10 12:56:14 -04:00
Alessandro Decina
3733aa0609 Bug 761018 - GStreamer video buffer handling optimization; r=cdouble 2013-03-13 16:11:15 -04:00
Alessandro Decina
38243ae220 Bug 760140 - rework canPlayType in the GStreamer backend; r=cdouble 2013-03-13 16:10:47 -04:00
Alessandro Decina
1521cb1192 Bug 833628 - GStreamer backend has shutdown hang in content/media mochitests; r=cdouble
Fix stream length detection so that we don't report size=-1 to gst. Fixes issues
with qtdemux not liking unknown upstream byte size.
2013-03-13 16:09:20 -04:00
Jeff Walden
f915a6ceec Bug 847480 - Convert DeprecatedAbs overloads taking floating point (except for nscoord uses, when nscoord is optionally a floating point type) to Abs. r=Ms2ger 2013-03-05 15:43:44 -08:00
Jeff Walden
5ec763f216 Bug 847480 - Blindly convert all existing mozilla::Abs users to mozilla::DeprecatedAbs. Individualized conversions to the reformed mozilla::Abs will continue until mozilla::DeprecatedAbs is unused, at which point it will be removed. r=Ms2ger 2013-03-05 15:43:30 -08:00
Randell Jesup
1c55925879 Bug 848401: switch from ReentrantMonitors and PR_Lock/Condvar to Monitor. Fix {picture:true} for desktop r=khuey,dao 2013-03-13 11:42:18 -04:00
Ehsan Akhgari
520bdf7a67 Bug 849916 - Part 4: Don't rely on things still being around when we run PannerNode's dtor, use a weak pointer instead; r=roc
--HG--
extra : rebase_source : 8432bea9035761fcb52e77dfc474de8878fc4372
2013-03-12 19:28:30 -04:00
Ehsan Akhgari
594c29e504 Bug 849916 - Part 3: Create an engine for PannerNodes and make sure that we deliver the panner and listener parameters to it; r=padenot 2013-03-12 14:34:55 -04:00
Ehsan Akhgari
91056e3470 Bug 849916 - Part 2: Add helper functions for sending different argument types to the AudioNodeStream; r=padenot 2013-03-12 11:28:14 -04:00
Ehsan Akhgari
2e3c9ba835 Bug 849916 - Part 1: Make it possible to send ThreeDPoint objects as commands to the MSG thread; r=padenot 2013-03-12 11:16:42 -04:00
Ryan VanderMeulen
b3839debd3 Backed out changesets 4ee69256f8f2, 2becc603eeb8, and afad1c17015e (bug 849916) for bustage on a CLOSED TREE. 2013-03-12 16:16:30 -04:00
Ehsan Akhgari
2b9309e6bc Bug 849916 - Part 3: Create an engine for PannerNodes and make sure that we deliver the panner and listener parameters to it; r=padenot 2013-03-12 14:34:55 -04:00
Ehsan Akhgari
c1c561347f Bug 849916 - Part 2: Add helper functions for sending different argument types to the AudioNodeStream; r=padenot 2013-03-12 11:28:14 -04:00
Ehsan Akhgari
5435366892 Bug 849916 - Part 1: Make it possible to send ThreeDPoint objects as commands to the MSG thread; r=padenot 2013-03-12 11:16:42 -04:00
Marco Chen
a598ed8dc0 Bug 839415 - [Audio] Add support of SLAndroidConfigurationItf into backend of Cubeb + OpenSLES. r=kinetik 2013-03-12 11:46:32 +08:00
Ehsan Akhgari
a9da376ed1 Bug 849914 - Implement the latest spec changes to PannerNode and AudioListener; r=roc 2013-03-11 19:09:27 -04:00
Masatoshi Kimura
23ba391ec1 Bug 848339 - Remove the vestigial boolean outparam from nsWrapperCache::WrapObject. r=bz 2013-03-12 08:03:47 +09:00
Chris Pearce
d0f008381d Bug 850021 - Change WMFSourceReaderCallback to use its own log so that we don't spam MediaDecoder NSPR log with uninteresting messages. r=padenot 2013-03-12 12:01:10 +13:00
Ehsan Akhgari
8a4a795160 Backed out 4 changesets (bug 849713) since builds fail because of warnings as errors
Backed out changeset e811d4258d45 (bug 849713)
Backed out changeset 26aa58e87d5d (bug 849713)
Backed out changeset 9a6552161eff (bug 849713)
Backed out changeset 3551877d9b92 (bug 849713)

Landing on a CLOSED TREE
2013-03-11 16:14:42 -04:00
Ehsan Akhgari
8034e98ffd Backed out changeset 151b845b0fa9 (bug 849713 part 5) because it has not been reviewed yet! 2013-03-11 15:31:14 -04:00
Ehsan Akhgari
767a273945 Bug 849713 - Part 5: Implement the looping logic in AudioBufferSourceNodeEngine; r=roc
The logic in this function is mostly around the mLoop variable.  mLoop being
NotLooping means that the playback of this node is never going to loop, in
which case the logic doesn't change compared to the ProduceAudioBlock function
before this patch.

If the loop mode is turned on when start() is called, mLoop will initially be
WillLoop.  In that case, we play back until mLoopEnd, and then we will wrap
around to mLoopStart, set mLoop to be IsLooping, and start playback again.
From that point on, mLoop will always be IsLooping, and we will loop between
mLoopStart and mLoopEnd.  Where possible, we'll just use BorrowFromInputBuffer
to avoid copying the buffer, and if we hit the edges right around the time that
we loop, we copy some frames from the end of the input buffer and some from the
beginning in the memcpy loops at the end of the ProduceAudioBlock function.
2013-03-10 21:02:22 -04:00
Ehsan Akhgari
23fe293fd5 Bug 849713 - Part 4: Refactor the logic for borrowing the output buffer from the input buffer; r=roc 2013-03-10 18:38:57 -04:00
Ehsan Akhgari
72481e9809 Bug 849713 - Part 3: Set the loop parameters on AudioBufferSourceNodeEngine if looping is turned on when start() gets called; r=roc 2013-03-10 14:11:12 -04:00
Ehsan Akhgari
fb1219f850 Bug 849713 - Part 2: Accept the loop parameters on AudioBufferSourceNodeEngine; r=roc 2013-03-10 13:59:41 -04:00
Ehsan Akhgari
7d077bc2cd Bug 849713 - Part 1: Add DOM bindings for AudioBufferSourceNode loop attributes; r=roc 2013-03-10 12:56:14 -04:00
Paul Adenot
1b9880b25e Bug 846612 - r=kinetik 2013-03-04 15:48:58 +01:00
Matthew Gregan
d7b34df28c Bug 849519 - Raise INDEX_SIZE_ERR if media element volume is set to NaN. r=doublec 2013-03-11 11:11:23 +13:00
Ehsan Akhgari
960e9fb343 Bug 849652 - Copy enough number of bytes in AudioBufferSourceNode::ProduceAudioBlock's memcpy loop; r=roc 2013-03-10 17:37:40 -04:00
Ms2ger
0655b72f9d Bug 821383 - Don't bother with JSAPI magic in nsHTMLMediaElement::{G,S}etMozSrcObject; r=bz+roc 2013-03-10 08:58:18 +01:00
Sotaro Ikeda
ecebfc145e Bug 803471 - Part 5b - Change OmxDecode to use GonkNativeWindowClient. r=cdouble 2013-03-08 14:43:33 -05:00
Sotaro Ikeda
4d3c927c6e Bug 803471 - Part 2 - Use OmxClient in OmxDecoder. r=cdouble 2013-03-08 14:43:32 -05:00
Ehsan Akhgari
864b77606f Bug 849106 - Adjust the fuzz tolerance value for small-shot.ogg on mobile 2013-03-08 13:07:21 -05:00
Ehsan Akhgari
57f1fe49f8 Bug 849230 - Limit the range of sample rates accepted by AudioContext.createBuffer according to the spec; r=padenot 2013-03-08 12:29:00 -05:00
Paul Adenot
4e28d37be4 Bug 846687 - Set the transport as non-seekable if the server sends Accept-Ranges, but no Content-Length. r=cpearce 2013-03-01 19:55:01 +01:00
Ehsan Akhgari
72c22e72bf Bug 848651 - Part 2: Log an error to the Web Console if we run out of memory while trying to resample an AudioBuffer for playback; r=padenot 2013-03-08 11:49:56 -05:00
Ehsan Akhgari
f72f2cc00d Bug 848651 - Part 1: Implement resampling of audio buffers to be able to play back buffers with a different sample rate than the AudioContext; r=padenot 2013-03-07 18:14:46 -05:00
John Schoenick
641d5f2a6c Bug 849067 - Unbreak gstreamer builds again. r=cpearce 2013-03-07 17:44:00 -08:00
Randell Jesup
32de0d2510 Bug 839650: Add debugs to MediaStreamGraph to ease investigation of issues in the future r=roc 2013-03-07 03:53:45 -05:00
Ed Morley
c812c5d9f0 Backed out changeset be1ee54becf4 (bug 839650) for build failures 2013-03-07 09:10:47 +00:00