Commit Graph

649 Commits

Author SHA1 Message Date
Karl Tomlinson
dd57777655 b=938450 reduce the number of offset parameters to compareChannels() f=ehsan
findFirstNonZeroSample() won't return an offset > buffer length, so clamping
the result to <= 2048 is not necessary.

--HG--
extra : transplant_source : %28HV%B3%9A%AA%D6%8C6n%FD%18%AE%D6g%83%03%EA%09%D4
2013-12-03 12:20:46 +13:00
Karl Tomlinson
dace222cfd b=938450 rename compareBuffers to compareChannels & add compareBuffers f=ehsan
--HG--
extra : transplant_source : %93W%BC%84%FF%10%9B%F5%CD5%98%0E%F0/%F2R%B9W%1E%94
2013-12-03 12:13:15 +13:00
Karl Tomlinson
29b88874bc b=938450 test lengths of decoded audio and change 48k wav files to 48k f=padenot
New wave files differ from those generated from ogg files using sox 14.4.1 and
libvorbis 1.3.3 by being one quantum less on about half of the samples.

--HG--
extra : transplant_source : B%27%8F%2B%40%22%C5%25%0CS%22%28%40%C0%C3%0EM%87%87%A7
2013-12-03 12:10:38 +13:00
Karl Tomlinson
9a16789950 b=938450 process all input samples in decodeAudioData r=padenot
--HG--
extra : transplant_source : %01%B2%FE%DA%BE%2CcX%B9%A7%60%15%FB%08%C5%2AS%99%B28
2013-12-03 12:09:01 +13:00
Karl Tomlinson
548089e936 b=937057 provide a null ptr instead of a zero buffer when processing resampler tail r=padenot
--HG--
extra : transplant_source : %8EK%22q%A6%E9%82%F1%5E-%9E%BEs%01%F1%D1Jj%097
2013-12-03 12:07:17 +13:00
Karl Tomlinson
d6f6b39447 b=937475 separate stream position from buffer position so that stop time can use stream position r=ehsan
--HG--
extra : transplant_source : %8C%F0%05w%0A%C6%21%11%D5A4%85%FD%BC%D6%1F%9A%B8%FE%CB
2013-12-03 12:07:17 +13:00
Karl Tomlinson
ce7b116ea7 b=937475 change DURATION from end-offset to duration and compare buffer length using integer sample count r=ehsan
--HG--
extra : transplant_source : %2BS%A0%A1%C04%BC%1D%A7vDh%8E%A4%F7%90%E62%DC%3D
2013-12-03 12:07:17 +13:00
Karl Tomlinson
396f33fc30 b=939491 avoid producing infinite stream of subnormals in BiquadFilterNode tail r=padenot
Using double precision for the processing means the main loop is unlikely to
encounter subnormals and provides suitable extra precision to minimize
accumulation of error.

If the tail output values are denormalized when converted to single precision
then flush them to zero to reduce downstream computation cost.

--HG--
extra : transplant_source : %08%09u%C48%E3i%AB%23%1B%D8_kz%E5%A8_%3D%C4%93
2013-12-03 12:07:16 +13:00
Ehsan Akhgari
fa64c8ac46 Bug 939571 - Build Web Audio in unified mode; r=glandium 2013-11-19 14:11:16 -05:00
Mike Hommey
931cb49886 Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
db9e5129bc Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey
f0d1cd1e10 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
f81885e53b Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Peiyong Lin
1efde4a2e6 Bug 934440 - Statically assert that MEDIA_STREAM_DEST_TRACK_ID is different than AUDIO_TRACK. r=jdm 2013-11-12 08:37:17 -05:00
Ms2ger
786aa40195 No bug - Fix some style issues in DOM code. 2013-11-11 09:04:41 +01:00
Ms2ger
84b1d4041e Bug 931404 - Move LOCAL_INCLUDES to moz.build in content/; r=gps 2013-11-11 09:04:06 +01:00
Karl Tomlinson
a14e81b585 b=931311 wait for HRTF panner to load impulse database before doing test
--HG--
extra : transplant_source : %2A%1F%D0kKSr%AA%8F%C1%26%E5%E6%EC%D5%CF%8C%A9%D11
2013-11-09 14:07:50 +13:00
Karl Tomlinson
6d8f7b4e50 b=936317 prevent MediaBufferDecoder threads from waiting after AudioContext shutdown() r=ehsan
--HG--
extra : transplant_source : %CE%E5O%83N%8FX%ED%2Ck%17I%B1%92%B6%A0lXH%D1
2013-11-09 14:07:45 +13:00
Karl Tomlinson
e59fa0ae11 b=856850 use PodMove for potentially overlapping buffers r=roc
--HG--
extra : transplant_source : %A2%F8%85%0C%08%86%CE%E2%7F%A7X%9F%F1%B7%0E%3F%16%1E%BF%3F
2013-11-05 13:02:55 +13:00
Karl Tomlinson
7a847783e0 Bug 933156 - Don't send null input to EqualPowerPanningFunction. r=roc 2013-11-04 14:22:37 -05:00
Andrea Marchesini
eb960d6739 Bug 925594 - WebIDL enum for AudioChannel in HTMLMediaElement, r=ehsan, r=khuey 2013-10-28 17:08:14 -07:00
Carsten "Tomcat" Book
c225f46a40 Backed out changeset 5506e7033c85 (bug 925594) perma-orange mochitest test-failure on b2g-ics
--HG--
extra : transplant_source : %19E%9F_%BF%84%27%11%0D%DE%CA.%E7%09%9D%FD3%1A2U
2013-10-28 15:34:08 +01:00
Andrea Marchesini
60548554c9 Bug 925594 - WebIDL enum for AudioChannel in HTMLMediaElement, r=ehsan, r=khuey 2013-10-28 03:45:10 -07:00
Karl Tomlinson
a1eb5075e9 b=898291 skip HRTF panner processing when input has been null long enough for output to be null r=ehsan
--HG--
extra : transplant_source : %E4l%83zo%0E%08%14%FF%F7%9D%D6%8C%FD%A2%07a%2A%8Aq
2013-10-25 14:05:43 +13:00
Karl Tomlinson
63f4eca296 b=898291 remove unused PannerNodeEngine model type variables r=ehsan
--HG--
extra : transplant_source : %0F%F0%EB%AF%17%B6%B6%CEI0%857%D8%09%C4%D1%0D%C2.l
2013-10-25 14:05:43 +13:00
Karl Tomlinson
8dadbd29a9 b=898291 erase azimuth/elevation history when reset()ing HRTFPanner r=ehsan
so that old cross-fade info does not distort new sound when a PannerNode
finishes and restarts.

