Commit Graph

233 Commits

Author SHA1 Message Date
Ehsan Akhgari
f9764c2d00 Backed out changeset 7c244b521e54 (the investigation patch for bug 866079) 2013-04-27 15:07:29 -04:00
Ehsan Akhgari
0c3c1d6ffa Investigation for bug 866079 - Make the Command class live in the global scope in the hopes of getting better stack traces 2013-04-26 12:02:19 -04:00
Ehsan Akhgari
a254b1fcac Bug 865550 - Unlink AudioBufferSourceNode members before AudioNode; r=mccr8 2013-04-25 16:52:52 -04:00
Ehsan Akhgari
eabaf3e71e Bug 859600 - Make AudioContext an EventTarget; r=smaug 2013-04-25 00:28:39 -04:00
Ehsan Akhgari
ce979bfbde Bug 865650 - Ensure that looping will only happen if the start offset is less than the end offset; r=padenot
--HG--
extra : rebase_source : 3de31185083df174f7b6e823d1a135aee39c211d
2013-04-25 09:34:47 -04:00
Boris Zbarsky
b834439797 Bug 864727 part 5. Make all the WrapObject methods take a handle for the scope object. r=ms2ger 2013-04-25 12:29:54 -04:00
Ehsan Akhgari
8f22491495 Bug 865532 - Don't attempt to stop an AudioBufferSourceNode that doesn't have a context; r=padenot 2013-04-24 22:24:25 -04:00
Ehsan Akhgari
6c274aa699 Bug 865548 - Convert the node arrays in AudioContext to hashsets; r=padenot 2013-04-24 23:32:41 -04:00
Ehsan Akhgari
9773a06f1b Bug 865004 - Disconnect the AudioNode from the graph before deleting it; r=bzbarsky 2013-04-24 16:57:07 -04:00
Ehsan Akhgari
3aafed5c8f Backed out changeset 089871cdaf1e (bug 865004) because of crashtest leaks on a CLOSED TREE 2013-04-24 16:29:08 -04:00
Ehsan Akhgari
bae9f2a9a4 Bug 865004 - Disconnect the AudioNode from the graph before deleting it; r=bzbarsky 2013-04-24 15:30:19 -04:00
Ehsan Akhgari
ad6c0922c2 Bug 864709 - Part 2: Protect accesses to AudioNodeEngine::mNode using a lock; r=padenot 2013-04-24 12:13:45 -04:00
Paul Adenot
87427692d3 Bug 864164 followup - Also send the params to the stream when setting the buffer. r=ehsan 2013-04-23 17:42:40 +02:00
Ehsan Akhgari
f4ede88cdf Bug 864164 - Part 2: Send the AudioBufferSourceNode buffer parameter changes to the stream; r=padenot 2013-04-22 17:01:22 -04:00
Ehsan Akhgari
ae2e659fa6 Bug 864613 - Take the dynamics compressor node's input chunk volume into account; r=padenot
--HG--
extra : rebase_source : d065091c344325b9c42c26307074d20ad81e0cd0
2013-04-22 22:16:42 -04:00
Ehsan Akhgari
12e6ca7aff Bug 864609 - Take the panner node's input chunk volume into account; r=padenot
--HG--
extra : rebase_source : 4ccebeb02cd8a52721b5bff5f5c77f9a7201312b
2013-04-22 22:07:49 -04:00
Ehsan Akhgari
5d8d818bac Bug 864606 - Take the gain node's input chunk volume into account when we have automation events for changing the gain value; r=padenot
--HG--
extra : rebase_source : 0d8c538a22ba764559a30c09e436eaaf38ac63fd
2013-04-22 22:05:16 -04:00
Ehsan Akhgari
1275a7058a Bug 864605 - Take the input chunk's volume into account in the nodes that buffer their input; r=padenot
--HG--
extra : rebase_source : 7590e20cbb1ac347f3988aaa5dbc586012747221
2013-04-22 21:59:51 -04:00
Ehsan Akhgari
4393d3e222 Bug 864351 - Hold on to a SelfReference for ScriptProcessorNodes to make sure that they won't go away prematurely if they're used as source nodes; r=padenot 2013-04-22 21:23:54 -04:00
Ehsan Akhgari
5ddf6abea4 Bug 834513 follow-up: Mode AudioNode::DestroyMediaStream into the cpp file, and inline UnbindFromEngine 2013-04-22 22:45:37 -04:00
Ehsan Akhgari
4b6164232a Bug 864091 - Part 3: Implement DynamicsCompressorNode's processing based on the Blink's implementation; r=padenot 2013-04-21 16:13:59 -04:00
Ehsan Akhgari
bc6410c3a7 Bug 864091 - Part 2: Add the Blink Dynamics Compressor implementation to the build system; r=padenot,glandium 2013-04-20 23:12:00 -04:00
Ehsan Akhgari
6d48241e2c Bug 864091 - Part 1: Import the Dynamics Compressor implementation from Blink; r=padenot
The original code was copied from Blink SVN revision 148720.
2013-04-20 19:46:24 -04:00
Ehsan Akhgari
d968757da5 Bug 864164 - Part 1: Send the AudioBufferSourceNode loop parameter changes to the stream; r=padenot 2013-04-22 00:22:33 -04:00
Ehsan Akhgari
95796cdc83 Bug 864322 - Stop all audio buffer source nodes when the context is being shut down to prevent leaks in the graph; r=padenot
--HG--
extra : rebase_source : a64d445609ac9892d0fae36122fdc25e1437f400
2013-04-22 11:45:34 -04:00
Ehsan Akhgari
7fffefb66d Bug 864086 - Simplify AudioNode::DestroyMediaStream callers; r=padenot 2013-04-22 08:14:10 -04:00
Ehsan Akhgari
e1e2e74fd1 Bug 864083 - Cleanup AudioBuffer::GetThreadSharedChannelsForRate; r=padenot 2013-04-22 08:12:45 -04:00
Ryan VanderMeulen
462cd28766 Backed out changesets 3b8fdfefcf5e and ab61f99fb584 (bug 864083) for bustage on a CLOSED TREE. 2013-04-22 08:58:32 -04:00
Ehsan Akhgari
ab040a1f23 Bug 864086 - Simplify AudioNode::DestroyMediaStream callers; r=padenot 2013-04-22 08:14:10 -04:00
Ehsan Akhgari
15db25666d Bug 864083 - Cleanup AudioBuffer::GetThreadSharedChannelsForRate; r=padenot 2013-04-22 08:12:45 -04:00
Ehsan Akhgari
2ab3cbac5a Bug 834513 - Part 4: Add tests for ScriptProcessorNode, and also test AudioBufferSourceNode using it; r=roc 2013-04-20 11:17:58 -04:00
Ehsan Akhgari
21b6d807c6 Bug 834513 - Part 3: Implement ScriptProcessorNode; r=roc 2013-04-13 21:37:04 -04:00
Ehsan Akhgari
82a95502c9 Bug 834513 - Part 2: Add an AudioNode weak pointer to the AudioNodeEngine class; r=roc 2013-04-20 12:16:28 -04:00
Mike Shal
df7deac25b Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
Ehsan Akhgari
bf197ee0b6 Bug 834513 - Part 1: Refactor WebAudioDecodeJob::GetJSContext into AudioContext; r=roc 2013-04-14 14:18:43 -04:00
Ehsan Akhgari
ed2b473e45 Bug 854319 - Part 2: Always use a ref pointer when dealing with MediaResource objects; r=cpearce 2013-04-15 20:08:03 -04:00
Ehsan Akhgari
bb3fe4cc6f Bug 854319 - Part 1: Call BeginDecoding before OnDecodeThreadStart; r=cpearce
This is what WMFReader::OnDecodeThreadStart() expects.
2013-04-15 19:49:35 -04:00
Ehsan Akhgari
24a63e7a4e Bug 853298 - Part 2: Make AudioNode an EventTarget; r=smaug 2013-04-12 11:28:33 -04:00
Ehsan Akhgari
21fef81a58 Bug 853298 - Part 1: Switch the ownership model of audio nodes to be based the cycle collector with wrapper caches; r=roc
Here is what this patch does:
 * Got rid of the JSBindingFinalized stuff
 * Made all nodes wrappercached
 * Started to hold a self reference while the AudioBufferSourceNode is playing back
 * Converted the input references to weak references
 * Got rid of all of the SetProduceOwnOutput and UpdateOutputEnded logic

