Chromium Code Reviews| Index: third_party/WebKit/Source/modules/webaudio/DelayNode.cpp |
| diff --git a/third_party/WebKit/Source/modules/webaudio/DelayNode.cpp b/third_party/WebKit/Source/modules/webaudio/DelayNode.cpp |
| index 4a3adf66229641fe3986b545afe8e37b1d3b88dd..71178ea1e2575fb29590902067bfb4cf21b2bc1f 100644 |
| --- a/third_party/WebKit/Source/modules/webaudio/DelayNode.cpp |
| +++ b/third_party/WebKit/Source/modules/webaudio/DelayNode.cpp |
| @@ -34,15 +34,38 @@ namespace blink { |
| const double maximumAllowedDelayTime = 180; |
| -DelayNode::DelayNode(AbstractAudioContext& context, float sampleRate, double maxDelayTime) |
| +DelayNode::DelayNode(AbstractAudioContext& context, double maxDelayTime) |
| : AudioNode(context) |
| , m_delayTime(AudioParam::create(context, ParamTypeDelayDelayTime, 0.0)) |
| { |
| - setHandler(AudioBasicProcessorHandler::create(AudioHandler::NodeTypeDelay, *this, sampleRate, adoptPtr(new DelayProcessor(sampleRate, 1, m_delayTime->handler(), maxDelayTime)))); |
| + setHandler(AudioBasicProcessorHandler::create( |
| + AudioHandler::NodeTypeDelay, |
| + *this, |
| + context.sampleRate(), |
| + adoptPtr(new DelayProcessor( |
| + context.sampleRate(), |
| + 1, |
| + m_delayTime->handler(), |
| + maxDelayTime)))); |
| } |
| -DelayNode* DelayNode::create(AbstractAudioContext& context, float sampleRate, double maxDelayTime, ExceptionState& exceptionState) |
| +DelayNode* DelayNode::create(AbstractAudioContext& context, ExceptionState& exceptionState) |
| { |
| + ASSERT(isMainThread()); |
|
hongchan
2016/05/13 01:20:11
DCHECK.
Raymond Toy
2016/05/20 23:12:00
Done.
|
| + |
| + const double defaultMaxDelayTime = 1; |
| + return create(context, defaultMaxDelayTime, exceptionState); |
| +} |
| + |
| +DelayNode* DelayNode::create(AbstractAudioContext& context, double maxDelayTime, ExceptionState& exceptionState) |
| +{ |
| + ASSERT(isMainThread()); |
|
hongchan
2016/05/13 01:20:11
DCHECK.
Raymond Toy
2016/05/20 23:12:00
Done.
|
| + |
| + if (context.isContextClosed()) { |
| + context.throwExceptionForClosedState(exceptionState); |
| + return nullptr; |
| + } |
| + |
| if (maxDelayTime <= 0 || maxDelayTime >= maximumAllowedDelayTime) { |
| exceptionState.throwDOMException( |
| NotSupportedError, |
| @@ -55,7 +78,8 @@ DelayNode* DelayNode::create(AbstractAudioContext& context, float sampleRate, do |
| ExceptionMessages::ExclusiveBound)); |
| return nullptr; |
| } |
| - return new DelayNode(context, sampleRate, maxDelayTime); |
| + |
| + return new DelayNode(context, maxDelayTime); |
| } |
| AudioParam* DelayNode::delayTime() |