[webkit-changes] [WebKit/WebKit] 7ca419: Long delay when switching audio input in Google Meet

youennf noreply at github.com
Thu Oct 12 00:05:03 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7ca419834e5cf349386849b51920d2b81d9ecb86
      https://github.com/WebKit/WebKit/commit/7ca419834e5cf349386849b51920d2b81d9ecb86
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2023-10-12 (Thu, 12 Oct 2023)

  Changed paths:
    M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp
    M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h

  Log Message:
  -----------
  Long delay when switching audio input in Google Meet
https://bugs.webkit.org/show_bug.cgi?id=248183
rdar://102724364

Reviewed by Eric Carlson.

Creating a kAudioUnitSubType_VoiceProcessingIO is expensive as it may block the thread for 2 seconds.
To limit this overhead, we reuse the VPIO unit in case of reconfiguration, if any is being used.
Testing on Google Meet locally, this improves device switching both in terms of UI (which does not freeze)
and in terms of delay of audio switching.
We only reuse VPIO unit on macOS for now.

* Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp:
(WebCore::CoreAudioSharedInternalUnit::create):
(WebCore::CoreAudioSharedInternalUnit::CoreAudioSharedInternalUnit):
(WebCore::CoreAudioSharedInternalUnit::~CoreAudioSharedInternalUnit):
(WebCore::CoreAudioSharedInternalUnit::storeVPIOUnitIfNeeded):
(WebCore::CoreAudioSharedUnit::~CoreAudioSharedUnit):
(WebCore::CoreAudioSharedUnit::setStoredVPIOUnit):
(WebCore::CoreAudioSharedUnit::reconfigureAudioUnit):
* Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h:

Canonical link: https://commits.webkit.org/269242@main




More information about the webkit-changes mailing list