Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: aef6a763596ad4bd9e007a52b373eb1b423e1f84 https://github.com/WebKit/WebKit/commit/aef6a763596ad4bd9e007a52b373eb1b423e1f84 Author: Youenn Fablet <you...@apple.com> Date: 2024-02-27 (Tue, 27 Feb 2024)
Changed paths: M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp Log Message: ----------- WebCodecs remote video encoders get timestamps in microseconds and not nanoseconds rdar://123684436 https://bugs.webkit.org/show_bug.cgi?id=270159 Reviewed by Eric Carlson. In WebRTC code path, we are getting a microsecond timestamp. We were converting it to a MediaTime in LibWebRTCCodecs which was then converted back to a nanosecond timestamp in LibWebRTCCodecsProxy. A factor of 1000 was applied in LibWebRTCCodecs and handled correctly on LibWebRTCCodecsProxy. The WebCodecs path is getting a MediaTime directly but without the 1000 factor. This was causing the timestamps given to WebCodecs encoder to be in microseconds and not nanoseconds. This can have an impact on encoders in some circumstances. We fix this by using Seconds/MediaTime routines on WebProcess WebRTC side (this removes the 1000 factor), and we update LibWebRTCCodecsProxy to do the same. * Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm: (WebKit::LibWebRTCCodecsProxy::encodeFrame): * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp: (WebKit::LibWebRTCCodecs::encodeFrame): Canonical link: https://commits.webkit.org/275392@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes