[webkit-changes] [WebKit/WebKit] 61e24c: An AudioSession should not get uninterrupted right...

youennf noreply at github.com
Wed Dec 14 07:49:58 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 61e24c7fa0d02edd5b167ef096def9cdbfadd77a
      https://github.com/WebKit/WebKit/commit/61e24c7fa0d02edd5b167ef096def9cdbfadd77a
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2022-12-14 (Wed, 14 Dec 2022)

  Changed paths:
    M LayoutTests/TestExpectations
    A LayoutTests/media/audioSession/ios/audioSessionState-getUserMedia-expected.txt
    A LayoutTests/media/audioSession/ios/audioSessionState-getUserMedia.html
    M LayoutTests/platform/ios/TestExpectations
    M Source/WebCore/platform/audio/AudioSession.cpp
    M Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp
    M Source/WebCore/platform/audio/PlatformMediaSessionManager.h
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm

  Log Message:
  -----------
  An AudioSession should not get uninterrupted right away after being interrupted
https://bugs.webkit.org/show_bug.cgi?id=249138
rdar://problem/103253664

Reviewed by Eric Carlson.

Fix computation of whether active changed by calling isActive() so that it wokrs with RemoteAudioSession.
Compute the new session state in case of change asynchronously so that, we do not reactivate the AudioSession due to one media element being interrupted and another not yet interrupted.

Updated GPUProcess memory pressure exit test case to delay a bit the memory pressure signal after the document gets navigated.
This is due to the AudioSession setup that might be done asynchronously.

Covered by newly added test.

* LayoutTests/TestExpectations:
* LayoutTests/media/audioSession/ios/audioSessionState-getUserMedia-expected.txt: Added.
* LayoutTests/media/audioSession/ios/audioSessionState-getUserMedia.html: Added.
* LayoutTests/platform/ios/TestExpectations:
* Source/WebCore/platform/audio/AudioSession.cpp:
(WebCore::AudioSession::tryToSetActive):
* Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp:
* Source/WebCore/platform/audio/PlatformMediaSessionManager.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm:

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




More information about the webkit-changes mailing list