Commit Graph

834 Commits

Author SHA1 Message Date
Nicholas Nethercote
aaf6fb2124 Bug 1010064 - Allow memory reports to be anonymized. r=bsmedberg.
--HG--
extra : rebase_source : 5eb756b17a97e751deb0f47e909fdb35533cb23b
2014-05-20 23:06:54 -07:00
Karl Tomlinson
03e30752f9 b=1026325 backout 169de60f0b1e from bug 821062 for shutdown hang
--HG--
extra : transplant_source : %92%9Cm8%AE%13%10U%06%FA%FA%15%08n%DF%5Do%18%87%E7
2014-06-18 17:24:05 +12:00
Chris Pearce
05136cdace Bug 979104 - MediaDecoderReader/StateMachine asynchronous decoding. r=kinetik 2014-06-18 17:07:02 +12:00
Ehsan Akhgari
9511934161 Backed out changeset 0cdef46c65c1 (bug 979104) for causing bug 1024324 2014-06-13 16:20:37 -04:00
Andrea Marchesini
8597ce0a97 Bug 1023175 - AudioContext should have attribute EventHandler onmozinterruptend/begin in the webIDL interface, r=ehsan, r=smaug 2014-06-13 07:06:14 +01:00
Karl Tomlinson
8b889b1ea2 b=1023697 use audio ticks for graph time units r=roc
--HG--
extra : transplant_source : 8%BA%9D%5C%E32%05x%A79K%08TH%A7%F4%F2tg%EC
2014-06-12 16:45:00 +12:00
Karl Tomlinson
a22b5917c4 b=1023697 use MediaStream to convert between stream time and seconds in Web Audio r=roc
--HG--
extra : transplant_source : %FE%C77k/%25%B4%25F%FB1%EAAqn%CA%DEH%06%C0
2014-06-12 16:44:58 +12:00
Boris Zbarsky
dfe8c38082 Bug 1009675 part 3. Return WebIDL 'object' values as handles. r=peterv 2014-06-11 16:26:52 -04:00
Chris Pearce
954b2d1caf Bug 979104 - MediaDecoderReader/StateMachine asynchronous decoding. r=kinetik 2014-06-10 19:31:09 +12:00
Andrea Marchesini
fadf721223 Bug 1021084 - WebAudio dispatches mozinterruptbegin/mozinterrutend, r=ehsan 2014-06-06 08:06:18 +01:00
Ryan VanderMeulen
080c5d748d No bug - Clean up media mochitest manifests.
This doesn't change the enabled/disabled state of any tests. It should be a no-op since the harness runs tests alphabetically anyway regardless of their order in the manifest.
2014-06-05 12:41:53 -04:00
Ehsan Akhgari
0ab5221feb Bug 1015783 - Add a devtools API for Web Audio; r=padenot,smaug
See bug 980506 for an extensive discussion about this.  This patch adds
three APIs to AudioNode in order for us to be able to build awesome
devtools on top of it.

* Weak reference API.
  This patch allows one to hold a weak reference to all AudioNode's
  using Components.utils.getWeakReference().  That way, the devtool's
  inspection code would not change the lifetime of AudioNodes.
* AudioNode.id
  This is a chrome-only unique and monotonically incrementing ID for
  AudioNode objects.  It is supposed to be used in order for the
  devtools to be able to identify a node without having to keep it
  alive.
* webaudio-node-demise
  This is an observer notification that is called every time an
  AudioNode gets destroyed inside Gecko.  The ID of the corresponding
  node is passed to this notification.

--HG--
extra : rebase_source : 83246a990489daf44ddc97dd4ea372a8cebe8e00
2014-06-03 22:51:48 -04:00
Ehsan Akhgari
0cfa8d7a07 Backed out 3 changesets (bug 1015783) because of test failures on a CLOSED TREE
Backed out changeset 1307202f365c (bug 1015783)
Backed out changeset 5c83b4710688 (bug 1015783)
Backed out changeset feb56fc5dc01 (bug 1015783)
2014-06-03 19:49:04 -04:00
Ehsan Akhgari
7740d6b443 Bug 1015783 - yet another #include fix
Landed on a CLOSED TREE
2014-06-03 19:29:17 -04:00
Ehsan Akhgari
8563b3b898 Bug 1015783 - Add the missing include 2014-06-03 18:51:54 -04:00
Ehsan Akhgari
11367a7bea Bug 1015783 - Add a devtools API for Web Audio; r=padenot,smaug
See bug 980506 for an extensive discussion about this.  This patch adds
three APIs to AudioNode in order for us to be able to build awesome
devtools on top of it.

* Weak reference API.
  This patch allows one to hold a weak reference to all AudioNode's
  using Components.utils.getWeakReference().  That way, the devtool's
  inspection code would not change the lifetime of AudioNodes.
* AudioNode.id
  This is a chrome-only unique and monotonically incrementing ID for
  AudioNode objects.  It is supposed to be used in order for the
  devtools to be able to identify a node without having to keep it
  alive.
* webaudio-node-demise
  This is an observer notification that is called every time an
  AudioNode gets destroyed inside Gecko.  The ID of the corresponding
  node is passed to this notification.
2014-06-03 18:28:18 -04:00
Jeff Walden
96e2ce765d Bug 999651, bug 995679, bug 1009952, bug 1011007, bug 991981. r=sfink, r=shu, r=jandem, r=jdm, r=luke, r=bbouvier, r=nmatsakis, r=bz, r=ehsan, r=jgilbert, r=smaug, r=sicking, r=terrence, r=bholley, r=bent, r=efaust, r=jorendorff 2014-05-27 14:32:41 -07:00
Kyle Huey
8c5cca136c Bug 996133: Remove unnecessary NS_DISPATCH_NORMAL arguments to NS_DispatchToMainThread. r=ehsan 2014-05-23 12:53:17 -07:00
Paul Adenot
4548b74d78 Bug 1007223 - r=ehsan 2014-05-13 14:09:44 +02:00
Ehsan Akhgari
dda4240032 Bug 1006229 - Assert that the AudioBuffer object should not have been handed to JS or have C++ callers neuter its typed array; r=padenot 2014-05-19 23:12:47 -04:00
Karl Tomlinson
8c2ea9692c b=990868 limit ChannelMergerNode output channel count r=padenot
--HG--
extra : transplant_source : 5S-%40T%8E%8B%F8%B4W%1F%B3%BA5O%83%BF%044%23
2014-05-16 09:23:38 +12:00
Karl Tomlinson
7ce18f4431 b=991533 limit AudioBuffer channel count r=padenot
--HG--
extra : transplant_source : %28%F0%2Cc%FE%60%B3%EE%A0O%3F%E6%C4%C4%F9%88%1C%E3%89%09
2014-05-16 09:23:38 +12:00
Karl Tomlinson
b20b85f946 b=991533 limit AudioBuffers from decodeAudioData to the same sample rates as createBuffer r=ehsan
The numberOfChannels array on AudioBuffer is now an infallible array, as this
is considerably smaller than infallible channel data array allocations in
AllocateAudioBlock and similar to channel data pointer array allocations in
AudioChunk.

--HG--
extra : transplant_source : C%29_%13%9C%9C%A1%E1%A3%E8%C9_%93%11%85lM%FC%7E%BC
2014-05-16 09:23:27 +12:00
Karl Tomlinson
1b213a521f b=991533 throw exception from AudioProcessingEvent buffer getters when allocation fails r=ehsan,bz
--HG--
extra : transplant_source : C%60%E5f6%1D%D3%0F%D6%0B%9CV%A6%AD%C5%5D%E9%9B%C6%BD
2014-05-16 09:11:13 +12:00
Karl Tomlinson
4b5c66fc5a b=991533 limit OfflineAudioContext to the same sample rates as AudioBuffer r=padenot
OfflineAudioCompletionEvent needs to use AudioBuffer for its output,
and so the AudioContext should run at the rates supported by AudioBuffer.

--HG--
extra : transplant_source : %F2%A0%90%E6%DD%21%15%CDBa%F4%24%93%22%FA%A3%D8%12KU
2014-05-16 08:44:18 +12:00
Karl Tomlinson
6578a0d181 b=991533 move sample rate limits to WebAudioUtils r=padenot
Also change WebAudioUtils from a class to a namespace, so that constant
variables can be defined inline with internal linkage.

static class variables cannot be defined inline because this violates the one
definition rule, even though some compilers may not notice.

