Commit Graph

319 Commits

Author SHA1 Message Date
Paul Adenot
3158b60d85 Bug 867104 - Add a crashtest. r=ehsan 2013-05-14 14:14:42 +02:00
Paul Adenot
e1cda4145a Bug 867104 - r=ehsan 2013-05-14 14:14:42 +02:00
Ehsan Akhgari
a0b78d269a Bug 865251 - Implement WaveShaperNode; r=roc 2013-05-14 00:12:30 -04:00
Ed Morley
2710e5d6a9 Backed out changeset 496846474ed3 (bug 864774) 2013-05-13 10:05:49 +01:00
Ehsan Akhgari
1ad083a454 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
0fe36724de 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
308783cb5d 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
d2b29f4e87 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
dbba9baf39 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
3050474ec2 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
f5323eda03 Bug 869682 - Make sure that GainNode does not modify its input buffer; r=roc 2013-05-07 23:32:23 -04:00
Ehsan Akhgari
65d65fc57c 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
9fd3f3a56a Bug 869073 - make WebIDL enums enum classes instead of plain enums; r=bz 2013-05-06 15:28:13 -04:00
Ehsan Akhgari
a841e607de Bug 865242 - Remove support for soundfield panning from PannerNode; r=padenot 2013-05-07 08:27:08 -04:00
Ehsan Akhgari
d44761d8d4 Bug 865231 - Implement AudioParam.setValueCurveAtTime; r=roc 2013-05-06 19:50:45 -04:00
Ehsan Akhgari
fc836625cc 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
b5688423b2 Bug 868855 - Respect the input's volume in ChannelMergerNode and ChannelSplitterNode; r=roc 2013-05-06 14:30:47 -04:00
Ehsan Akhgari
566ab60c82 Bug 865233 - Implement the ended event for AudioBufferSourceNode; r=roc 2013-05-06 14:22:01 -04:00
Ehsan Akhgari
fefedbf170 Bug 867174 - Part 2: Protect against invalid sample rates a bit harder; r=padenot 2013-05-06 11:34:03 -04:00
Ehsan Akhgari
855b90e600 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
cb9c2a7a4c Bug 865247 - Part 4: Implement ChannelSplitterNode; r=roc 2013-05-05 11:49:13 -04:00
Ehsan Akhgari
cea007a9a4 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
1f4e097965 Bug 865247 - Part 2: Tell MediaInputPorts about their input and output ports; r=roc 2013-05-05 11:47:59 -04:00
Ehsan Akhgari
a8711101f3 Bug 868485 - Part 2: Add test cases for createBuffer with mono downmixing; r=roc 2013-05-05 11:16:23 -04:00
Ehsan Akhgari
7ea8b318c7 Bug 868485 - Part 1: Implement the mixToMono behavior for createBuffer; r=roc 2013-05-05 11:15:58 -04:00
Ehsan Akhgari
8e7457501a Bug 868776 - Fix rooting hazards in Web Audio code; r=till 2013-05-04 17:40:20 -04:00
Yuan Pengfei
8cab2eb577 Bug 868716 - Fix placement of #include <float.h>; r=ehsan 2013-05-04 11:35:35 -04:00
Chris Pearce
16011bf3ac 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
26839b9119 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
eb1363b174 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
79f926cc63 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
9b1a0377f4 # 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
e6e5e83119 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
78292ca533 Bug 867876 - Add some tests for the AudioParam automation events; r=roc 2013-05-02 01:13:27 -04:00
Paul Adenot
6e76c43d3d 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
96b8756891 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
Ehsan Akhgari
253a6df0e6 Bug 866434 - Part 4: Add a test case for connecting an AudioNode to an AudioParam; r=roc 2013-05-01 23:13:43 -04:00
Ehsan Akhgari
e0262ff6ca Bug 866434 - Part 3: Mix in the value generated by AudioNode inputs to AudioParams when getting their values during audio processing; r=roc 2013-05-01 23:12:59 -04:00
Ehsan Akhgari
670b091738 Bug 866434 - Part 2: Give each AudioParam that is connected to an AudioNode an AudioNodeStream; r=roc
These MediaStreams are used as a way to down-mix the input AudioChunks, and
also as a way to get proper stream processing ordering.  The MediaStream for
the source AudioNode is an input to these streams, and these streams in turn
are inputs to the MediaStream that the AudioNode that owns the AudioParam owns.
This way, the Media Streams Graph processing code will order the streams so
that by the time that the MediaStream for a given node is processed, all of the
MediaStreams belonging to the AudioNode(s) feeding into the AudioParam have
been processed.

This has a tricky side-effect that those streams also being considered when
determining the input block for the AudioNodeStream belonging to the
AudioParam's owner AudioNode.  In order to fix that, we simply special case
those streams and make AudioNodeStream::ObtainInputBlock ignore them.
2013-05-01 21:02:31 -04:00
Ehsan Akhgari
51eb2bd838 Bug 866434 - Part 1: Make it possible to connect an AudioNode to an AudioParam; r=roc 2013-05-01 18:59:02 -04:00
Ed Morley
bbd462e94e Backed out changeset 2938c2e1f7e7 (bug 867203) since part 1 had to be backed out for conflicts 2013-05-03 10:10:18 +01:00
Ed Morley
e1d81087be Backed out changeset ad407adf94f2 (bug 867174) and friends for causing permaorange mochitest-2 on Android, disabling tests without using android.json and/or conflicting with the backouts on three CLOSED TREEs 2013-05-03 09:24:04 +01:00
Ed Morley
d320d9c131 Backed out changeset 9351bfd9d8c5 (bug 867174) 2013-05-03 09:20:05 +01:00
Ed Morley
b8d16c44dc Backed out changeset 85ec6c943147 (bug 867876) 2013-05-03 09:20:01 +01:00
Ed Morley
2976e17cdf Backed out changeset b342f87552a3 (bug 865642) 2013-05-03 09:19:58 +01:00
Ed Morley
ae15f3e346 Backed out changeset 3cadad39da66 (bug 868116) 2013-05-03 09:19:55 +01:00
Ed Morley
ca5a276d35 Backed out changeset 93602e7a1551 (bug 865642) 2013-05-03 09:19:52 +01:00
Ed Morley
58401e4f7b Backed out changeset da92f0c44e91 (bug 867980) 2013-05-03 09:19:49 +01:00
Ed Morley
cd69604be9 Backed out changeset 6402e13dc9ba (bug 865642) 2013-05-03 09:19:46 +01:00
Ed Morley
a98a3b019c Backed out changeset b66017604bdd (bug 867203) 2013-05-03 09:19:43 +01:00