Karl Tomlinson
21ac35b75a
b=921675 use maximum instead of current delay for tail time because delay can increase faster than time passes r=ehsan
...
--HG--
extra : rebase_source : b74864829e5fa0cdfbd555d93d2c71dd656f2258
2013-10-01 09:50:03 +13:00
Gregory Szorc
c44d9c8614
Bug 920223 - Part 1: Mass convert MOCHITEST_FILES to manifests; rs=Ms2ger
2013-09-30 09:51:57 +02:00
Ed Morley
eae8f15a4a
Backed out changeset 77bff106b704 (bug 920223)
2013-09-30 12:50:12 +01:00
Gregory Szorc
3d0a157ac2
Bug 920223 - Part 1: Mass convert MOCHITEST_FILES to manifests; rs=Ms2ger
2013-09-30 09:51:57 +02:00
Karl Tomlinson
04e5132bbb
b=912474 use speex_resampler_process_int on platforms where speex_resampler_process_float expects samples in the range +/-32767 r=ehsan
...
--HG--
extra : rebase_source : 48b08dc174e49d26b80ac4e439f97c5e2fa65f58
2013-09-28 12:16:57 +12:00
Karl Tomlinson
dda93e86d7
b=920987 check for ovrflw in addition r=ehsan
...
--HG--
extra : rebase_source : 759d416f4697bb60dd24b104678b6fb259ee308d
2013-09-28 12:11:26 +12:00
Matthew Gregan
8d51f7a552
Bug 920867 - Split VideoInfo into Video and Audio objects, then encapsulate in new MediaInfo object. r=cpearce
2013-09-27 17:22:38 +12:00
Karl Tomlinson
ac34407a47
b=918221 don't remove OscillatorNode playing ref on stop() but wait until finished r=ehsan
...
--HG--
extra : transplant_source : %A6%90%DB%00%FD5.%40%ED%F6l%17%E69E%D6%40%B5%EA%2A
2013-09-24 13:48:56 +12:00
Karl Tomlinson
41f2afcff3
b=918213 dispatch onended from OscillatorNode even when stop time is before start r=ehsan
...
This makes OscillatorNode consistent with AudioBufferSourceNode
--HG--
extra : transplant_source : %AE8%3B%B4%E5M%60%03%CBN.%21%BD%FF%60%A6%F2a%BDi
2013-09-24 13:48:35 +12:00
Karl Tomlinson
0fa976d665
b=918212 make OscillatorNode a MainThreadListener for its stream so that ended is dispatched r=ehsan
...
--HG--
extra : transplant_source : %9D%B8%82%B3%B1%99%C6%CE%1C%E1%DDs%D1%40%EA%E3%DD%D2%01%A4
2013-09-24 13:47:30 +12:00
Karl Tomlinson
369838f31f
b=914033 add active nodes to CC traversal of AudioContext when the context is not rendering r=ehsan
...
An OfflineAudioContext needs to keep references to nodes that will be used if
startRendering() is called. If, however, the last reference to the Context is
removed, then startRendering() will not be called and so the nodes will not be
used and can be unlinked now.
--HG--
extra : transplant_source : %D4%91%0B%99K%2A%3E%906%1D%08%5D%60%84%B8%25O%3C%08D
2013-09-24 13:47:30 +12:00
Karl Tomlinson
c56ab2cb32
b=914033 use AudioContext::RegisterActiveNode() in AudioBufferSourceNode r=ehsan
...
Storing references on the AudioContext instead of on the AudioNodes will allow
the AudioContext to report them to the cycle collector until offline rendering
starts.
--HG--
extra : transplant_source : %13%87%97%9F%CD%D8V%16%D2%D4%B5%84D%0A%D6%02%9BNj%FC
2013-09-24 13:47:00 +12:00
Karl Tomlinson
98b52b4d99
b=914033 use AudioContext::RegisterActiveNode() in ScriptProcessorNode r=ehsan
...
Storing references on the AudioContext instead of on the AudioNodes will allow
the AudioContext to report them to the cycle collector until offline rendering
starts.
--HG--
extra : transplant_source : %CD%5Els2%7F/%DD%5E%07%08%FE%29%5B%98%95%F3%11G%E6
2013-09-24 13:46:30 +12:00
Karl Tomlinson
89cd46ef7d
b=914033 use AudioContext::RegisterActiveNode() in OscillatorNode r=ehsan
...
Storing references on the AudioContext instead of on the AudioNodes will allow
the AudioContext to report them to the cycle collector until offline rendering
starts.
--HG--
extra : transplant_source : %81%83Hp%F6T%E7%9EA%B3%D0%5Dz%EA%1FYv%A2%23%ED
2013-09-24 13:45:41 +12:00
Paul Adenot
5c66861bdf
Bug 881959 - Clamp the DelayNode.delayTime to 128/AudioContext.sampleRate when in a cycle. r=ehsan
...
--HG--
extra : rebase_source : 7cf8945371bb6ff169ad61a8ccdda0ece36b5e83
2013-09-02 15:15:24 +02:00
Paul Adenot
d72b8f68e2
Bug 881959 - Tests for cycles in WebAudio graphs. r=ehsan
...
--HG--
extra : rebase_source : 5366c6aa0bb59f14adee74a3088488f9b15b52b1
2013-09-02 15:14:51 +02:00
Paul Adenot
a1241e028e
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
Karl Tomlinson
9afb11760d
b=917260 null check mDestination in AudioContext::Shutdown() r=ehsan
...
This handles the case where Shutdown() is called after Unlink()
(but before the destructor).
--HG--
extra : transplant_source : %97A%BE%60%F5j%F5%F0GT%C2%B6%F8%A2%BD%13%2B%02%83R
2013-09-19 12:04:13 +12:00
Paul Adenot
c94c62d6d1
Bug 917260 - Nullcheck Destination() in AudioContext::DestinationStream. r=ehsan
2013-09-17 15:23:52 +02:00
Ralph Giles
ee917522f4
Bug 865256 - Part 4: Implement custom waveforms. r=ehsan,padenot
...
Copy the periodicWave data into a shareable buffer.
Add a SetBuffer call to send the buffer data to the
OscillatorNodeEngine. Call into blink's PeriodicWave
implementation to generate bandlimited tables bracketing
the desired frequency and interpolate the output data
from them.
Change the PeriodicWave constructor to only take one
length, since both arrays must be the same size.
Change OscillatorNode's SetType to throw INVALID_STATE
instead of NOT_IMPLEMENTED if js tries to assign
type = 'custom' directly.
2013-08-28 15:39:26 -07:00
Ralph Giles
260debb621
Bug 865256 - Part 3d: Port blink's PeriodicWave to gecko. r=ehsan
...
Changes to use gecko infrastructure.
2013-09-10 14:33:03 -07:00
Ralph Giles
96f4f677b2
Bug 865256 - Part 3c: Import blink's PeriodicWave. r=ehsan
...
From 3807300c75ae70f004b76cbce023e59a0367e09b Mon Sep 17 00:00:00 2001
This is the original code from blink svn trunk r157670 for reference.
This commit has no porting or build support, to make subsequent changes
easier to identify.
2013-09-10 14:29:51 -07:00
Ralph Giles
7d11abd2ed
Bug 865256 - Part 3b: Add a complex->real ifft to FFTBlock. r=ehsan
...
From ea43bceaf8f6dd2c44d7f55a45f770be19b335a5 Mon Sep 17 00:00:00 2001
Currently FFTBlock only holds the complex frequency domain data
internally, reading and writing to external time domain data
buffers. For PeriodicWave we need to create a real, time domain
signal from real and imaginary frequency domain data. This method
does this without touching the internal output buffer at all.
FFTBlock is just used as a wrapper for kiss_fft_cfg.
2013-09-10 11:00:17 -07:00
Paul Adenot
8281440e86
Bug 908669 - Use band-limited impulse trains (BLIT) for OscillatorNode. r=rillian
...
This fixes the aliasing noise in the default oscillator types.
2013-09-17 10:36:00 -07:00
Karl Tomlinson
24edb394d3
b=916680 don't keep active AudioNodes alive from an AudioContext that has shut down r=ehsan
...
--HG--
extra : transplant_source : %20%3Fl%E0%D7R%7B_%E6%B0%C7%BB%3A%E7%21%9D%F1%A2%F4%1C
2013-09-18 13:10:30 +12:00
Karl Tomlinson
7445da2394
b=910171 register tail references with the AudioContext so they can be removed when the rendering is complete r=ehsan
...
--HG--
extra : transplant_source : %8C%C3%C2%2B%1B%E9Q%9B%0E%DE%B4%AA%02%B2%D1%A0S%F1%EC%0D
2013-09-17 11:54:52 +12:00
Karl Tomlinson
cf1704526c
b=910171 add a general means to keep active nodes alive from the AudioContext r=ehsan
...
AudioNodes that keep playing or tail-time references need to have these
references cleared when an AudioContext has completed or is shut down by the
window.
Storing references on the AudioContext instead of on the AudioNodes will allow
the AudioContext to report playing references to the cycle collector until
offline rendering starts for bug 914033. This is not necessary for tail-time
references, but it is tidier to use the same code for playing and tail-time
references.
--HG--
extra : transplant_source : %E0%F1%06%BFV%B6XI%9BX%8E%8D7%3FsU%8F%F9%14r
2013-09-17 11:53:40 +12:00
Karl Tomlinson
92875436fc
b=916422 make OfflineAudioContext::StartRendering() throw if called more than once r=ehsan
...
--HG--
extra : transplant_source : %B6T%C0C%F0/%03%A3C%25%9B%EF%A8%C41%8E%86%E9%FCr
2013-09-16 17:14:45 +12:00
Paul Adenot
debbe3e4f9
Bug 916773 - Initialize mLatency in SharedBuffer's constructor. r=ehsan
2013-09-16 17:37:26 +02:00
Ehsan Akhgari
d2564b10a0
Bug 917299 - Remove some dead code in content/ and dom/; r=bzbarsky
2013-09-17 12:49:07 -04:00
Ed Morley
00f3b24a4a
Backed out changeset 9524b1df278e (bug 908669)
2013-09-17 17:14:58 +01:00
Ed Morley
e41d9b2e38
Backed out changeset fb89f2090779 (bug 881959)
2013-09-17 17:14:55 +01:00
Ed Morley
f4ceaf273d
Backed out changeset b221626331b4 (bug 881959)
2013-09-17 17:14:45 +01:00
Ed Morley
8c4903c766
Backed out changeset 2aa38a1a2b06 (bug 881959)
2013-09-17 17:14:42 +01:00
Ed Morley
1cc15c93a8
Backed out changeset 3d2aac8dc618 (bug 916773)
2013-09-17 17:14:39 +01:00
Ed Morley
e332c5a8a3
Backed out changeset 4323508b3412 (bug 917260)
2013-09-17 17:14:33 +01:00
Ed Morley
d18e1da31d
Backed out changeset 7d17f2d129e3 (bug 881959)
2013-09-17 17:14:26 +01:00
Paul Adenot
be744b48ec
Bug 881959 - Fix inbound bustage on XP again, on a CLOSED TREE.
2013-09-17 17:25:33 +02:00
Paul Adenot
bcf3bcf9e1
Bug 917260 - Nullcheck Destination() in AudioContext::DestinationStream. r=ehsan
...
--HG--
extra : rebase_source : daec86b27d8497ba109ca998f0fccf3d6d7c3677
2013-09-17 15:23:52 +02:00
Paul Adenot
656251df58
Bug 916773 - Initialize mLatency in SharedBuffer's constructor. r=ehsan
...
--HG--
extra : rebase_source : a40fb148498981c1a65a5cd9756201b90d8d98a4
2013-09-16 17:37:26 +02:00
Paul Adenot
dd1bca1a88
Bug 881959 - Clamp the DelayNode.delayTime to 128/AudioContext.sampleRate when in a cycle. r=ehsan
...
--HG--
extra : rebase_source : 5282e468fbe411a455f65bc0d22b16163db4bd7a
2013-09-02 15:15:24 +02:00
Paul Adenot
8e9b067d72
Bug 881959 - Tests for cycles in WebAudio graphs. r=ehsan
...
--HG--
extra : rebase_source : 6673c86a52952d05e3fdf60205250379ad27d82f
2013-09-02 15:14:51 +02:00
Paul Adenot
e1cb07fb80
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
Paul Adenot
7da3e08fa2
Bug 908669 - Use band-limited impulse trains (BLIT) for OscillatorNode. r=rillian
...
--HG--
extra : rebase_source : c786c507b48a1fcdd49e7c14482d621a463f6c9c
2013-09-16 16:48:33 +02:00
Ehsan Akhgari
1a541f0ce4
Bug 915524 - Implement AudioBuffer.copyFromChannel and AudioBuffer.copyToChannel; r=roc
2013-09-17 07:30:32 -04:00
Karl Tomlinson
45ad762f15
b=914030 don't keep alive used AudioContexts from the window r=ehsan,bz
...
--HG--
extra : transplant_source : %9D%94%FF%AA%92%C7%5B8%FA%C7%DD%3A%E3W%9E%BD%7F%25%5C%19
2013-09-12 16:16:53 +12:00
Karl Tomlinson
bc5038c3ed
b=914030 keep a self reference on destination while offline context is rendering r=ehsan
...
--HG--
extra : transplant_source : %FAk%98%E7%CB%2C%C6uf%EE%F4%CFq%3D%A7%D1%D6%E9%F1%29
2013-09-10 17:10:53 +12:00
Karl Tomlinson
a76b6b5b67
b=914030 shutdown an OfflineAudioContext when it has completed r=ehsan
...
This is needed to remove self-references in the graph when no more processing
will take place on the graph.
--HG--
extra : transplant_source : %EC%82%A8s%3D%08%E4%FB%8C%A5%A6%28d/2%89Rz%98s
2013-09-10 17:10:36 +12:00
Karl Tomlinson
0a09f0a607
b=914030 shut down an AudioDestinationNode's graph on destruction, if not already r=ehsan
...
This means that the graph will be shutdown properly, even if the
AudioDestinationNode is unlinked before AudioContext::Shutdown() is called.
Making MediaStreamGraph::DestroyNonRealtimeInstance() idempotent also makes
AudioContext::Shutdown() idempotent.
--HG--
extra : transplant_source : jZ%86%C5%C2n%17%EF%C2%C0y%ED%14%0E%17_dt%0C%07
2013-09-10 17:05:22 +12:00
Karl Tomlinson
3ad31f44b9
b=914030 remove MediaBufferDecoder::Shutdown(), no longer necessary since bug 900711, as part of making AudioContext::Shutdown() idempotent r=ehsan
...
--HG--
extra : transplant_source : %A8%BB%7D%A3%A6%87NF%F3%9D.Lu%D4%15B%10%9C%DFR
2013-09-10 17:03:06 +12:00
Karl Tomlinson
e648dc5bdf
b=914030 update AudioNode ownership comment r=roc
...
--HG--
extra : transplant_source : %B2z%F7%B7%8F%0F%AB%95N%B0%82%AC%8D%917%1B%84%3D%3A%9C
2013-09-10 16:35:47 +12:00
Karl Tomlinson
37d1cdc340
b=914013 tighten detection of end of buffer playback r=ehsan
...
--HG--
extra : transplant_source : %40%3F%5D%9A%05%87b%97%12%7BO%8A%2Ai%F38%98%F4.%DF
2013-09-10 15:39:19 +12:00
Karl Tomlinson
df1cfede63
b=911777 collect cycles before getting maxChannelCount to release some cubeb streams r=padenot
...
--HG--
extra : transplant_source : %C3W%96%C2J%B9%B4V%9C%C0yA%10%09%7B%B2%17%D8%E0R
2013-09-07 00:33:32 +12:00
Ms2ger
4db82f5aba
Bug 913923 - Part b: Move OwningNonNull into its own header; r=dzbarsky
...
--HG--
rename : dom/bindings/BindingUtils.h => dom/bindings/OwningNonNull.h
2013-09-10 09:03:37 +02:00
Ehsan Akhgari
3b48889d78
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-05 16:25:17 -04:00
Ehsan Akhgari
22fac42fb0
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
2ce2ec0cdb
Bug 912702 - Minimize the #includes in content/media; r=roc
2013-09-04 17:58:14 -04:00
Robert O'Callahan
8ca63f18ef
Bug 910989. Remove nsTHashtable::Init, fallible allocation, and MT hashtables. r=ehsan,bsmedberg
...
--HG--
extra : rebase_source : 0787130b1814c74bfb38dc178de94022f0b2e64e
2013-09-02 20:41:57 +12:00
Mike Hommey
05b3f24e0e
Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps
2013-09-05 09:01:46 +09:00
Karl Tomlinson
1a85e41f2d
b=906966 limit ScriptProcessorNode input channel count through channelCount and channelCountMode r=ehsan
...
--HG--
extra : transplant_source : %E6-%8A%10%BEb%FEg%8C%C3f%2C%1F%C6%859%E5%27%1C%60
2013-09-05 07:44:37 +12:00
Karl Tomlinson
c20bae4715
b=906966 limit ConvolverNode and PannerNode input channel count through channelCount and channelCountMode r=ehsan
...
--HG--
extra : transplant_source : %8A%FB%BC%D3%D0%F3Ct%A5%D1%B1%AF%3D%9Bk%896%7F%7F%1F
2013-09-05 07:44:35 +12:00
Karl Tomlinson
6d3883eb46
tests for convolver and panner channelCount b=906966
...
--HG--
extra : transplant_source : %17%A2WFH%18%7E-c%2CZVC%AAc%85%FB%02%BE%BD
2013-09-05 07:44:04 +12:00
Karl Tomlinson
37e079bc4d
b=907986 remove unused ThreeDPoint::Distance() r=padenot
...
--HG--
extra : transplant_source : %19%DD%A9%CB%CC%B1%C42%E2%8EY%CE%22%89o_%97i%03_
2013-09-04 21:21:00 +12:00
Karl Tomlinson
74e3f50648
b=907986 handle zero front-right plane projection without NaNs r=padenot
...
The azimuth calculation in the Web Audio spec becomes undefined in this
situation as it requires normalizing a zero vector. The panning effect should
not depend on azimuth when the source is directly above the listener (because
position does not depend on azimuth), but the specified "equalpower" panning
model does depend on azimuth even at this elevation. Setting azimuth to zero
produces the same result as if the normalized projection were replaced with a
zero vector.
--HG--
extra : transplant_source : f%A4h%CB7%7Bp%87%AE%09%9F%2Cu%D7%CD%9D%5E%A8%EC%0D
2013-09-04 21:20:59 +12:00
Karl Tomlinson
33b9dff05b
test equalpower panning effect with panner directly above b=907986
...
--HG--
extra : transplant_source : %8E%99%9B%F8%288%5C%A5%E8%D1%C3%E2%9F%89%5C%D0C%B1l%B0
2013-09-04 21:20:59 +12:00
Karl Tomlinson
2a2ab79432
b=907986 normalize orientation vectors early and keep existing state if directions are undefined r=padenot
...
Normalizing the AudioListener front orientation vectors before taking their
cross product avoids the possibility of overflow.
The panning effect and the azimuth and elevation calculation in the Web Audio
spec becomes undefined with linearly dependent listener vectors, so keep
existing state in these situations.
PannerNode orientation is normalized for consistency, but zero is permitted
for this vector because the sound cone algorithm in the Web Audio specifies
behavior for this case.
--HG--
extra : transplant_source : %DA%C7e%E7%90%14%AF%EA%08%94x%C1%A2g%F1%9A%EE%16%EB%29
2013-09-04 21:20:59 +12:00
Karl Tomlinson
b88e8922d4
b=907986 avoid under and overflow in Normalize() r=padenot
...
--HG--
extra : transplant_source : %83%C5%A4%92%28%2Bf%7DHT%13%DE7L%26%B89x%E4%FF
2013-09-04 21:20:58 +12:00
Karl Tomlinson
6d0652f9c8
b=907986 don't calculate upProjection twice r=padenot
...
--HG--
extra : transplant_source : %8E%E1r%9F%AC%EB%C6%9A%EE_%10%0F%B9%1D%EF%85%EBu%CD%96
2013-09-04 21:20:58 +12:00
Karl Tomlinson
14736f8cee
revert 3171b6ad0055 b=907986
...
--HG--
extra : transplant_source : K%83%1FS%27%A7%20%82%C4P%08%E5n%8C%830%B6%2C%24%97
2013-09-04 15:02:04 +12:00
Matthew Gregan
a9561ded0b
Bug 911059 - Move WebAudio's BufferDecoder to its own file so it can be shared with MSE. r=cpearce
2013-09-04 15:08:11 +12:00
Andrew McCreight
3228f67147
Bug 883920 - use templates for {Hold,Drop}JSObjects. r=peterv
2013-08-16 13:10:17 -07:00
Paul Adenot
252e552736
b=907986 part 3 fold-in 1 remove normalize of unit vector r=padenot
2013-09-03 10:52:55 +02:00
Karl Tomlinson
dbed0acd62
b=911777 disable test_delayNodeAtMax.html on Ubuntu(|64) opt builds
...
--HG--
extra : transplant_source : %27%3E%E7%B8%81%F6%AAg%A8%B0H%86%97%C5/V6%B8%FCh
2013-09-03 12:54:37 +12:00
Karl Tomlinson
6efcdee9de
use existing named constants b=890528
...
--HG--
extra : transplant_source : %C9%F5%23%A2%CC%D0%E5v%F4%7B%ED%93%0C%B6%D7%E3%CC%C5%B1%A1
2013-09-02 16:53:15 +12:00
Karl Tomlinson
a760b49eba
remove unintentional ! in ed23ecc80370 to test expected buffer frame count when length is supplied b=890528
...
--HG--
extra : transplant_source : %BB%8E%A8%C2BBFr%A4D%28VG%84%2A%AE%A3qZ%81
2013-09-02 16:53:15 +12:00
Karl Tomlinson
cf7b81a5bf
test for bug 891254
...
--HG--
extra : transplant_source : %FE%D3%7F%0F%3Da%3A%D9u6Hx2%E22%15fn%14H
2013-09-02 16:52:15 +12:00
Nicholas Nethercote
d74157039d
Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
...
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Karl Tomlinson
dbc5b73a3e
b=890528 Record silence in the delay buffer when there is no input, to avoid echos r=ehsan
...
--HG--
extra : transplant_source : x%A5%D0%A8%F9%7B%7DX%AA%C5%04%7E.%2C%B6%3A%EF%3F%08%5E
2013-09-02 12:59:34 +12:00
Karl Tomlinson
eb237f5e62
b=890528 delay buffer must be greater than max delay frames to avoid reading what has just been written r=ehsan
...
--HG--
extra : transplant_source : %86L%3C%C2%F0%A79%E4w%F6u%FD%11d%A9%FCu%F90%E8
2013-09-02 12:59:34 +12:00
Karl Tomlinson
88ea5a6a50
test for bug 890528
...
--HG--
extra : transplant_source : B%22%1A%B5%E9%03%D1%A4%D9%20%F7%12%FA%09%10%14%A0%19x%BA
2013-09-02 12:59:31 +12:00
Karl Tomlinson
5ab5819cdc
b=890528 add more documentation and make length optional when createExpectedBuffers is present r=ehsan
...
--HG--
extra : transplant_source : R%7DJo%87%0C%0D%0FuX%C4%BC%C0%95%08b%5D%DA%D1%BF
2013-09-02 11:27:44 +12:00
Paul Adenot
50c6309859
Bug 881092 - Test that we can decode multichannel WAVE file only when using decodeAudioData. r=ehsan
...
--HG--
extra : rebase_source : fe1cb35be9a1197b01a6c90654abd825f28a67e5
2013-08-29 11:44:05 +02:00
Paul Adenot
3358457bfc
Bug 881092 - Allow decoding files we know we can't play, in the context of WebAudio. r=kinetik,rillian
...
--HG--
extra : rebase_source : ebad931aede2f8225404625e90a5f3228c4a31c0
2013-08-29 11:43:44 +02:00
Brian O'Keefe
0ee041b9fd
Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal
2013-08-15 09:02:09 -04:00
Paul Adenot
0f74c3e49b
Bug 908144 - Don't output sound before start() is called when using OscilatorNode. r=ehsan
2013-08-26 11:46:33 +02:00
Kyle Huey
bf31d78a83
Bug 903772: Part 3 - Refactor GlobalObject. r=peterv
2013-08-22 22:17:08 -07:00
Ms2ger
dd3ed79f0d
Merge PGO-green changeset from inbound to m-c.
2013-08-22 10:31:44 +02:00
Ms2ger
fa65b962f6
Bug 883284 - Part b: Move LIBXUL_LIBRARY into moz.build (a-c); r=joey
2013-08-22 08:55:59 +02:00
Ms2ger
66214743ad
Bug 882859 - Part b: Move FAIL_ON_WARNINGS into moz.build; r=joey+gps
2013-08-22 08:55:59 +02:00
Ehsan Akhgari
2a87c95927
Bug 904695 - #include fewer headers in nsContentUtils.h; r=jst
2013-08-21 15:28:26 -04:00
Ralph Giles
32a4c9234d
Bug 865253 - Part 5: Shorten a comment to fit in 80 columns. r=ehsan
2013-08-19 11:58:00 -07:00
Ralph Giles
b2a2d1d336
Bug 865253 - Part 4: Stop OscillatorNodes on context shutdown. r=ehsan
...
Like AudioBufferSourceNode and ScriptProcessorNode, OscillatorNode
holds a self-reference in mPlaying. Keep track of all osc nodes
in the AudioContext and explicitly stop them to make sure this
reference is dropped.
2013-08-19 11:57:00 -07:00
Ralph Giles
b6cd82c798
Bug 865253 - Part 3: Direct generation of fixed oscillator types. r=ehsan
...
Simple direct calculation of the fixed types.
We probably want to use the PeriodicWave machinery to generate
the pre-defined waveforms once it's available. In either case
we can optimize this significantly by caching the generated
waveform when the frequency is stationary over the block.
2013-08-19 11:56:00 -07:00
Ehsan Akhgari
8ac7f2d7eb
Bug 865253 - Part 2: Implement the alternate enum values for OscillatorNode; r=roc
2013-08-19 11:54:00 -07:00
Ehsan Akhgari
d323ec880a
Bug 865253 - Part 1: Implement the DOM bindings for OscillatorNode; r=roc
2013-08-19 11:53:00 -07:00
Ehsan Akhgari
1bb70455b6
Bug 905409 - Minimize the Web Audio #includes; r=roc
2013-08-15 15:44:14 -04:00
Wes Kocher
0e341ba80c
Backed out changeset 016fa89e49b0 (bug 905409) on a CLOSED TREE
2013-08-14 17:21:45 -07:00
Ehsan Akhgari
e73f6e995f
Bug 905409 - Minimize the Web Audio #includes; r=roc
2013-08-14 18:46:00 -04:00
Paul Adenot
67460f4277
Bug 899135 - Drop buffers in ScriptProcessorNode instead of buffering them when the main thread is blocked. r=roc
2013-08-13 19:34:22 +02:00
Ms2ger
6ec28362b3
Bug 901323 - Don't include nsContentUtils.h unnecessarily; r=jlebar
2013-08-14 08:56:21 +02:00
Paul Adenot
df42bbf5c3
Bug 903476 - Fuzz a bit more and android as well.
...
--HG--
extra : rebase_source : 57d9a1ed3549a0c8a2af9fb8be42b5823f21a2ec
2013-08-13 15:56:42 +02:00
Paul Adenot
a458f5268f
Bug 903476 - Fuzz a bit more on win32.
...
--HG--
extra : rebase_source : 321848369a2f2401b1fcaf287bfbcd049a7c299c
2013-08-13 14:48:36 +02:00
Paul Adenot
e46e821b3e
Bug 903476 - Update the fuzzing values in test_mediaDecoding.html because we changed the resampler. r=ehsan
...
--HG--
extra : rebase_source : 3b354018ba83f53cf64d6adb511c41dfcb205039
2013-08-13 12:44:34 +02:00
Karl Tomlinson
6cb557818b
b=815643 Implement HRTF panner processing based on Blink implementation r=ehsan
...
--HG--
extra : rebase_source : 197fd6f39d3d45b61d25d9dc399c72828d93655a
2013-08-09 10:08:06 +12:00
Karl Tomlinson
f90f9409c0
b=815643 Add Blink's HRTFPanner to the build r=ehsan
...
--HG--
extra : rebase_source : 14187eb58d308c25b3ff37356a1aef6757aee81d
2013-08-09 10:07:49 +12:00
Karl Tomlinson
3d1106b19c
b=815643 Refactor DelayNodeEngine delay processing into a shareable class r=ehsan
...
--HG--
extra : rebase_source : e25ff3e490c2cbce5ed7cdf9419ccc2850ea16e5
2013-08-09 10:07:49 +12:00
Karl Tomlinson
6f77a7975e
b=865241 don't join HRTFDatabaseLoader thread until it has finished r=ehsan
...
Also turn some always-true conditions into assertions.
--HG--
extra : rebase_source : a38b75a1a27f25cef7b9dd86a1cca15ce9f67893
2013-08-09 10:07:42 +12:00
Karl Tomlinson
06048fd447
b=865241 make HRTFDatabaseLoader ref-counting thread-safe r=ehsan
...
--HG--
extra : rebase_source : 8cab96807c111eb103dbe931d14a86a8b97a824e
2013-08-09 09:59:56 +12:00
Karl Tomlinson
f2dad7aedd
b=815643 Add Blink's HRTFDatabase and HRTFDatabaseLoader to the build r=ehsan
...
--HG--
extra : rebase_source : e7aa0ce1ca436bbb429cb1f6051b3b8210bf767a
2013-08-09 09:56:28 +12:00
Karl Tomlinson
f0d4966e17
b=815643 Add Blink's HRTFElevation to the build r=ehsan
...
--HG--
extra : rebase_source : 5dda0b6c6302197574ac5fafbb0f06b1ac65980a
2013-08-08 21:38:30 +12:00
Karl Tomlinson
be0aa554a0
b=815643 Reduce convolver fft size for low sample rates r=ehsan
...
--HG--
extra : rebase_source : 0d7c6d4a3bcb340fc674f0b4181cf264fcc4e041
2013-08-08 21:38:30 +12:00
Karl Tomlinson
e54cf1e0c0
b=815643 Add code to interpret and resample impulse response data r=ehsan
...
--HG--
extra : rebase_source : 35497353634022f297b2ebf333b7230b12c1f9c2
2013-08-08 21:38:30 +12:00
Karl Tomlinson
d4a45b39b6
b=815643 Add HRTF impulse response data r=ehsan
...
The impulse response sample data is directly from individual impulse response wave files
in Blink SVN revision 153183.
--HG--
extra : rebase_source : 037471efd5be1f0d4a798bcc01192db9398377c2
2013-08-08 21:38:30 +12:00
Karl Tomlinson
583218c666
b=815643 Use symmetry to halve the number of HRTF kernels calculated and cached r=ehsan
...
--HG--
extra : rebase_source : 12e4a114630e793c22d3e335c38c641a6bc20ee2
2013-08-08 21:38:29 +12:00
Karl Tomlinson
3bfb5507c3
b=815643 Add Blink's HRTFKernel to the build r=ehsan
...
A functional difference is that HRTFKernel is not reference-counted.
--HG--
extra : rebase_source : 66a9653fed75265ec55d915b731876bcb793d513
2013-08-08 21:38:29 +12:00
Karl Tomlinson
a650122f64
b=865241 always leave 20 samples of headroom when extracting group delay, removing the discontinuity at delay = 20 r=ehsan
...
--HG--
extra : rebase_source : 30515ea2236b7503ff7e446d50930f91135bc7e0
2013-08-08 21:38:29 +12:00
Karl Tomlinson
d494799ed1
b=815643 Add Blink's frequency interpolation and group delay methods from FFTFrame to FFTBlock r=ehsan
...
--HG--
extra : rebase_source : 1e3393c85f1828cbcce49af1e3160fc3535d39b8
2013-08-08 21:38:24 +12:00
Karl Tomlinson
0e2cb4c001
b=865241 don't try to compute a phase for group delay from the DC and nyquist components of the DFT r=ehsan
...
Given imagP[0] is really realP[halfSize], it doesn't make sense to calculate a
phase from placing the DC and Nyquist components in different directions.
The DC component doesn't have a phase offset and lastPhase is already
initialized to zero.
This makes extractAverageGroupDelay() consistent with addConstantGroupDelay()
and to some extent interpolateFrequencyComponents().
The effect of the bug would have been small for reasonably sized FFTs.
--HG--
extra : rebase_source : b2931d625bd7e014f123b576f28aad7f719c585d
2013-08-08 21:37:36 +12:00
Karl Tomlinson
a7e95885f3
b=815643 remove unused HRTF code r=ehsan
...
--HG--
extra : rebase_source : f6063443b6e7574055b0ad92e95e32d7f0a850cd
2013-08-08 21:37:36 +12:00
Karl Tomlinson
d1fd66224a
b=815643 Import the HRTF panner implementation from Blink r=ehsan
...
This code was copied from Blink SVN revision 153183.
--HG--
extra : rebase_source : 968f69846f5c532eda3580c8ce2176e2e6b5fc63
2013-08-08 21:37:36 +12:00
Ryan VanderMeulen
13be9bc4d0
Merge inbound to m-c.
2013-08-09 19:08:45 -04:00
Nathan Froyd
149b32cc38
Bug 901615 - don't include BindingUtils.h in AudioContext.h; r=roc
2013-08-05 13:40:06 -04:00
Paul Adenot
ef23a9ac06
Bug 897092 - Fix setTargetAtTime glitch. r=ehsan
...
--HG--
extra : rebase_source : 8b1162e7721637df2b8a2faad849609d3177369b
2013-08-09 15:11:03 +02:00
Robert O'Callahan
537a0a5351
Bug 856361. Part 8: Fix copying of track data from input streams to output streams in AudioNodeExternalInputStream. r=padenot
...
--HG--
extra : rebase_source : 344780d9c27ce3026ae5c12a08ea6a1ba3b4e924
2013-08-01 16:02:49 +12:00
Ehsan Akhgari
d6eeb2dccd
Bug 855568 - Implement MediaElementAudioSourceNode
...
X-Git-Commit-ID: 52f1fcdd561e8214e6820a3f2478d9e8b9623430
--HG--
extra : rebase_source : c40cd0c7070dec9e0273093499228f13906f8fc5
2013-07-25 15:01:49 +12:00
Robert O'Callahan
306005fb0f
Bug 856361. Part 6: Make MediaStreamAudioSourceNode keep its DOMMediaStream alive, and make the DOMMediaStream keep the MediaStreamAudioSourceNode alive. r=ehsan
...
--HG--
extra : rebase_source : 0e3b5108d8ced8b1f1f427c9fd4f87e97c46921d
2013-07-25 14:07:34 +12:00
secretrobotron
2c86644947
Bug 856361. Part 5: Implement MediaStreamAudioSourceNode. r=ehsan
...
--HG--
extra : rebase_source : 265f31edda31a2f749eacc568919304622446748
2013-07-24 23:29:39 +12:00
JW Wang
ce885c443c
Bug 875277 - Part 2: Implement WaveShaperNode.oversample - speex. r=ehsan
2013-08-06 14:11:32 +08:00
JW Wang
6d8256114d
Bug 875277 - Part 1: Implement WaveShaperNode.oversample - webidl enums. r=ehsan
2013-08-06 14:15:07 +08:00
Ryan VanderMeulen
19f45ff72d
Backed out changesets aee6b1a6c400 and a633e4d67d31 (bug 875277) for bustage.
2013-08-05 20:47:07 -04:00
JW Wang
ec7bb8499e
Bug 875277 - Part 2: Implement WaveShaperNode.oversample - speex. r=ehsan
2013-08-05 10:34:52 +08:00
JW Wang
5d37ced844
Bug 875277 - Part 1: Implement WaveShaperNode.oversample - webidl enums. r=ehsan
2013-07-26 15:14:35 +08:00
Boris Zbarsky
82ba945cef
Bug 900898 part 2. Move to using Nullable<TypedArray> to represent possibly-null TypedArray structs. r=smaug
2013-08-05 13:40:01 -04:00
Ehsan Akhgari
fa95f63946
Bug 900341 - Shut down the decoder object for an AudioContext from a runnable; r=bent,roc
2013-08-02 12:07:17 -04:00
Mike Hommey
ca80cd82ad
Bug 881323 - Re-implement CycleCollectorParticipant with actual vtables, with constexpr to avoid static initializers. r=mccr8
2013-08-02 10:29:05 +09:00
Ehsan Akhgari
085494b95d
Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
...
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:
# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.cc" \
-o -iname "*.mm" \) | \
xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
modules/libmar/src/mar_private.h \
modules/libmar/src/mar.h
# assert_replacer.py
#!/usr/bin/python
import sys
import re
pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")
def replaceInPlace(fname):
print fname
f = open(fname, "rw+")
lines = f.readlines()
for i in range(0, len(lines)):
while True:
index = re.search(pattern, lines[i])
if index != None:
index = index.start()
lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
for j in range(i + 1, len(lines)):
if lines[j].find(" ", index) == index:
lines[j] = lines[j][0:index] + lines[j][index+4:]
else:
break
else:
break
f.seek(0, 0)
f.truncate()
f.write("".join(lines))
f.close()
argc = len(sys.argv)
for i in range(1, argc):
replaceInPlace(sys.argv[i])
--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Paul Adenot
2c94d0b2f4
Bug 895720 - Actually use the fuzz value.
2013-07-30 11:10:33 +01:00
Paul Adenot
a33021b0b3
Bug 895720 - On MacOS, increase the fuzz factor for test_audioBufferSourceNodeOffset.html.
2013-07-30 11:06:33 +01:00
Ryan VanderMeulen
95c899b5cd
Bug 894941 - Increase fuzz tolerance for the small-shot.ogg mediaDecoding test to resolve a CLOSED TREE.
2013-07-26 15:17:34 -04:00
Robert O'Callahan
bb4a03e7ad
Bug 890716. Fix race in Reverb::Reverb. r=padenot
...
--HG--
extra : rebase_source : 65af577f5ffcf7f7a0b650f1693f4159ddac4ac6
2013-07-26 13:35:22 +12:00
Ms2ger
5ae654e2b6
Bug 885170 - Remove nsINode::GetClassInfo(); r=peterv
2013-07-24 09:31:06 +02:00
Ms2ger
7d7359c752
Bug 888643 - Part b: Move CPP_UNIT_TESTS definitions into moz.build files; r=gps
2013-07-24 09:23:06 +02:00
Joshua Cranmer
46c5cc932a
Bug 884061 - Part 3d: Use NS_DECL_THREADSAFE_ISUPPORTS in content/, r=smaug
...
--HG--
extra : rebase_source : ee869e0ec710259b1f3d1a328bff27c5d2960ea1
2013-07-18 21:21:19 -05:00
Ehsan Akhgari
81722d8e02
Bug 891254 - Fix the usage of uninitialized samples when the input to a ConvolverNode has a volume; r=roc
...
--HG--
extra : rebase_source : 2d7e6c393e66096cf410adce0924843ad2eda61b
2013-07-18 10:22:47 -04:00
Paul Adenot
f0b2dcf9d3
Bug 883591 - Don't allow creating a MediaStreamDestinationNode on an OfflineAudioContext. r=ehsan
2013-07-18 11:57:38 +02:00
Paul Adenot
23e5b0ef24
Bug 894150 - Unregister the PannerNode in the AudioListener when destroying the stream. r=ehsan
2013-07-16 14:45:41 +02:00
Ryan VanderMeulen
01616062a4
Backed out 2 changesets (bug 894150) for crashtest orange.
...
Backed out changeset 80ce41a4e6ee (bug 894150)
Backed out changeset b41c7f2ddda5 (bug 894150)
2013-07-16 12:33:56 -04:00
Paul Adenot
ed960be5bf
Bug 894150 - Test.
2013-07-16 17:39:13 +02:00
Paul Adenot
127e99dd3c
Bug 894150 - Unregister the PannerNode in the AudioListener when destroying the stream. r=ehsan
2013-07-16 14:45:41 +02:00
Paul Adenot
6200078a6f
Bug 891986 - Keep the source ArrayBuffer to a decodeAudioData call alive until the decoding is complete. r=mccr8,ehsan
2013-07-16 11:00:36 +02:00