--HG--
extra : transplant_source : %9F4%2Ct%BA%D2%BD%8A1Xev%92%C0%A1%AD%88IH%BF
2014-05-16 08:44:17 +12:00
Bob Owen
61c6fa0952 Bug 1006024 - Part 10: Remove AudioContext::GetJSContext. r=bholley 2014-05-09 20:07:34 +01:00
Bob Owen
5c5d3f2b80 Bug 1006024 - Part 9: Remove unused JSContext parameter from AudioBuffer::SetRawChannelContents. r=bholley 2014-05-09 10:16:03 +01:00
Bob Owen
29aa975c95 Bug 1006024 - Part 8: Replace AutoPushJSContext in ScriptProcessorNode - Command::Run. r=bholley 2014-05-09 19:57:24 +01:00
Bob Owen
4a6177bed1 Bug 1006024 - Part 7: Replace AutoPushJSContext in WebAudioDecodeJob::AllocateBuffer. r=bholley 2014-05-09 19:51:56 +01:00
Bob Owen
12aeed98cf Bug 1006024 - Part 6: Replace AutoPushJSContext in AudioProcessingEvent::LazilyCreateBuffer. r=bholley 2014-05-09 19:43:48 +01:00
Bob Owen
bd6e5cb7a3 Bug 1006024 - Part 5: Replace AutoPushJSContext in AudioDestinationNode FireOfflineCompletionEvent. r=bholley 2014-05-09 19:33:17 +01:00
Martin Thomson
d2fec57ae8 Bug 966066 - Add principal observer to web audio MediaStream input. r=roc 2014-04-25 10:32:00 -04:00
Benoit Jacob
60d536773a Bug 1004098 - Make nsTArray use size_t in its interface (32bitness is fine as an internal detail) - r=froydnj, sr=bsmedberg 2014-05-08 21:03:35 -04:00
Ehsan Akhgari
6074cda6e4 Bug 985805 - Part 3: Remove support for the legacy PannerNode extensions; r=padenot,smaug 2014-05-05 20:33:19 -04:00
Ehsan Akhgari
96843d8039 Bug 985805 - Part 2: Remove support for the legacy OscillatorNode extensions; r=padenot,smaug 2014-05-05 20:33:09 -04:00
Ehsan Akhgari
3a8319c2d9 Bug 985805 - Part 1: Remove support for the legacy BiquadFilterNode extensions; r=padenot,smaug 2014-05-05 20:32:48 -04:00
Eric Rahm
047f25416e Bug 1003479 - Fix incorrect usage of SizeOfIncludingThis and SizeOfExcludingThis functions. r=njn
--HG--
extra : rebase_source : 2d51e1fc1b642b0efa60cb4e25e8b142577e93d3
2014-05-01 10:37:54 -07:00
Karl Tomlinson
04c2abc3c4 b=990841 work around bug 916387
--HG--
extra : transplant_source : %E5k%B8%F1%EC%A9X%EEj%C0DV%EAL%CE%3C%CB%8ERW
2014-05-05 13:24:51 +12:00
Karl Tomlinson
3a9fc4e0c0 b=999376 use integers to clamp maximum position in WaveShaper curve r=ehsan
float did not necessarily have enough precision.

Includes a -1 fix in the multiplier of the input signal to have
"a signal level of zero corresponding to the center value of the curve array".

--HG--
extra : transplant_source : %05v%A2%0A%CA%96%96%A7%B0z%AA%A7%02L%8Fm%B4TB%95
2014-05-05 13:24:51 +12:00
Nathan Froyd
84041459a1 Bug 1003306 - part 2 - use services::GetPermissionManager everywhere that's appropriate; r=ehsan 2014-04-29 13:27:26 -04:00
Birunthan Mohanathas
a85cd37de4 Bug 1001966 - Part 2: Change uses of numbered NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE macro to the variadic variant. r=smaug 2014-04-29 04:57:00 -04:00
Jon Coppeard
1216544376 Bug 959787 - Handlify remaining JS APIs r=terrence r=bz r=bholley 2014-04-30 10:10:33 +01:00
Birunthan Mohanathas
7ac92ae5ea Bug 900903 - Part 2: Change uses of numbered macros in nsCycleCollectionParticipant.h to the variadic variants. r=smaug 2014-04-25 12:49:00 -04:00
Star Cheng
c6183f6ddf Bug 984498: To plumb audiochannel type from AudioContext to MediaStreamGraph r=roc 2014-04-18 17:23:36 +08:00
Carsten "Tomcat" Book
f4336f1541 Backed out changeset c07bced21c89 (bug 984498) for mochitest-1 bustage on a CLOSED TREE 2014-04-25 12:09:54 +02:00
Star Cheng
59feac455c Bug 984498: To plumb audiochannel type from AudioContext to MediaStreamGraph r=roc 2014-04-18 17:23:36 +08:00
Paul Adenot
aa81ed9e24 Bug 998179 - Refactor how MediaStreamGraph get and use their sample rate. r=roc
Use the sample rate passed to the OfflineAudioContext constructor in
MediaStreamGraph::CreateOfflineInstance, and pass the preferred mixer sample
rate to the (real time) MediaStreamGraph constructor.

Then, always use this sample rate for the lifetime of the graph.

This patch needed to pass the sample rate to the AudioMixer class to avoid
relying on globals like it was done before.

--HG--
extra : rebase_source : 2802208819887605fe26a7040998fc328b3c9a57
2014-04-23 11:20:56 +02:00
Ehsan Akhgari
6eeb144cc5 Bug 999908 - Remove support for the Web Audio legacy prefs for AudioBufferSourceNode, AudioContext, and AudioParam; r=padenot 2014-04-23 08:56:42 -04:00
Eric Rahm
314e9711f0 Bug 967817 - Finish memory reporters for Web Audio. r=roc, njn 2014-04-13 11:08:10 -07:00