Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(934)

Unified Diff: third_party/WebKit/Source/modules/webaudio/AudioParam.cpp

Issue 2000423008: Clamp AudioParam automations to the nominal range. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/webaudio/AudioParam.cpp
diff --git a/third_party/WebKit/Source/modules/webaudio/AudioParam.cpp b/third_party/WebKit/Source/modules/webaudio/AudioParam.cpp
index 7a1d8bd52c1e7849369a5f0cf9b5e2ae4fc4a52f..b924e774bd89ab684fb5616201ed68aed828c926 100644
--- a/third_party/WebKit/Source/modules/webaudio/AudioParam.cpp
+++ b/third_party/WebKit/Source/modules/webaudio/AudioParam.cpp
@@ -148,7 +148,7 @@ float AudioParamHandler::value()
float v = intrinsicValue();
if (deferredTaskHandler().isAudioThread()) {
bool hasValue;
- float timelineValue = m_timeline.valueForContextTime(destinationHandler(), v, hasValue);
+ float timelineValue = m_timeline.valueForContextTime(destinationHandler(), v, hasValue, minValue(), maxValue());
if (hasValue)
v = timelineValue;
@@ -180,7 +180,7 @@ bool AudioParamHandler::smooth()
// If values have been explicitly scheduled on the timeline, then use the exact value.
// Smoothing effectively is performed by the timeline.
bool useTimelineValue = false;
- float value = m_timeline.valueForContextTime(destinationHandler(), intrinsicValue(), useTimelineValue);
+ float value = m_timeline.valueForContextTime(destinationHandler(), intrinsicValue(), useTimelineValue, minValue(), maxValue());
if (m_smoothedValue == value) {
// Smoothed value has already approached and snapped to value.
@@ -238,7 +238,7 @@ void AudioParamHandler::calculateFinalValues(float* values, unsigned numberOfVal
// Calculate control-rate (k-rate) intrinsic value.
bool hasValue;
float value = intrinsicValue();
- float timelineValue = m_timeline.valueForContextTime(destinationHandler(), value, hasValue);
+ float timelineValue = m_timeline.valueForContextTime(destinationHandler(), value, hasValue, minValue(), maxValue());
if (hasValue)
value = timelineValue;
@@ -274,7 +274,7 @@ void AudioParamHandler::calculateTimelineValues(float* values, unsigned numberOf
// Note we're running control rate at the sample-rate.
// Pass in the current value as default value.
- setIntrinsicValue(m_timeline.valuesForFrameRange(startFrame, endFrame, intrinsicValue(), values, numberOfValues, sampleRate, sampleRate));
+ setIntrinsicValue(m_timeline.valuesForFrameRange(startFrame, endFrame, intrinsicValue(), values, numberOfValues, sampleRate, sampleRate, minValue(), maxValue()));
}
void AudioParamHandler::connect(AudioNodeOutput& output)

Powered by Google App Engine
This is Rietveld 408576698