-
Olga Sharonova authored
(Behind a flag) * Configures renderer-side RT audio threads based on the audio buffer duration, the same way CoreAudio does for audio device threads. * This CL covers only audio playback and capture which use base::PlatformThread directly (this is most of the audio paths). * WebAudio worklet and audio loopback could probably also benefit from such changes, but it requires a separate effort of exposing API in blink::Thread/SimpleThread (WebAudio) and base::Thread (loopback). * The change is disabled by default. We'll run a finch experiment to evaluate it. *If we do decide to keep it, as part of cleaning up the experiment, we will remove the new virtual from PlatformThread::Delegate and move it to be passed along with the ThreadPriority (presumably in some sort of struct, but TBD). Doc: https://docs.google.com/document/d/12grOIZ4ootmJb5RYoe3GuJDCzYTjtNiuGIG6PvCz-78/edit?usp=sharing ------ API discussion: V3 of API (PS10) * Removed a data member from Delegate V2 of API (PS8) * Looks a bit better V1 of API (PS7) * I'm not a fan of having |audio_buffer_duration| in the thread API, but left it for now, to make it clear what exactly is going on. Bug: 1112952 Change-Id: I43c0b92d60622c74b9eede4e9feba9142cbca9fd Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2398661 Commit-Queue: Olga Sharonova <olka@chromium.org> Reviewed-by:
Dale Curtis <dalecurtis@chromium.org> Reviewed-by:
Daniel Cheng <dcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#809308}
ae3fb04f