The nodes are now collected by the cycle collector which calls into
DisconnectFromGraph which drops the references to other nodes and destroys the
media stream.  Note that most of the cycles that are now inherent in the
ownership model are between nodes and their AudioParams (that is, the cycles
not created by content.)
2013-04-14 21:52:55 -04:00
Paul Adenot
1804f67723 Bug 853551 - Implement the doppler part of AudioPannerNode. r=ehsan 2013-04-11 14:47:57 +02:00
Ehsan Akhgari
c2ff4fe5ac Bug 859595 - Implement the alternate names for AudioBufferSourceNode, AudioContext and AudioParam; r=bzbarsky
Let this be mentioned in our code base history that I wrote this patch
with tears in my eyes.  This is the saddest thing I've ever had to do to
Gecko. :(

--HG--
extra : rebase_source : 798e5b1dc8af51a399189dd05bc59ac077670820
2013-04-11 22:08:05 -04:00
Paul Adenot
e699f7917a Bug 854336 - Implement the playbackRate property of AudioBufferSourceNode. r=ehsan 2013-04-09 14:47:42 +02:00
Paul Adenot
1e2f674242 Bug 852366 - Don't resample on the main thread. r=ehsan,roc 2013-03-18 20:54:32 -04:00
Ehsan Akhgari
30b359b669 Backed out changeset 3ae03ecf8b5e (bug 852366) because of mochitest-1 crashes
Landed on a CLOSED TREE
2013-04-09 11:29:15 -04:00
Ehsan Akhgari
401ac0136b Backed out changeset 92c2f24cb6ff (bug 854336) because of mochitest-1 crashes 2013-04-09 11:28:42 -04:00
Ehsan Akhgari
a2348a1115 Backed out changeset 9c080ffa640f (bug 853551) because of mochitest-1 crashes 2013-04-09 11:28:38 -04:00
Paul Adenot
1e8caad6cf Bug 853551 - Implement the doppler part of AudioPannerNode. r=ehsan 2013-04-09 14:47:42 +02:00
Paul Adenot
60af723f4c Bug 854336 - Implement the playbackRate property of AudioBufferSourceNode. r=ehsan 2013-04-09 14:47:42 +02:00
Paul Adenot
a1ad1c8920 Bug 852366 - Don't resample on the main thread. r=ehsan,roc 2013-03-18 20:54:32 -04:00
Ehsan Akhgari
5fda9c3404 Bug 859597 - Narrow down the acceptable range for AnalyserNode.fftSize; r=padenot 2013-04-08 21:26:08 -04:00