| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2010, Google Inc. All rights reserved. | 2  * Copyright (C) 2010, Google Inc. All rights reserved. | 
| 3  * | 3  * | 
| 4  * Redistribution and use in source and binary forms, with or without | 4  * Redistribution and use in source and binary forms, with or without | 
| 5  * modification, are permitted provided that the following conditions | 5  * modification, are permitted provided that the following conditions | 
| 6  * are met: | 6  * are met: | 
| 7  * 1.  Redistributions of source code must retain the above copyright | 7  * 1.  Redistributions of source code must retain the above copyright | 
| 8  *    notice, this list of conditions and the following disclaimer. | 8  *    notice, this list of conditions and the following disclaimer. | 
| 9  * 2.  Redistributions in binary form must reproduce the above copyright | 9  * 2.  Redistributions in binary form must reproduce the above copyright | 
| 10  *    notice, this list of conditions and the following disclaimer in the | 10  *    notice, this list of conditions and the following disclaimer in the | 
| 11  *    documentation and/or other materials provided with the distribution. | 11  *    documentation and/or other materials provided with the distribution. | 
| 12  * | 12  * | 
| 13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND | 13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND | 
| 14  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 14  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
| 15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 
| 16  * ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE | 16  * ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE | 
| 17  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 17  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 
| 18  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 18  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 
| 19  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 19  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 
| 20  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | 20  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | 
| 21  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | 21  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | 
| 22  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH | 22  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH | 
| 23  * DAMAGE. | 23  * DAMAGE. | 
| 24  */ | 24  */ | 
| 25 | 25 | 
| 26 #include "modules/webaudio/DelayDSPKernel.h" | 26 #include "modules/webaudio/DelayDSPKernel.h" | 
|  | 27 #include <algorithm> | 
| 27 #include "platform/audio/AudioUtilities.h" | 28 #include "platform/audio/AudioUtilities.h" | 
| 28 #include "wtf/MathExtras.h" | 29 #include "wtf/MathExtras.h" | 
| 29 #include <algorithm> |  | 
| 30 | 30 | 
| 31 namespace blink { | 31 namespace blink { | 
| 32 | 32 | 
| 33 const float SmoothingTimeConstant = 0.020f;  // 20ms | 33 const float SmoothingTimeConstant = 0.020f;  // 20ms | 
| 34 | 34 | 
| 35 DelayDSPKernel::DelayDSPKernel(DelayProcessor* processor) | 35 DelayDSPKernel::DelayDSPKernel(DelayProcessor* processor) | 
| 36     : AudioDelayDSPKernel(processor, AudioUtilities::kRenderQuantumFrames) { | 36     : AudioDelayDSPKernel(processor, AudioUtilities::kRenderQuantumFrames) { | 
| 37   DCHECK(processor); | 37   DCHECK(processor); | 
| 38   DCHECK_GT(processor->sampleRate(), 0); | 38   DCHECK_GT(processor->sampleRate(), 0); | 
| 39   if (!(processor && processor->sampleRate() > 0)) | 39   if (!(processor && processor->sampleRate() > 0)) | 
| (...skipping 30 matching lines...) Expand all  Loading... | 
| 70 void DelayDSPKernel::processOnlyAudioParams(size_t framesToProcess) { | 70 void DelayDSPKernel::processOnlyAudioParams(size_t framesToProcess) { | 
| 71   DCHECK_LE(framesToProcess, AudioUtilities::kRenderQuantumFrames); | 71   DCHECK_LE(framesToProcess, AudioUtilities::kRenderQuantumFrames); | 
| 72 | 72 | 
| 73   float values[AudioUtilities::kRenderQuantumFrames]; | 73   float values[AudioUtilities::kRenderQuantumFrames]; | 
| 74 | 74 | 
| 75   getDelayProcessor()->delayTime().calculateSampleAccurateValues( | 75   getDelayProcessor()->delayTime().calculateSampleAccurateValues( | 
| 76       values, framesToProcess); | 76       values, framesToProcess); | 
| 77 } | 77 } | 
| 78 | 78 | 
| 79 }  // namespace blink | 79 }  // namespace blink | 
| OLD | NEW | 
|---|