--HG--
extra : transplant_source : I%A9%DAx%9F%AE%B8%88%90FN%3B%3E%FC%FE%827%CB%10%8C
2013-10-25 14:05:42 +13:00
Karl Tomlinson
8cfe28e7d4 mochitest for bug 898291
--HG--
extra : transplant_source : %1F%18%3A%91%21%06%B6%C47%7Ck%83%C7%C8yo%2A%22%A5%02
2013-10-25 14:05:42 +13:00
Karl Tomlinson
d6a5c6d017 b=924288 continue producing BiquadFilter sound output after input becomes null r=ehsan
--HG--
extra : transplant_source : %A6%DDf%09%98C%C0%E6%AEy%F8%F6%FF%7E/f%D7%12Ub
2013-10-25 14:05:42 +13:00
Karl Tomlinson
e336f9c09e b=923301 use MediaStreamGraph to dispatch the other PlayingRefChangeHandlers too r=trivial
--HG--
extra : transplant_source : %A6%9F%81%40%AF%EE_EU%03%BCvZ%0B%1CE%7F%8C%80F
2013-10-25 14:05:41 +13:00
Mike Hommey
f1c0c07862 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Karl Tomlinson
dd65bfc884 b=923301 use MediaStreamGraph to dispatch PlayingRefChangeHandlers r=roc
This reduces the number of events dispatched to the main thread
and ensures these run in order with other pending updates.

--HG--
extra : transplant_source : %5E%235%DEz%EB%7D%C6%C7%F8%AF%A3%84%1F%F9%5B%87D%B3%13
2013-10-25 12:12:33 +13:00
Karl Tomlinson
f6f7c9f710 b=923301 skip reverb processing when input has been null long enough for output to be null r=roc
--HG--
extra : transplant_source : t%F4Fi%7C%FE%A0l%7B%8FT%9D%F8%F8A%15%93%2A%5Bw
2013-10-25 12:12:13 +13:00
Karl Tomlinson
c2bc7b499e b=923301 skip delay processing when nothing is buffered and input is null r=roc
--HG--
extra : transplant_source : %60%1B%88Z%BD%9AoAI%92%FA%B1%E4%A1%EFg%2A%FE%05%8F
2013-10-25 12:12:13 +13:00
Karl Tomlinson
386de8083d b=923301 send only one release message when convolver tail time expires r=roc
--HG--
extra : transplant_source : p%B7dN%D9%A7%DB%F3%FB%A9a%85%BC%2BH%A4uW%A4%84
2013-10-25 12:12:13 +13:00
Karl Tomlinson
dee7a3aafe b=923301 send only one release message when delay buffer is drained r=roc
--HG--
extra : transplant_source : %C7%8Ag%B2%C52X%A2%96%D1%8E%BB%15%E4%15%CC%1D%1Er%B8
2013-10-25 12:12:13 +13:00
Karl Tomlinson
052e134097 b=923301 remove now-unnecessary node-type templating of PlayingRefChangeHandler r=roc
--HG--
extra : transplant_source : %0A%BA%C9%1D%1AX%0Dxg9%3BL%1F%98%BE%98%87%20o%3A
2013-10-25 12:12:12 +13:00
Karl Tomlinson
3e1447602b b=923301 remove now-unnecessary AcceptPlayingRefRelease r=roc
--HG--
extra : transplant_source : %7B%21%18%B17%16%7B%9E%9F%B3%23%17%FD%3DZ%FC%5C%0F%D3%8C
2013-10-25 12:11:24 +13:00
Karl Tomlinson
48993dfb84 b=923301 keep a tail-time reference on DelayNode until *after* the last non-silent block has been produced r=roc
This gives a downstream node a chance to take a tail-time reference when it
receives the last non-silent block from the DelayNode.

