Karl Tomlinson
9faf032a35
b=933304 Remove unnecessary channel count parameter from AudioBlockInPlaceScale r=padenot
...
--HG--
extra : transplant_source : s%04%B1%11%E9%F9%E2%92l%182%FFZm%81%E4/M%B3%BD
2014-01-28 18:14:25 +13:00
Karl Tomlinson
ddddde870d
b=956604 Remove unnecessary channel count parameter from AudioBufferInPlaceScale r=padenot
...
--HG--
extra : transplant_source : %98%098%E3%1D%9D%B4%22%FD%ED%3C%96%11%96%F9P%89%F4J0
2014-01-08 16:57:53 +13:00
Karl Tomlinson
f4763e5f3b
b=956604 rename block version of AudioBufferInPlaceScale to AudioBlockInPlaceScale r=padenot
...
--HG--
extra : transplant_source : %EE%9C%0D%B4%F0S%DA%AFX%3D%D2%10H%28-%82%EE%B5%AB%84
2014-01-08 16:57:26 +13:00
Ehsan Akhgari
73dc4b008e
Bug 884368 - Part 1: Add a memory reporter for AudioContexts; r=roc,njn
2014-01-04 13:15:41 -05:00
Paul Adenot
7c95321d67
Bug 881959 - Mute WebAudio nodes that are part of a cycle that contains no DelayNode, and make cycles work. r=ehsan
...
--HG--
extra : rebase_source : d4bc378128cf15f8d8395b45b4443ca6b06c5bd2
2013-08-26 19:19:36 +02:00
Ralph Giles
0713177406
Bug 865256 - Part 3a: Add AudioBufferPeakValue utility. r=ehsan
...
From 6c057c02970c79d620527d08bc3755491c99b1d3 Mon Sep 17 00:00:00 2001
This is an equivalent, C-only implementation of blink's
VectorMath::maxmgv or Apple's vDSP_maxmgv. It finds the
maximum absolute value of the elements in a float buffer.
Used by blink's PeriodicWave implementation for normalization.
2013-09-10 10:54:17 -07:00
Ed Morley
6a8bde5bc5
Backed out changeset fb89f2090779 (bug 881959)
2013-09-17 17:14:55 +01:00
Paul Adenot
f4a229fbf9
Bug 881959 - Mute WebAudio nodes that are part of a cycle that contains no DelayNode, and make cycles work. r=ehsan
...
--HG--
extra : rebase_source : a92e90a2fb08f784d3a1b7d0701a5dd20595c4ef
2013-08-26 19:19:36 +02:00
Ehsan Akhgari
143454cc1a
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-05 16:25:17 -04:00
Ehsan Akhgari
92ad73ef93
Backed out changeset 2f15518f566e (bug 912702) because of B2G JB Emulator build bustage
...
--HG--
extra : rebase_source : 6c01ad3bc2f91b0e7e3edab84aedbfe064310a8b
2013-09-05 13:29:38 -04:00
Ehsan Akhgari
be1e68caf3
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-04 17:58:14 -04:00
Robert O'Callahan
a20b43c5a8
Bug 890716. Fix race in Reverb::Reverb. r=padenot
...
--HG--
extra : rebase_source : 65af577f5ffcf7f7a0b650f1693f4159ddac4ac6
2013-07-26 13:35:22 +12:00
Ehsan Akhgari
5c7839318c
Bug 815643 - Part 4: Add the Convolution processing implementation to the build system; r=roc
...
--HG--
extra : rebase_source : 2a5aa609334c67bb9b09090d9f681c5c3a940c5c
2013-06-10 16:09:01 -04:00
Ehsan Akhgari
8353ddad3c
Bug 815643 - Part 2: Refactor our Web Audio FFT code into the FFTBlock class; r=roc
...
This is useful in order for us to be able to borrow code from Blink with
fewer changes, and also to explore faster platform dependent FFT
implementations in the future if needed.
--HG--
extra : rebase_source : 34bbded736e1b385754756513c59ee27ce7552a5
2013-06-10 16:08:21 -04:00
Ehsan Akhgari
6c146d9103
Bug 873553 - Part 4: Pass the sampling rate to the engine in SetTimelineParameter; r=roc
...
--HG--
extra : rebase_source : aa574757e9791eafd8c6825328fc4e2f65479f34
2013-05-24 13:10:08 -04:00
Ehsan Akhgari
22b9d20d59
Bug 873553 - Part 2: Teach each AudioNodeStream about its sampling rate, and store the value inside AudioContext; r=roc
...
--HG--
extra : rebase_source : beed6a6f965acdff307b7d4861d5f336c224d498
2013-05-24 13:09:29 -04:00
Ehsan Akhgari
bee3aa1c74
Bug 865251 - Implement WaveShaperNode; r=roc
2013-05-14 00:12:30 -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
bc394ffb2a
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
1cff2c39cc
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
6b4953320e
Bug 865234 - Part 2: Send the channel mixing information to the AudioNodeStream; r=roc
2013-04-27 19:25:23 -04:00
Ehsan Akhgari
99da564fc5
Bug 864709 - Part 2: Protect accesses to AudioNodeEngine::mNode using a lock; r=padenot
2013-04-24 12:13:45 -04:00
Ehsan Akhgari
27a0b514b9
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
f25c4a0e7e
Bug 834513 - Part 2: Add an AudioNode weak pointer to the AudioNodeEngine class; r=roc
2013-04-20 12:16:28 -04:00
Ehsan Akhgari
20bf730bff
Bug 856771 - Protect the source buffer nodes from leaking when their binding goes away without being played back; r=roc
2013-04-01 16:06:55 -04:00
Paul Adenot
b7bfb58bff
Bug 849918 - Initial support for PannerNode's 3D positional audio (equalpower panning model). r=ehsan,roc
...
--HG--
extra : rebase_source : d729da50f97b94ea0434a93ad481ac35954bfa9a
2013-03-21 17:45:53 +01:00
Kyle Huey
a7ee1d91d2
Backout things philor tells me to (Bug 853360, Bug 849918).
2013-03-21 18:20:42 -07:00
Paul Adenot
3f173fa2f9
Bug 849918 - Initial support for PannerNode's 3D positional audio (equalpower panning model). r=ehsan,roc
2013-03-21 17:45:53 +01:00
Ehsan Akhgari
c2ba945142
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
61ed64780f
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
1fc3470bd9
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
Ehsan Akhgari
709fd4d1d0
Bug 836076 - Part 6: Hook up GainNode to the MediaStreams back-end to enable controlling the volume of the audio being played back; r=roc
2013-01-29 18:37:51 -05:00
Ehsan Akhgari
332078a8e8
Bug 836076 - Part 2: Make it possible to send AudioEventTimeline objects as commands to the MSG thread; r=roc
2013-01-28 17:42:27 -05:00
Robert O'Callahan
f76919f8a0
Bug 804387. Part 8: Create AudioNodeEngine and AudioNodeStream. r=jesup
...
Modifies MediaStreamGraph to always advance its time by a multiple of
WEBAUDIO_BLOCK_SIZE.
--HG--
extra : rebase_source : 99524b09edd4ac0e1bc6607f2ba14925bc2f11c2
2013-01-14 11:46:57 +13:00
Ehsan Akhgari
631b308649
Backed out 14 changesets (bug 804387) because of Android M2 crashes
...
Backed out changeset 80e8530f06ea (bug 804387)
Backed out changeset 3de2271ad47f (bug 804387)
Backed out changeset 00f86870931c (bug 804837)
Backed out changeset 0e3f20927c50 (bug 804387)
Backed out changeset e6ef90038007 (bug 804387)
Backed out changeset 0ad6f67a95f9 (bug 804387)
Backed out changeset d0772aba503c (bug 804387)
Backed out changeset 5477b87ff03e (bug 804387)
Backed out changeset 1d7ec5adc49f (bug 804387)
Backed out changeset 11f4d740cd6c (bug 804387)
Backed out changeset e6254d8997ab (bug 804387)
Backed out changeset 372322f3264d (bug 804387)
Backed out changeset 53d5ed687612 (bug 804387)
Backed out changeset 000b88ac40a7 (bug 804387)
2013-02-05 01:29:28 -05:00
Ehsan Akhgari
748ef8700c
Backed out 3 changesets (bug 836076) becasue bug 804387 is getting backed out
...
Backed out changeset d567b1bb34ad (bug 836076)
Backed out changeset 51f7c9e31f9a (bug 836076)
Backed out changeset 901c735274bc (bug 836076)
--HG--
rename : content/media/AudioEventTimeline.h => content/media/webaudio/AudioEventTimeline.h
2013-02-05 01:28:38 -05:00
Ehsan Akhgari
3b924bf73e
Bug 836076 - Part 2: Make it possible to send AudioEventTimeline objects as commands to the MSG thread; r=roc
2013-01-28 17:42:27 -05:00
Robert O'Callahan
f4306b8a20
Bug 804387. Part 8: Create AudioNodeEngine and AudioNodeStream. r=jesup
...
Modifies MediaStreamGraph to always advance its time by a multiple of
WEBAUDIO_BLOCK_SIZE.
2013-01-14 11:46:57 +13:00