SetTarget events should eventually terminate |
||
Issue descriptionCurrently, SetTarget events last forever in the timeline because, well, exponential approaches last forever. However, in practice, once the actual value is close enough to the target value, we should stop processing this event and hold the value at the target. In the current implementation, we actually have an optimization where we don't compute the value anymore if it's close enough to the target. We should extend this optimization so that the event is actually removed from the timeline. This allows AudioParam's and nodes to process faster because the fast path (with constant) values can be used.
,
Jan 4 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/383cca0d59f8ea979f2a702ca88d4a1aeb5dd18e commit 383cca0d59f8ea979f2a702ca88d4a1aeb5dd18e Author: Raymond Toy <rtoy@chromium.org> Date: Thu Jan 04 22:51:08 2018 Remove SetTarget events when finished If the last event in the timeline is SetTarget, and the current value is close enough to the final value, and if enough time has elapsed since the beginning of the event, we can remove the SetTarget event from the timeline. Doing so allows all nodes to use the fast path because the AudioParam is a constant over the rendering quantum. Bug: 794712 Test: Change-Id: I7274f9ba10b4a31728c6329c0fca3394cb557e7f Reviewed-on: https://chromium-review.googlesource.com/826124 Commit-Queue: Raymond Toy <rtoy@chromium.org> Reviewed-by: Hongchan Choi <hongchan@chromium.org> Cr-Commit-Position: refs/heads/master@{#527127} [modify] https://crrev.com/383cca0d59f8ea979f2a702ca88d4a1aeb5dd18e/third_party/WebKit/Source/modules/webaudio/AudioParamTimeline.cpp
,
Jan 5 2018
|
||
►
Sign in to add a comment |
||
Comment 1 by rtoy@chromium.org
, Dec 18 2017