gecko-dev/dom/media/webaudio/blink
Dan Minor 7c5f125b1c Bug 1265408 - Avoid complex division in getFrequencyResponse; r=padenot
Using the division operator on std::complex values fails on our linux64
AWS test machines, yielding infinities and NaNs for valid inputs. Presumably
this could affect machines in the wild as well. This patch removes the use
of the division operator and replaces it with real operations.

MozReview-Commit-ID: 4s7xUf9ja0F

--HG--
extra : rebase_source : 9c1946c812be78aa25845402866795655bfc9af1
extra : source : 4dd3a54d766d9960319f6356064ccdd9d3feda88
2016-05-12 09:15:18 -04:00
..
Biquad.cpp Bug 1265408 - Avoid complex division in getFrequencyResponse; r=padenot 2016-05-12 09:15:18 -04:00
Biquad.h
DenormalDisabler.h Bug 1228947 - Replace mfbt/Constants.h with math.h. r=roc 2015-11-27 20:49:55 -08:00
DynamicsCompressor.cpp Bug 1270055 - Unaligned buffer used in DynamicsCompressor; r=padenot 2016-05-04 06:49:07 -04:00
DynamicsCompressor.h Bug 1229963 - use UniquePtr<T[]> instead of nsAutoArrayPtr<T> in dom/media/; r=cpearce 2015-12-02 18:07:59 -05:00
DynamicsCompressorKernel.cpp Bug 1228947 - Replace mfbt/Constants.h with math.h. r=roc 2015-11-27 20:49:55 -08:00
DynamicsCompressorKernel.h Bug 1229963 - use UniquePtr<T[]> instead of nsAutoArrayPtr<T> in dom/media/; r=cpearce 2015-12-02 18:07:59 -05:00
FFTConvolver.cpp bug 1221836 return output pointer from FFTConvolver::process() to save a buffer copy r=padenot 2015-11-04 21:23:18 +13:00
FFTConvolver.h bug 1221836 return output pointer from FFTConvolver::process() to save a buffer copy r=padenot 2015-11-04 21:23:18 +13:00
HRTFDatabase.cpp
HRTFDatabase.h
HRTFDatabaseLoader.cpp Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
HRTFDatabaseLoader.h
HRTFElevation.cpp Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
HRTFElevation.h
HRTFKernel.cpp
HRTFKernel.h
HRTFPanner.cpp bug 1221836 return output pointer from FFTConvolver::process() to save a buffer copy r=padenot 2015-11-04 21:23:18 +13:00
HRTFPanner.h
IIRFilter.cpp Bug 1265408 - Avoid complex division in getFrequencyResponse; r=padenot 2016-05-12 09:15:18 -04:00
IIRFilter.h Bug 1265408 - Add buffersAreZero to IIRFilter; r=karlt 2016-05-31 09:28:06 -04:00
IRC_Composite_C_R0195-incl.cpp
moz.build Bug 1265408 - Use IIRFilter from blink; r=padenot 2016-05-10 10:46:40 -04:00
PeriodicWave.cpp Bug 1265405 - Use a dictionary to specify how PeriodicWave should be normalized (or not); r=padenot 2016-04-25 11:37:20 -04:00
PeriodicWave.h Bug 1265405 - Use a dictionary to specify how PeriodicWave should be normalized (or not); r=padenot 2016-04-25 11:37:20 -04:00
README
Reverb.cpp Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Reverb.h bug 1221830 use WEBAUDIO_BLOCK_SIZE constant in Reverb methods r=padenot 2015-11-03 16:35:32 +13:00
ReverbAccumulationBuffer.cpp Bug 1263910 - Make AudioBufferAddWithScale handle unaligned buffers; r=padenot 2016-05-10 06:37:45 -04:00
ReverbAccumulationBuffer.h Bug 877662 - Align audio buffer allocations to 16 byte boundaries r=padenot 2016-04-13 15:31:50 -04:00
ReverbConvolver.cpp Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-05-05 01:45:00 -07:00
ReverbConvolver.h bug 1221833 remove first two half-block-size convolver stages r=padenot 2015-11-04 09:02:57 +13:00
ReverbConvolverStage.cpp bug 1221836 return output pointer from FFTConvolver::process() to save a buffer copy r=padenot 2015-11-04 21:23:18 +13:00
ReverbConvolverStage.h bug 1221833 remove now-unused direct convolver r=padenot 2015-11-04 09:21:45 +13:00
ReverbInputBuffer.cpp
ReverbInputBuffer.h
ZeroPole.cpp
ZeroPole.h

This directory contains the code originally borrowed from the Blink Web Audio
implementation.  We are forking the code here because in many cases the burden
of adopting Blink specific utilities is too large compared to the prospect of
importing upstream fixes by just copying newer versions of the code in the
future.

The process of borrowing code from Blink is as follows:

* Try to borrow utility classes only, and avoid borrowing code which depends
  too much on the Blink specific utilities.
* First, import the pristine files from the Blink repository before adding
  them to the build system, noting the SVN revision of Blink from which the
  original files were copied in the commit message.
* In a separate commit, add the imported source files to the build system,
  and apply the necessary changes to make it build successfully.
* Use the code in a separate commit.
* Never add headers as exported headers.  All headers should be included
  using the following convention: #include "blink/Header.h".
* Leave the imported code in the WebCore namespace, and import the needed
  names into the Mozilla code via `using'.
* Cherry-pick upsteam fixes manually when needed.  In case you fix a problem
  that is not Mozilla specific locally, try to upstream your changes into
  Blink.
* Ping ehsan for any questions.