Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9a5cf360c963fda62330b53cd08a83314fc5c876
https://github.com/WebKit/WebKit/commit/9a5cf360c963fda62330b53cd08a83314fc5c876
Author: Youenn Fablet <[email protected]>
Date: 2023-01-17 (Tue, 17 Jan 2023)
Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp
M Source/WebCore/platform/FrameRateMonitor.cpp
M Source/WebCore/platform/FrameRateMonitor.h
M Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp
M Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h
M
Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm
M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.h
M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.messages.in
M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm
M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp
M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
Log Message:
-----------
Add additional optional WebRTC media pipeline logging
https://bugs.webkit.org/show_bug.cgi?id=250675
rdar://problem/104296522
Reviewed by Eric Carlson.
We add three frame rate monitors just before decoder in GPUProcess, just after
decoder in GPUProcess and just before rendering code path in WebProcess.
This can be enabled with the new internal runtime flag introduced in this patch.
This logging can allow to pinpoint areas where WebRTC video frame rate issues
are introduced.
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp:
(WebCore::LibWebRTCRtpReceiverBackend::createSource):
* Source/WebCore/platform/FrameRateMonitor.cpp:
(WebCore::FrameRateMonitor::update):
* Source/WebCore/platform/FrameRateMonitor.h:
* Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp:
(WebCore::m_frameRateMonitor):
(WebCore::RealtimeIncomingVideoSource::notifyNewFrame):
(WebCore::RealtimeIncomingVideoSource::onIrregularFrameRateNotification):
* Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h:
(WebCore::RealtimeIncomingVideoSource::setShouldMonitorFrameRate):
* Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm:
(WebCore::RealtimeIncomingVideoSourceCocoa::OnFrame):
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.h:
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.messages.in:
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:
(WebKit::LibWebRTCCodecsProxy::createDecoderCallback):
(WebKit::LibWebRTCCodecsProxy::createLocalDecoder):
(WebKit::LibWebRTCCodecsProxy::createDecoder):
(WebKit::LibWebRTCCodecsProxy::releaseDecoder):
(WebKit::LibWebRTCCodecsProxy::flushDecoder):
(WebKit::LibWebRTCCodecsProxy::setDecoderFormatDescription):
(WebKit::LibWebRTCCodecsProxy::doDecoderTask):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::createRemoteDecoder):
(WebKit::LibWebRTCCodecs::setWebRTCMediaPipelineAdditionalLoggingEnabled):
(WebKit::LibWebRTCCodecs::createDecoderInternal):
(WebKit::LibWebRTCCodecs::gpuProcessConnectionDidClose):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h:
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::platformInitialize):
Canonical link: https://commits.webkit.org/258980@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes