Ehsan Akhgari
c08a3bf04a
Bug 874915 - Stop the AudioBufferSourceNode if the offset is no longer valid after setting a new buffer; r=roc
...
--HG--
extra : rebase_source : 0b179aab5ddb1ffd4ab2aeb8366b36975c949187
2013-05-23 07:50:48 -04:00
Ehsan Akhgari
1bfc965bdc
Bug 874869 - Disallow setting AudioNode.channelCount to zero; r=roc
...
--HG--
extra : rebase_source : 8015dda70e2191820c9482b529a22bdaa67dd79e
2013-05-23 07:46:20 -04:00
Ryan VanderMeulen
4a2c1820e6
Backed out changesets e52c6f7200b3 and 2718954757e1 (bug 874869) for intermittent Windows leaks.
2013-05-22 15:22:26 -04:00
Bobby Holley
91448a9dac
Bug 868130 - Remove the lion's share of JSAutoRequests in gecko. r=gabor
...
There are still a handful that either are used with other runtimes, or that
happen very early/late in cx the lifetime of various things where it doesn't
necessarily make sense to have a cx on the stack. This should definitely ensure
that we're not doing double-duty with the nsCxPusher change, though.
2013-05-22 10:05:28 -06:00
Bobby Holley
54ef3d2952
Bug 868130 - Include nsCxPusher.h everywhere we need it, and stop including it from nsContentUtils.h. r=gabor
2013-05-22 10:05:26 -06:00
Ehsan Akhgari
34a9786e5f
Bug 874869 - Disallow setting AudioNode.channelCount to zero; r=roc
2013-05-22 11:30:31 -04:00
Ehsan Akhgari
84a5e374ef
Bug 873335 - Unlink ScriptProcessorNode members before AudioNode; r=mccr8
2013-05-21 14:54:23 -04:00
Ehsan Akhgari
3894f484df
Bug 836599 - Part 14: Run most of the existing Web Audio tests using OfflineAudioContext as well as AudioContext; r=roc
...
This helps us get a decent amount of test coverage on OfflineAudioContext in
both the existing tests and the future tests.
2013-05-16 19:31:08 -04:00
Ehsan Akhgari
30c4151889
Bug 836599 - Part 13: Add a unit test for OfflineAudioContext; r=roc
2013-05-16 19:31:08 -04:00
Ehsan Akhgari
d2c63bc836
Bug 836599 - Part 12: Fix the lifetime management of the Web Audio graph in presence of OfflineAudioContexts; r=roc
...
Here we make the non-realtime graphs to go to sleep until they're shut down
from the main thread. This allows us to use the common forced shutdown code
path in MediaStreamGraphImpl::RunThread. We also need to delete the graph
object when the last message is dispatched to it.
In addition, we need to make sure that the AudioNodes also get released when
they're no longer needed. To do this, we need for force the SelfReference of
AudioBufferSourceNodes to be released when the context is shut down, and also
trigger the destruction of the graph there.
2013-05-16 19:31:08 -04:00
Ehsan Akhgari
e31cd426d8
Bug 836599 - Part 11: Implement the processing of OfflineAudioContext; r=roc
...
We use a custom AudioNodeEngine for the destination nodes belonging to
OfflineAudioContexts, and there we record the rendered buffer. Once the buffer
is full, we resample it if the sampling rate of the OfflineAudioContext is
different than the ideal sampling rate, and then we hand it off to the main
thread in order for the complete event to be dispatched.
2013-05-16 19:30:57 -04:00
Ehsan Akhgari
1428a73574
Bug 836599 - Part 10: Use the non-realtime MediaStreamGraph API and a custom destination node engine for OfflineAudioContext; r=roc
...
We offload most of the logic for OfflineAudioContext to the destination node,
since that's where the sample recording needs to happen, so doing this will
make the code simpler.
2013-05-16 19:30:42 -04:00
Ehsan Akhgari
e7318c89ad
Bug 836599 - Part 9: Implement the DOM binding for OfflineAudioContext; r=roc
2013-05-16 19:30:41 -04:00
Ehsan Akhgari
497b7175f9
Bug 872635 - Drop the DelayNode's self-reference right on time, to make sure that DelayNodes don't leak with OfflineAudioContexts; r=roc
2013-05-15 20:51:47 -04:00
Paul Adenot
6d73395fce
Bug 867104 - Add a crashtest. r=ehsan
2013-05-14 14:14:42 +02:00
Paul Adenot
0048792bd1
Bug 867104 - r=ehsan
2013-05-14 14:14:42 +02:00
Ehsan Akhgari
bee3aa1c74
Bug 865251 - Implement WaveShaperNode; r=roc
2013-05-14 00:12:30 -04:00
Ed Morley
36fb30076b
Backed out changeset 496846474ed3 (bug 864774)
2013-05-13 10:05:49 +01:00
Ehsan Akhgari
19d51152a3
Bug 871201 - Part 2: Implement AudioBufferSourceNode.gain; r=roc
...
X-Git-Commit-ID: db8923b372db098aa7a5dc1cbf42674310b61aef
X-Mailer: git-send-email
--HG--
rename : content/media/webaudio/test/test_audioBufferSourceNode.html => content/media/webaudio/test/test_audioBufferSourceNodeGain.html
rename : content/media/webaudio/test/test_audioBufferSourceNode.html => content/media/webaudio/test/test_delayNodeWithGainAlternate.html
extra : rebase_source : 2cc9259229209fa926970e78ddfc2ef5765f4ad5
2013-05-13 00:17:55 -04:00
Ehsan Akhgari
dfe47b7ab0
Bug 871201 - Part 1: Refactor the gain processing logic of GainNodeEngine into a reusable base class; r=roc
...
X-Git-Commit-ID: e3c9ccaf984c74bb041e2a35fb092dd91e643555
X-Mailer: git-send-email
--HG--
extra : rebase_source : c26ad3b5953f15b599baa9fea0cf66580f2a3262
2013-05-13 00:17:36 -04:00
Ehsan Akhgari
5a3c2ed05b
Bug 870174 - Eliminate some lags and glitches caused by resampling in decodeAudioData and AudioBufferSourceNode.cpp, and make the code simpler too!; r=roc
...
X-Git-Commit-ID: d9ad3597291b9f656712dcdd15725afcc3882fa1
X-Mailer: git-send-email
--HG--
extra : rebase_source : 5f51d27aec53fd5e9ab868e799ce05ee2b7692d4
2013-05-13 00:17:00 -04:00
Mike Shal
02469b68e2
Bug 864774 - Part 2: Move CPPSRCS to moz.build as CPP_SOURCES; r=joey
...
From 140b9201e3b5d2d8efe7af286d279c2411dbc197 Mon Sep 17 00:00:00 2001
2013-04-23 17:54:15 -04:00
Nathan Froyd
eba34f22d7
Bug 858131 - rewrite FloatingPoint.h to be C++-only instead of C-compatible C++; r+original-author=Waldo
2013-05-01 16:55:13 -04:00
Ehsan Akhgari
e6ca808683
Bug 870167 - Create a mini test framework for Web Audio; r=roc
...
--HG--
rename : content/media/webaudio/test/test_audioBufferSourceNodeLoop.html => content/media/webaudio/test/test_audioBufferSourceNodeEnded.html
extra : rebase_source : 787d1d19b6463906ff9db8cbfb5e61d76a2ab667
2013-05-09 08:45:35 -04:00
Ehsan Akhgari
d0679b48e8
Bug 869682 - Make sure that GainNode does not modify its input buffer; r=roc
2013-05-07 23:32:23 -04:00
Ehsan Akhgari
14175761c2
Bug 869224 - Use the same algorithm to compute the buffer start/end time and to convert AudioParam time values to ticks; r=roc
2013-05-07 23:31:15 -04:00
Nathan Froyd
dc3bfcbc39
Bug 869073 - make WebIDL enums enum classes instead of plain enums; r=bz
2013-05-06 15:28:13 -04:00
Ehsan Akhgari
4da547d014
Bug 865242 - Remove support for soundfield panning from PannerNode; r=padenot
2013-05-07 08:27:08 -04:00
Ehsan Akhgari
f01f0505d9
Bug 865231 - Implement AudioParam.setValueCurveAtTime; r=roc
2013-05-06 19:50:45 -04:00
Ehsan Akhgari
c3c3b0028e
Bug 868864 - Correctly scale the time values of AudioParam when converting it to ticks, and correctly calculate SetTargetAtTime event values the first time they're encountered; r=roc
2013-05-06 14:59:43 -04:00
Ehsan Akhgari
ed4c312d3e
Bug 868855 - Respect the input's volume in ChannelMergerNode and ChannelSplitterNode; r=roc
2013-05-06 14:30:47 -04:00
Ehsan Akhgari
98bbd68e08
Bug 865233 - Implement the ended event for AudioBufferSourceNode; r=roc
2013-05-06 14:22:01 -04:00
Ehsan Akhgari
d737c31ab8
Bug 867174 - Part 2: Protect against invalid sample rates a bit harder; r=padenot
2013-05-06 11:34:03 -04:00
Ehsan Akhgari
46cad293b8
Bug 865248 - Implement ChannelMergerNode; r=roc
...
--HG--
rename : content/media/webaudio/ChannelSplitterNode.h => content/media/webaudio/ChannelMergerNode.h
2013-05-05 11:49:37 -04:00
Ehsan Akhgari
5b8b3eb487
Bug 865247 - Part 4: Implement ChannelSplitterNode; r=roc
2013-05-05 11:49:13 -04:00
Ehsan Akhgari
07fbb18a70
Bug 865247 - Part 3: Add a ProduceAudioBlock overload to handle simultaneous processing of multiple input and output ports; r=roc
...
The ObtainInputBlock API is also changed to create an input block for one input
block at a time. An array of these input blocks is then sent to
ProduceAudioBlock for processing, which generates an array of AudioChunks as
output.
Backwards compatibilty with existing engines is achieved by keeping the
existing ProduceAudioBlock API for use with engines with only a maximum of one
input and output port.
2013-05-05 11:48:45 -04:00
Ehsan Akhgari
7275461f2b
Bug 865247 - Part 2: Tell MediaInputPorts about their input and output ports; r=roc
2013-05-05 11:47:59 -04:00
Ehsan Akhgari
8d0e9d56f7
Bug 868485 - Part 2: Add test cases for createBuffer with mono downmixing; r=roc
2013-05-05 11:16:23 -04:00
Ehsan Akhgari
91cf92d40d
Bug 868485 - Part 1: Implement the mixToMono behavior for createBuffer; r=roc
2013-05-05 11:15:58 -04:00
Ehsan Akhgari
bf10328ba6
Bug 868776 - Fix rooting hazards in Web Audio code; r=till
2013-05-04 17:40:20 -04:00
Yuan Pengfei
9ba4db562b
Bug 868716 - Fix placement of #include <float.h>; r=ehsan
2013-05-04 11:35:35 -04:00
Chris Pearce
bbaa7306e8
Bug 847267 - Use DXVA2 to offload H.264 decoding to the GPU on Windows. r=Bas
2013-05-04 22:12:41 +12:00
James Willcox
8a604ee1de
Bug 848652 - Implement ArrayBuffer version of AudioContext.createBuffer r=ehsan
...
--HG--
rename : content/media/webaudio/test/test_decodeAudioData.html => content/media/webaudio/test/test_mediaDecoding.html
2013-05-03 16:42:28 -04:00
Matt Brubeck
4a49b819a3
Back out changeset 1a0f522cf110 (bug 848652) because of assertion failures in MediaBufferDecoder.cpp
...
CLOSED TREE
--HG--
rename : content/media/webaudio/test/test_mediaDecoding.html => content/media/webaudio/test/test_decodeAudioData.html
2013-05-03 15:18:06 -07:00
Ehsan Akhgari
e79c6d96a9
Bug 868409 - ScriptProcessorNode's playing ref should remain active as long as there are outstanding connections; r=roc
2013-05-03 10:59:41 -04:00
James Willcox
ef70532696
# ebe5edd8c0ac367c043437a674d4200cf4525757
...
Bug 848652 - Implement ArrayBuffer version of AudioContext.createBuffer r=ehsan
--HG--
rename : content/media/webaudio/test/test_decodeAudioData.html => content/media/webaudio/test/test_mediaDecoding.html
extra : rebase_source : 7b0926091743dd6cd17a0adee9a6d3c5181dfa4d
2013-05-03 16:42:28 -04:00
Ehsan Akhgari
d2078ef9df
Bug 867174 - Part 1: Deliver the correct channel count the to the resampler the first time that we see a buffer; r=padenot
2013-04-30 16:36:19 -04:00
Ehsan Akhgari
b396c375d9
Bug 867876 - Add some tests for the AudioParam automation events; r=roc
2013-05-02 01:13:27 -04:00
Paul Adenot
06a84c0e3f
Bug 867203 - Part 2: Remove useless mPannerNode member in AudioBufferSourceNode. r=ehsan
...
--HG--
extra : rebase_source : dc94f66dbb4291226ab3f2c6c1ad8dc7aa4081e7
2013-05-02 17:04:49 +02:00
Ehsan Akhgari
c9ce04d576
Bug 867203 - Part 1: Unregister AudioBufferSourceNodes from PannerNodes when they die; r=padenot
...
--HG--
extra : rebase_source : 3c580a0feba39d01779a91e6bd10a10d98cb7114
2013-04-30 19:20:55 -04:00