--HG--
extra : transplant_source : %B5%7C%E1%F6%00%D4W%D6%A22%0C%F2%0A%2C%60%F2%18%C6%A5%B8
2013-10-25 12:11:24 +13:00
Karl Tomlinson
025cacc39a b=923301 keep disconnected destination nodes alive long enough for their engines to add tail-time references if necessary r=roc
--HG--
extra : transplant_source : %24%5D%7B%3F%7E%87%20%FF%20%09%CE%AD%91%F8%7C%E7%E1%DB%3D%83
2013-10-25 12:11:01 +13:00
Brian O'Keefe
0cbcd904c7 Bug 928709 - Convert chromium-config.mk to mozbuild, r=mshal 2013-10-02 13:17:55 -04:00
Birunthan Mohanathas
3560f05e45 Bug 784739 - Switch from NULL to nullptr in content/; r=ehsan
--HG--
extra : rebase_source : 9237726507e8002479616a98a82646a763932507
2013-10-23 16:34:10 -04:00
Karl Tomlinson
43e6771eef b=925619 simplify loop sanity checks r=ehsan
The removed condition is always satisfied when mLoopEnd > 0.0

--HG--
extra : transplant_source : 4%9F%7C%92%F7-f%05%F96%0F%7C.%AF%8CE%82F%D3%A0
2013-10-23 18:40:11 +13:00
Karl Tomlinson
d4937eede5 b=925619 truncate TrackTicks differences to uint32_t after limiting to WEBAUDIO_BLOCK_SIZE r=ehsan
--HG--
extra : transplant_source : %F6%8B%89C%60%02Hm%11%9FZ%F7I%2BJ%CF%23%8E%CE%D3
2013-10-23 18:36:59 +13:00
Matthew Gregan
d7d00cf46f Bug 927245 - Preliminary work to enable preffing off the deprecated Audio Data API implementation. r=ehsan 2013-10-18 15:10:56 +13:00
JW Wang
b68260ee29 Bug 927322 - AudioDestinationNode should support weak reference; r=ehsan 2013-10-16 17:27:45 +08:00
Paul Adenot
75e0bc22e6 Bug 918861 - Update tests that were relying on a 48000Hz samplerate. r=ehsan
--HG--
extra : rebase_source : 84ba0d07e2c1905bc9b7d6e37121c6e0d3d53b33
2013-10-17 15:44:52 +02:00
Paul Adenot
98de946d68 Bug 918861 - Allow the MSG to choose a better samplerate than 48000Hz. r=roc
--HG--
extra : rebase_source : 2181ccbbdca370031d1d3ae5b44ef4e37a3e948c
2013-10-17 15:44:52 +02:00
Karl Tomlinson
e228c084a4 b=923106 recompute frequency dependent parameters when OscillatorType changes r=padenot
mSquare, mTriangle, and mSaw are not initialized in the OscillatorNodeEngine
constructor, just like they are not initialized when switching to
OscillatorType::Sine.  These parameters are initialized if and when switching
to the OscillatorTypes that use them.

mFinalFrequency, mNumberOfHarmonics, mSignalPeriod, mAmplitudeAtZero,
mPhaseIncrement, mPhaseWrap are not initialized in the OscillatorNodeEngine
constructor, just like they are not initialized immediately on switching
OscillatorType.  These parameters are initialized in
UpdateParametersIfNeeded(), conditional on mRecomputeParameters.

--HG--
extra : transplant_source : a%C1%83%03%03%5CJ%88%99j%A0%93%05%92%06%CA%D6%8B%00%21
2013-10-15 13:10:02 +13:00
Andrea Marchesini
848dcf3943 Bug 924870 - AudioContext.mozAudioChannel attribute, r=ehsan 2013-10-11 13:55:47 +02:00
Karl Tomlinson
2cc43e65c2 b=924288 no need to set filter parameters after every process() r=ehsan
--HG--
extra : transplant_source : %23%D1%3B%D8%03%85%25%95%A8z%15%24K%F0%F7f2%20u%95
2013-10-09 15:33:07 +13:00