Title: [291269] trunk/Source
Revision
291269
Author
you...@apple.com
Date
2022-03-15 00:52:24 -0700 (Tue, 15 Mar 2022)

Log Message

Rename VideoSampleMetadata to VideoFrameTimeMetadata
https://bugs.webkit.org/show_bug.cgi?id=237593

Reviewed by Eric Carlson.

Source/WebCore:

We are going to rename videoSampleAvailable to videoFrameAvailable and move from passing MediaSample to VideoFrame.
We rename VideoSampleMetadata to VideoFrameTimeMetadata for consistency.
No change of behavior.

* Headers.cmake:
* Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp:
(WebCore::CanvasCaptureMediaStreamTrack::Source::captureCanvas):
* WebCore.xcodeproj/project.pbxproj:
* platform/VideoFrameTimeMetadata.h: Renamed from Source/WebCore/platform/VideoSampleMetadata.h.
(WebCore::VideoFrameTimeMetadata::encode const):
(WebCore::VideoFrameTimeMetadata::decode):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::videoSampleAvailable):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::processNewVideoSample):
* platform/graphics/gstreamer/MediaSampleGStreamer.cpp:
(WebCore::MediaSampleGStreamer::MediaSampleGStreamer):
(WebCore::MediaSampleGStreamer::createImageSample):
* platform/graphics/gstreamer/MediaSampleGStreamer.h:
(WebCore::MediaSampleGStreamer::create):
(WebCore::MediaSampleGStreamer::createImageSample):
* platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp:
(webkitGstBufferSetVideoFrameTimeMetadata):
(webkitGstBufferSetVideoSampleMetadata): Deleted.
* platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h:
* platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp:
(WebCore::MediaRecorderPrivateAVFImpl::videoSampleAvailable):
* platform/mediarecorder/MediaRecorderPrivateAVFImpl.h:
* platform/mediarecorder/MediaRecorderPrivateGStreamer.h:
* platform/mediarecorder/MediaRecorderPrivateMock.cpp:
(WebCore::MediaRecorderPrivateMock::videoSampleAvailable):
* platform/mediarecorder/MediaRecorderPrivateMock.h:
* platform/mediastream/RealtimeIncomingVideoSource.cpp:
(WebCore::RealtimeIncomingVideoSource::metadataFromVideoFrame):
* platform/mediastream/RealtimeIncomingVideoSource.h:
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::videoSampleAvailable):
* platform/mediastream/RealtimeMediaSource.h:
* platform/mediastream/RealtimeOutgoingVideoSource.h:
* platform/mediastream/RealtimeVideoCaptureSource.cpp:
(WebCore::RealtimeVideoCaptureSource::dispatchMediaSampleToObservers):
* platform/mediastream/RealtimeVideoCaptureSource.h:
* platform/mediastream/RealtimeVideoSource.cpp:
(WebCore::RealtimeVideoSource::videoSampleAvailable):
* platform/mediastream/RealtimeVideoSource.h:
* platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp:
(WebCore::DisplayCaptureSourceCocoa::emitFrame):
* platform/mediastream/gstreamer/GStreamerCapturer.cpp:
(WebCore::GStreamerCapturer::createSource):
* platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
* platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp:
(WebCore::MockDisplayCaptureSourceGStreamer::videoSampleAvailable):
(WebCore::MockRealtimeVideoSourceGStreamer::updateSampleBuffer):
* platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h:
* platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cpp:
(WebCore::RealtimeOutgoingVideoSourceLibWebRTC::videoSampleAvailable):
* platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h:
* platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection):
* platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
(WebCore::MockRealtimeVideoSourceMac::updateSampleBuffer):
* platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp:
(WebCore::RealtimeOutgoingVideoSourceCocoa::videoSampleAvailable):
* platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h:
* testing/Internals.cpp:
(WebCore::Internals::videoSampleAvailable):
* testing/Internals.h:

Source/WebKit:

* UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
* WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
(WebKit::MediaRecorderPrivate::videoSampleAvailable):
* WebProcess/GPU/webrtc/MediaRecorderPrivate.h:
* WebProcess/cocoa/RemoteCaptureSampleManager.cpp:
(WebKit::RemoteCaptureSampleManager::videoFrameAvailable):
(WebKit::RemoteCaptureSampleManager::videoFrameAvailableCV):
(WebKit::RemoteCaptureSampleManager::RemoteVideo::videoFrameAvailable):
* WebProcess/cocoa/RemoteCaptureSampleManager.h:
* WebProcess/cocoa/RemoteCaptureSampleManager.messages.in:
* WebProcess/cocoa/RemoteRealtimeDisplaySource.h:
* WebProcess/cocoa/RemoteRealtimeVideoSource.cpp:
(WebKit::RemoteRealtimeVideoSource::videoSampleAvailable):
* WebProcess/cocoa/RemoteRealtimeVideoSource.h:

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (291268 => 291269)


--- trunk/Source/WebCore/ChangeLog	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/ChangeLog	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1,5 +1,80 @@
 2022-03-15  Youenn Fablet  <you...@apple.com>
 
+        Rename VideoSampleMetadata to VideoFrameTimeMetadata
+        https://bugs.webkit.org/show_bug.cgi?id=237593
+
+        Reviewed by Eric Carlson.
+
+        We are going to rename videoSampleAvailable to videoFrameAvailable and move from passing MediaSample to VideoFrame.
+        We rename VideoSampleMetadata to VideoFrameTimeMetadata for consistency.
+        No change of behavior.
+
+        * Headers.cmake:
+        * Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp:
+        (WebCore::CanvasCaptureMediaStreamTrack::Source::captureCanvas):
+        * WebCore.xcodeproj/project.pbxproj:
+        * platform/VideoFrameTimeMetadata.h: Renamed from Source/WebCore/platform/VideoSampleMetadata.h.
+        (WebCore::VideoFrameTimeMetadata::encode const):
+        (WebCore::VideoFrameTimeMetadata::decode):
+        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
+        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
+        (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::videoSampleAvailable):
+        (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::processNewVideoSample):
+        * platform/graphics/gstreamer/MediaSampleGStreamer.cpp:
+        (WebCore::MediaSampleGStreamer::MediaSampleGStreamer):
+        (WebCore::MediaSampleGStreamer::createImageSample):
+        * platform/graphics/gstreamer/MediaSampleGStreamer.h:
+        (WebCore::MediaSampleGStreamer::create):
+        (WebCore::MediaSampleGStreamer::createImageSample):
+        * platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp:
+        (webkitGstBufferSetVideoFrameTimeMetadata):
+        (webkitGstBufferSetVideoSampleMetadata): Deleted.
+        * platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h:
+        * platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp:
+        (WebCore::MediaRecorderPrivateAVFImpl::videoSampleAvailable):
+        * platform/mediarecorder/MediaRecorderPrivateAVFImpl.h:
+        * platform/mediarecorder/MediaRecorderPrivateGStreamer.h:
+        * platform/mediarecorder/MediaRecorderPrivateMock.cpp:
+        (WebCore::MediaRecorderPrivateMock::videoSampleAvailable):
+        * platform/mediarecorder/MediaRecorderPrivateMock.h:
+        * platform/mediastream/RealtimeIncomingVideoSource.cpp:
+        (WebCore::RealtimeIncomingVideoSource::metadataFromVideoFrame):
+        * platform/mediastream/RealtimeIncomingVideoSource.h:
+        * platform/mediastream/RealtimeMediaSource.cpp:
+        (WebCore::RealtimeMediaSource::videoSampleAvailable):
+        * platform/mediastream/RealtimeMediaSource.h:
+        * platform/mediastream/RealtimeOutgoingVideoSource.h:
+        * platform/mediastream/RealtimeVideoCaptureSource.cpp:
+        (WebCore::RealtimeVideoCaptureSource::dispatchMediaSampleToObservers):
+        * platform/mediastream/RealtimeVideoCaptureSource.h:
+        * platform/mediastream/RealtimeVideoSource.cpp:
+        (WebCore::RealtimeVideoSource::videoSampleAvailable):
+        * platform/mediastream/RealtimeVideoSource.h:
+        * platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp:
+        (WebCore::DisplayCaptureSourceCocoa::emitFrame):
+        * platform/mediastream/gstreamer/GStreamerCapturer.cpp:
+        (WebCore::GStreamerCapturer::createSource):
+        * platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
+        * platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp:
+        (WebCore::MockDisplayCaptureSourceGStreamer::videoSampleAvailable):
+        (WebCore::MockRealtimeVideoSourceGStreamer::updateSampleBuffer):
+        * platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h:
+        * platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cpp:
+        (WebCore::RealtimeOutgoingVideoSourceLibWebRTC::videoSampleAvailable):
+        * platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h:
+        * platform/mediastream/mac/AVVideoCaptureSource.mm:
+        (WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection):
+        * platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
+        (WebCore::MockRealtimeVideoSourceMac::updateSampleBuffer):
+        * platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp:
+        (WebCore::RealtimeOutgoingVideoSourceCocoa::videoSampleAvailable):
+        * platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h:
+        * testing/Internals.cpp:
+        (WebCore::Internals::videoSampleAvailable):
+        * testing/Internals.h:
+
+2022-03-15  Youenn Fablet  <you...@apple.com>
+
         Make sure to end any pending AudioSession interruption when activating it
         https://bugs.webkit.org/show_bug.cgi?id=237654
         <rdar://88405081>

Modified: trunk/Source/WebCore/Headers.cmake (291268 => 291269)


--- trunk/Source/WebCore/Headers.cmake	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/Headers.cmake	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1363,7 +1363,7 @@
     platform/ValidationBubble.h
     platform/VideoFrame.h
     platform/VideoFrameMetadata.h
-    platform/VideoSampleMetadata.h
+    platform/VideoFrameTimeMetadata.h
     platform/WebGLStateTracker.h
     platform/Widget.h
     platform/WindowsKeyboardCodes.h

Modified: trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp (291268 => 291269)


--- trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -196,7 +196,7 @@
     if (!sample)
         return;
 
-    VideoSampleMetadata metadata;
+    VideoFrameTimeMetadata metadata;
     metadata.captureTime = MonotonicTime::now().secondsSinceEpoch();
     videoSampleAvailable(*sample, metadata);
 }

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (291268 => 291269)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1118,7 +1118,7 @@
 		4157EBFB1E3AB67F00AC9FE9 /* MockLibWebRTCPeerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 4157EBF81E3AB06800AC9FE9 /* MockLibWebRTCPeerConnection.h */; };
 		415864A023BF7CBF00A0A61E /* RealtimeVideoUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 41D1938F2152C561006F14CA /* RealtimeVideoUtilities.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		415CDAF51E6B8F8B004F11EE /* CanvasCaptureMediaStreamTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 41C7E1061E6A54360027B4DE /* CanvasCaptureMediaStreamTrack.h */; };
-		416049332743B0E800A86FA0 /* VideoSampleMetadata.h in Headers */ = {isa = PBXBuildFile; fileRef = 416049312743B0E700A86FA0 /* VideoSampleMetadata.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		416049332743B0E800A86FA0 /* VideoFrameTimeMetadata.h in Headers */ = {isa = PBXBuildFile; fileRef = 416049312743B0E700A86FA0 /* VideoFrameTimeMetadata.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		41614A791DA64241004AD06F /* HTTPHeaderValues.h in Headers */ = {isa = PBXBuildFile; fileRef = 41614A771DA64236004AD06F /* HTTPHeaderValues.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		4161E2D51FE48DC500EC2E96 /* FetchLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 4147E2B51C89912600A7E715 /* FetchLoader.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		4162A451101145AE00DFF3ED /* DedicatedWorkerGlobalScope.h in Headers */ = {isa = PBXBuildFile; fileRef = 4162A44E101145AE00DFF3ED /* DedicatedWorkerGlobalScope.h */; };
@@ -8717,7 +8717,7 @@
 		415E1BB5215010810022DA96 /* RTCRtpContributingSource.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = RTCRtpContributingSource.idl; sourceTree = "<group>"; };
 		415E1BB62150152A0022DA96 /* RTCRtpSynchronizationSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCRtpSynchronizationSource.h; sourceTree = "<group>"; };
 		415E1BB7215015300022DA96 /* RTCRtpSynchronizationSource.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = RTCRtpSynchronizationSource.idl; sourceTree = "<group>"; };
-		416049312743B0E700A86FA0 /* VideoSampleMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VideoSampleMetadata.h; sourceTree = "<group>"; };
+		416049312743B0E700A86FA0 /* VideoFrameTimeMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VideoFrameTimeMetadata.h; sourceTree = "<group>"; };
 		41614A761DA64236004AD06F /* HTTPHeaderValues.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTTPHeaderValues.cpp; sourceTree = "<group>"; };
 		41614A771DA64236004AD06F /* HTTPHeaderValues.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTTPHeaderValues.h; sourceTree = "<group>"; };
 		4162A44D101145AE00DFF3ED /* DedicatedWorkerGlobalScope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DedicatedWorkerGlobalScope.cpp; sourceTree = "<group>"; };
@@ -30253,7 +30253,7 @@
 				7B5A3DAB27ABF8C4006C6F97 /* VideoFrame.cpp */,
 				7B5A3DAD27ABF8C4006C6F97 /* VideoFrame.h */,
 				41DEEFB42719BA1900CB8D74 /* VideoFrameMetadata.h */,
-				416049312743B0E700A86FA0 /* VideoSampleMetadata.h */,
+				416049312743B0E700A86FA0 /* VideoFrameTimeMetadata.h */,
 				515F79511CFCA3C700CCED93 /* WebCoreCrossThreadCopier.cpp */,
 				515F79521CFCA3C700CCED93 /* WebCoreCrossThreadCopier.h */,
 				839A2F2B1E204A6D0039057E /* WebGLStateTracker.cpp */,
@@ -37965,7 +37965,7 @@
 				CDE83DB2183C44060031EAA3 /* VideoPlaybackQuality.h in Headers */,
 				075033A8252BD36800F70CE3 /* VideoPlaybackQualityMetrics.h in Headers */,
 				0757B13E214AE79900794B0D /* VideoPreset.h in Headers */,
-				416049332743B0E800A86FA0 /* VideoSampleMetadata.h in Headers */,
+				416049332743B0E800A86FA0 /* VideoFrameTimeMetadata.h in Headers */,
 				CDC939A81E9BDFB100BB768D /* VideoToolboxSoftLink.h in Headers */,
 				BE88E0DF1715D2A200658D98 /* VideoTrack.h in Headers */,
 				CD1F9B1827023A2A00617EB6 /* VideoTrackClient.h in Headers */,

Copied: trunk/Source/WebCore/platform/VideoFrameTimeMetadata.h (from rev 291268, trunk/Source/WebCore/platform/VideoSampleMetadata.h) (0 => 291269)


--- trunk/Source/WebCore/platform/VideoFrameTimeMetadata.h	                        (rev 0)
+++ trunk/Source/WebCore/platform/VideoFrameTimeMetadata.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -0,0 +1,76 @@
+/*
+ * Copyright (C) 2021 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#include <optional>
+#include <wtf/Seconds.h>
+
+namespace WebCore {
+
+struct VideoFrameTimeMetadata {
+    std::optional<double> processingDuration;
+
+    std::optional<Seconds> captureTime;
+    std::optional<Seconds> receiveTime;
+    std::optional<unsigned> rtpTimestamp;
+
+    template<class Encoder> void encode(Encoder&) const;
+    template<class Decoder> static std::optional<VideoFrameTimeMetadata> decode(Decoder&);
+};
+
+template<class Encoder>
+inline void VideoFrameTimeMetadata::encode(Encoder& encoder) const
+{
+    encoder << processingDuration << captureTime << receiveTime << rtpTimestamp;
+}
+
+template<class Decoder>
+inline std::optional<VideoFrameTimeMetadata> VideoFrameTimeMetadata::decode(Decoder& decoder)
+{
+    std::optional<std::optional<double>> processingDuration;
+    decoder >> processingDuration;
+    if (!processingDuration)
+        return std::nullopt;
+
+    std::optional<std::optional<Seconds>> captureTime;
+    decoder >> captureTime;
+    if (!captureTime)
+        return std::nullopt;
+
+    std::optional<std::optional<Seconds>> receiveTime;
+    decoder >> receiveTime;
+    if (!receiveTime)
+        return std::nullopt;
+
+    std::optional<std::optional<unsigned>> rtpTimestamp;
+    decoder >> rtpTimestamp;
+    if (!rtpTimestamp)
+        return std::nullopt;
+
+    return VideoFrameTimeMetadata { *processingDuration, *captureTime, *receiveTime, *rtpTimestamp };
+}
+
+}

Deleted: trunk/Source/WebCore/platform/VideoSampleMetadata.h (291268 => 291269)


--- trunk/Source/WebCore/platform/VideoSampleMetadata.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/VideoSampleMetadata.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2021 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#include <optional>
-#include <wtf/Seconds.h>
-
-namespace WebCore {
-
-struct VideoSampleMetadata {
-    std::optional<double> processingDuration;
-
-    std::optional<Seconds> captureTime;
-    std::optional<Seconds> receiveTime;
-    std::optional<unsigned> rtpTimestamp;
-
-    template<class Encoder> void encode(Encoder&) const;
-    template<class Decoder> static std::optional<VideoSampleMetadata> decode(Decoder&);
-};
-
-template<class Encoder>
-inline void VideoSampleMetadata::encode(Encoder& encoder) const
-{
-    encoder << processingDuration << captureTime << receiveTime << rtpTimestamp;
-}
-
-template<class Decoder>
-inline std::optional<VideoSampleMetadata> VideoSampleMetadata::decode(Decoder& decoder)
-{
-    std::optional<std::optional<double>> processingDuration;
-    decoder >> processingDuration;
-    if (!processingDuration)
-        return std::nullopt;
-
-    std::optional<std::optional<Seconds>> captureTime;
-    decoder >> captureTime;
-    if (!captureTime)
-        return std::nullopt;
-
-    std::optional<std::optional<Seconds>> receiveTime;
-    decoder >> receiveTime;
-    if (!receiveTime)
-        return std::nullopt;
-
-    std::optional<std::optional<unsigned>> rtpTimestamp;
-    decoder >> rtpTimestamp;
-    if (!rtpTimestamp)
-        return std::nullopt;
-
-    return VideoSampleMetadata { *processingDuration, *captureTime, *receiveTime, *rtpTimestamp };
-}
-
-}

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -136,7 +136,7 @@
 
     void flushRenderers();
 
-    void processNewVideoSample(MediaSample&, VideoSampleMetadata, Seconds);
+    void processNewVideoSample(MediaSample&, VideoFrameTimeMetadata, Seconds);
     void enqueueVideoSample(MediaSample&);
     void reenqueueCurrentVideoSampleIfNeeded();
     void requestNotificationWhenReadyForVideoData();
@@ -212,7 +212,7 @@
     void readyStateChanged(MediaStreamTrackPrivate&) override;
 
     // RealtimeMediaSouce::VideoSampleObserver
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
 
     RetainPtr<PlatformLayer> createVideoFullscreenLayer() override;
     void setVideoFullscreenLayer(PlatformLayer*, Function<void()>&& completionHandler) override;
@@ -288,7 +288,7 @@
     uint64_t m_lastVideoFrameMetadataSampleCount { 0 };
     Seconds m_presentationTime { 0 };
     FloatSize m_videoFrameSize;
-    VideoSampleMetadata m_sampleMetadata;
+    VideoFrameTimeMetadata m_sampleMetadata;
 };
     
 }

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm	2022-03-15 07:52:24 UTC (rev 291269)
@@ -244,7 +244,7 @@
     return videoTransform;
 }
 
-void MediaPlayerPrivateMediaStreamAVFObjC::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata metadata)
+void MediaPlayerPrivateMediaStreamAVFObjC::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata metadata)
 {
     auto presentationTime = MonotonicTime::now().secondsSinceEpoch();
     processNewVideoSample(sample, metadata, presentationTime);
@@ -289,7 +289,7 @@
     enqueueVideoSample(m_currentVideoSample ? *m_currentVideoSample : *m_imagePainter.mediaSample);
 }
 
-void MediaPlayerPrivateMediaStreamAVFObjC::processNewVideoSample(MediaSample& sample, VideoSampleMetadata metadata, Seconds presentationTime)
+void MediaPlayerPrivateMediaStreamAVFObjC::processNewVideoSample(MediaSample& sample, VideoFrameTimeMetadata metadata, Seconds presentationTime)
 {
     if (!isMainThread()) {
         {

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -33,7 +33,7 @@
 
 namespace WebCore {
 
-MediaSampleGStreamer::MediaSampleGStreamer(GRefPtr<GstSample>&& sample, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation videoRotation, bool videoMirrored, std::optional<VideoSampleMetadata>&& metadata)
+MediaSampleGStreamer::MediaSampleGStreamer(GRefPtr<GstSample>&& sample, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation videoRotation, bool videoMirrored, std::optional<VideoFrameTimeMetadata>&& metadata)
     : m_pts(MediaTime::zeroTime())
     , m_dts(MediaTime::zeroTime())
     , m_duration(MediaTime::zeroTime())
@@ -47,7 +47,7 @@
     RELEASE_ASSERT(buffer);
 
     if (metadata)
-        buffer = webkitGstBufferSetVideoSampleMetadata(buffer, WTFMove(metadata));
+        buffer = webkitGstBufferSetVideoFrameTimeMetadata(buffer, WTFMove(metadata));
 
     m_sample = sample;
     initializeFromBuffer();
@@ -79,7 +79,7 @@
     return adoptRef(*gstreamerMediaSample);
 }
 
-Ref<MediaSampleGStreamer> MediaSampleGStreamer::createImageSample(PixelBuffer&& pixelBuffer, const IntSize& destinationSize, double frameRate, VideoRotation videoRotation, bool videoMirrored, std::optional<VideoSampleMetadata>&& metadata)
+Ref<MediaSampleGStreamer> MediaSampleGStreamer::createImageSample(PixelBuffer&& pixelBuffer, const IntSize& destinationSize, double frameRate, VideoRotation videoRotation, bool videoMirrored, std::optional<VideoFrameTimeMetadata>&& metadata)
 {
     ensureGStreamerInitialized();
 
@@ -99,7 +99,7 @@
     gst_buffer_add_video_meta(buffer.get(), GST_VIDEO_FRAME_FLAG_NONE, GST_VIDEO_FORMAT_BGRA, width, height);
 
     if (metadata)
-        webkitGstBufferSetVideoSampleMetadata(buffer.get(), *metadata);
+        webkitGstBufferSetVideoFrameTimeMetadata(buffer.get(), *metadata);
 
     int frameRateNumerator, frameRateDenominator;
     gst_util_double_to_fraction(frameRate, &frameRateNumerator, &frameRateDenominator);

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -26,7 +26,7 @@
 #include "FloatSize.h"
 #include "GStreamerCommon.h"
 #include "MediaSample.h"
-#include "VideoSampleMetadata.h"
+#include "VideoFrameTimeMetadata.h"
 #include <wtf/text/AtomString.h>
 
 namespace WebCore {
@@ -35,7 +35,7 @@
 
 class MediaSampleGStreamer : public MediaSample {
 public:
-    static Ref<MediaSampleGStreamer> create(GRefPtr<GstSample>&& sample, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation videoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoSampleMetadata>&& metadata = std::nullopt)
+    static Ref<MediaSampleGStreamer> create(GRefPtr<GstSample>&& sample, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation videoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoFrameTimeMetadata>&& metadata = std::nullopt)
     {
         return adoptRef(*new MediaSampleGStreamer(WTFMove(sample), presentationSize, trackId, videoRotation, videoMirrored, WTFMove(metadata)));
     }
@@ -46,7 +46,7 @@
     }
 
     static Ref<MediaSampleGStreamer> createFakeSample(GstCaps*, MediaTime pts, MediaTime dts, MediaTime duration, const FloatSize& presentationSize, const AtomString& trackId);
-    static Ref<MediaSampleGStreamer> createImageSample(PixelBuffer&&, const IntSize& destinationSize = { }, double frameRate = 1, VideoRotation videoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoSampleMetadata>&& metadata = std::nullopt);
+    static Ref<MediaSampleGStreamer> createImageSample(PixelBuffer&&, const IntSize& destinationSize = { }, double frameRate = 1, VideoRotation videoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoFrameTimeMetadata>&& metadata = std::nullopt);
 
     void extendToTheBeginning();
     MediaTime presentationTime() const override { return m_pts; }
@@ -67,7 +67,7 @@
     bool videoMirrored() const override { return m_videoMirrored; }
 
 protected:
-    MediaSampleGStreamer(GRefPtr<GstSample>&&, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoSampleMetadata>&& = std::nullopt);
+    MediaSampleGStreamer(GRefPtr<GstSample>&&, const FloatSize& presentationSize, const AtomString& trackId, VideoRotation = VideoRotation::None, bool videoMirrored = false, std::optional<VideoFrameTimeMetadata>&& = std::nullopt);
     MediaSampleGStreamer(const GRefPtr<GstSample>&, VideoRotation = VideoRotation::None);
     virtual ~MediaSampleGStreamer() = default;
 

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -32,7 +32,7 @@
 using namespace WebCore;
 
 struct VideoFrameMetadataPrivate {
-    std::optional<VideoSampleMetadata> videoSampleMetadata;
+    std::optional<VideoFrameTimeMetadata> videoSampleMetadata;
     HashMap<String, std::pair<GstClockTime, GstClockTime>> processingTimes;
 };
 
@@ -99,7 +99,7 @@
     return metaInfo;
 }
 
-GstBuffer* webkitGstBufferSetVideoSampleMetadata(GstBuffer* buffer, std::optional<VideoSampleMetadata>&& metadata)
+GstBuffer* webkitGstBufferSetVideoFrameTimeMetadata(GstBuffer* buffer, std::optional<VideoFrameTimeMetadata>&& metadata)
 {
     if (!GST_IS_BUFFER(buffer))
         return nullptr;

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h (291268 => 291269)


--- trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -22,11 +22,11 @@
 #if ENABLE(VIDEO) && USE(GSTREAMER)
 
 #include "VideoFrameMetadata.h"
-#include "VideoSampleMetadata.h"
+#include "VideoFrameTimeMetadata.h"
 
 #include <gst/gst.h>
 
-GstBuffer* webkitGstBufferSetVideoSampleMetadata(GstBuffer*, std::optional<WebCore::VideoSampleMetadata>&&);
+GstBuffer* webkitGstBufferSetVideoFrameTimeMetadata(GstBuffer*, std::optional<WebCore::VideoFrameTimeMetadata>&&);
 void webkitGstTraceProcessingTimeForElement(GstElement*);
 WebCore::VideoFrameMetadata webkitGstBufferGetVideoFrameMetadata(GstBuffer*);
 

Modified: trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -83,7 +83,7 @@
     callback(String(m_writer->mimeType()), m_writer->audioBitRate(), m_writer->videoBitRate());
 }
 
-void MediaRecorderPrivateAVFImpl::videoSampleAvailable(MediaSample& sampleBuffer, VideoSampleMetadata)
+void MediaRecorderPrivateAVFImpl::videoSampleAvailable(MediaSample& sampleBuffer, VideoFrameTimeMetadata)
 {
     if (shouldMuteVideo()) {
         if (!m_blackFrame) {

Modified: trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -49,7 +49,7 @@
     explicit MediaRecorderPrivateAVFImpl(Ref<MediaRecorderPrivateWriter>&&);
 
     // MediaRecorderPrivate
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
     void fetchData(FetchDataCallback&&) final;
     void audioSamplesAvailable(const MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t) final;
     void startRecording(StartRecordingCallback&&) final;

Modified: trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -51,7 +51,7 @@
     bool preparePipeline();
 
 private:
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final { };
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final { };
     void audioSamplesAvailable(const WTF::MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t) final { };
 
     void fetchData(FetchDataCallback&&) final;

Modified: trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -67,7 +67,7 @@
     completionHandler();
 }
 
-void MediaRecorderPrivateMock::videoSampleAvailable(MediaSample&, VideoSampleMetadata)
+void MediaRecorderPrivateMock::videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata)
 {
     Locker locker { m_bufferLock };
     m_buffer.append("Video Track ID: ");

Modified: trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -42,7 +42,7 @@
 
 private:
     // MediaRecorderPrivate
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
     void fetchData(FetchDataCallback&&) final;
     void audioSamplesAvailable(const MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t) final;
     void stopRecording(CompletionHandler<void()>&&) final;

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -104,9 +104,9 @@
         m_currentSettings = std::nullopt;
 }
 
-VideoSampleMetadata RealtimeIncomingVideoSource::metadataFromVideoFrame(const webrtc::VideoFrame& frame)
+VideoFrameTimeMetadata RealtimeIncomingVideoSource::metadataFromVideoFrame(const webrtc::VideoFrame& frame)
 {
-    VideoSampleMetadata metadata;
+    VideoFrameTimeMetadata metadata;
     if (frame.ntp_time_ms() > 0)
         metadata.captureTime = Seconds::fromMilliseconds(frame.ntp_time_ms());
     if (isInBounds<uint32_t>(frame.timestamp()))

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -63,7 +63,7 @@
     const char* logClassName() const final { return "RealtimeIncomingVideoSource"; }
 #endif
 
-    static VideoSampleMetadata metadataFromVideoFrame(const webrtc::VideoFrame&);
+    static VideoFrameTimeMetadata metadataFromVideoFrame(const webrtc::VideoFrame&);
 
 private:
     // RealtimeMediaSource API

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -192,7 +192,7 @@
     });
 }
 
-void RealtimeMediaSource::videoSampleAvailable(MediaSample& mediaSample, VideoSampleMetadata metadata)
+void RealtimeMediaSource::videoSampleAvailable(MediaSample& mediaSample, VideoFrameTimeMetadata metadata)
 {
 #if !RELEASE_LOG_DISABLED
     ++m_frameCount;

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -42,7 +42,7 @@
 #include "PlatformLayer.h"
 #include "RealtimeMediaSourceCapabilities.h"
 #include "RealtimeMediaSourceFactory.h"
-#include "VideoSampleMetadata.h"
+#include "VideoFrameTimeMetadata.h"
 #include <wtf/CompletionHandler.h>
 #include <wtf/Lock.h>
 #include <wtf/LoggerHelper.h>
@@ -103,7 +103,7 @@
         virtual ~VideoSampleObserver() = default;
 
         // May be called on a background thread.
-        virtual void videoSampleAvailable(MediaSample&, VideoSampleMetadata) = 0;
+        virtual void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) = 0;
     };
 
     virtual ~RealtimeMediaSource() = default;
@@ -250,7 +250,7 @@
     void initializeSampleRate(int sampleRate) { m_sampleRate = sampleRate; }
     void initializeEchoCancellation(bool echoCancellation) { m_echoCancellation = echoCancellation; }
 
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata);
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata);
     void audioSamplesAvailable(const MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t);
 
     void forEachObserver(const Function<void(Observer&)>&);

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -135,7 +135,7 @@
     void trackEnded(MediaStreamTrackPrivate&) final { }
 
     // RealtimeMediaSource::VideoSampleObserver API
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) override { }
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) override { }
 
     Ref<MediaStreamTrackPrivate> m_videoSource;
     Timer m_blackFrameTimer;

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -365,7 +365,7 @@
     setFrameRate(match->requestedFrameRate);
 }
 
-void RealtimeVideoCaptureSource::dispatchMediaSampleToObservers(MediaSample& sample, WebCore::VideoSampleMetadata metadata)
+void RealtimeVideoCaptureSource::dispatchMediaSampleToObservers(MediaSample& sample, WebCore::VideoFrameTimeMetadata metadata)
 {
     MediaTime sampleTime = sample.presentationTime();
 

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -73,7 +73,7 @@
 
     void updateCapabilities(RealtimeMediaSourceCapabilities&);
 
-    void dispatchMediaSampleToObservers(MediaSample&, WebCore::VideoSampleMetadata);
+    void dispatchMediaSampleToObservers(MediaSample&, WebCore::VideoFrameTimeMetadata);
 
     static Span<const IntSize> standardVideoSizes();
 

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -196,7 +196,7 @@
 }
 #endif
 
-void RealtimeVideoSource::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata metadata)
+void RealtimeVideoSource::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata metadata)
 {
     if (m_frameDecimation > 1 && ++m_frameDecimationCounter % m_frameDecimation)
         return;

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -72,7 +72,7 @@
     bool preventSourceFromStopping() final;
 
     // RealtimeMediaSource::VideoSampleObserver
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
 
 #if PLATFORM(COCOA)
     RefPtr<MediaSample> adaptVideoSample(MediaSample&);

Modified: trunk/Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -319,7 +319,7 @@
         return;
     }
 
-    VideoSampleMetadata metadata;
+    VideoFrameTimeMetadata metadata;
     metadata.captureTime = MonotonicTime::now().secondsSinceEpoch();
     videoSampleAvailable(*sample.get(), metadata);
 }

Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -105,10 +105,10 @@
         auto srcPad = adoptGRef(gst_element_get_static_pad(m_src.get(), "src"));
         if (m_deviceType == CaptureDevice::DeviceType::Camera) {
             gst_pad_add_probe(srcPad.get(), static_cast<GstPadProbeType>(GST_PAD_PROBE_TYPE_PUSH | GST_PAD_PROBE_TYPE_BUFFER), [](GstPad*, GstPadProbeInfo* info, gpointer) -> GstPadProbeReturn {
-                VideoSampleMetadata metadata;
+                VideoFrameTimeMetadata metadata;
                 metadata.captureTime = MonotonicTime::now().secondsSinceEpoch();
                 auto* buffer = GST_PAD_PROBE_INFO_BUFFER(info);
-                auto* modifiedBuffer = webkitGstBufferSetVideoSampleMetadata(buffer, metadata);
+                auto* modifiedBuffer = webkitGstBufferSetVideoFrameTimeMetadata(buffer, metadata);
                 gst_buffer_replace(&buffer, modifiedBuffer);
                 return GST_PAD_PROBE_OK;
             }, nullptr, nullptr);

Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -266,7 +266,7 @@
         }
     }
 
-    void videoSampleAvailable(MediaSample& sample, VideoSampleMetadata) final
+    void videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata) final
     {
         if (!m_parent || !m_isObserving)
             return;
@@ -356,9 +356,9 @@
     void pushBlackFrame()
     {
         GST_TRACE_OBJECT(m_src.get(), "Pushing black video frame");
-        VideoSampleMetadata metadata;
+        VideoFrameTimeMetadata metadata;
         metadata.captureTime = MonotonicTime::now().secondsSinceEpoch();
-        auto* buffer = webkitGstBufferSetVideoSampleMetadata(gst_sample_get_buffer(m_blackFrame.get()), metadata);
+        auto* buffer = webkitGstBufferSetVideoFrameTimeMetadata(gst_sample_get_buffer(m_blackFrame.get()), metadata);
         // TODO: Use gst_sample_set_buffer() after bumping GStreamer dependency to 1.16.
         auto* caps = gst_sample_get_caps(m_blackFrame.get());
         m_blackFrame = adoptGRef(gst_sample_new(buffer, caps, nullptr, nullptr));

Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -96,7 +96,7 @@
     m_source->setMuted(isMuted);
 }
 
-void MockDisplayCaptureSourceGStreamer::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata metadata)
+void MockDisplayCaptureSourceGStreamer::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata metadata)
 {
     RealtimeMediaSource::videoSampleAvailable(sample, metadata);
 }
@@ -162,7 +162,7 @@
     if (!pixelBuffer)
         return;
 
-    std::optional<VideoSampleMetadata> metadata;
+    std::optional<VideoFrameTimeMetadata> metadata;
     metadata->captureTime = MonotonicTime::now().secondsSinceEpoch();
     auto sample = MediaSampleGStreamer::createImageSample(WTFMove(*pixelBuffer), size(), frameRate(), sampleRotation(), false, WTFMove(metadata));
     sample->offsetTimestampsBy(MediaTime::createWithDouble((elapsedTime() + 100_ms).seconds()));

Modified: trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -50,7 +50,7 @@
 
 protected:
     // RealtimeMediaSource::VideoSampleObserver
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
 
 private:
     MockDisplayCaptureSourceGStreamer(RealtimeMediaSource::Type, Ref<MockRealtimeVideoSourceGStreamer>&&, String&&, CaptureDevice::DeviceType);

Modified: trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -50,7 +50,7 @@
 {
 }
 
-void RealtimeOutgoingVideoSourceLibWebRTC::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata)
+void RealtimeOutgoingVideoSourceLibWebRTC::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata)
 {
     switch (sample.videoRotation()) {
     case MediaSample::VideoRotation::None:

Modified: trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -42,7 +42,7 @@
     rtc::scoped_refptr<webrtc::VideoFrameBuffer> createBlackFrame(size_t, size_t) final;
 
     // RealtimeMediaSource::VideoSampleObserver API
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm	2022-03-15 07:52:24 UTC (rev 291269)
@@ -563,7 +563,7 @@
     auto sample = MediaSampleAVFObjC::create(sampleBuffer, m_sampleRotation, [captureConnection isVideoMirrored]);
     m_buffer = &sample.get();
     setIntrinsicSize(expandedIntSize(sample->presentationSize()));
-    VideoSampleMetadata metadata;
+    VideoFrameTimeMetadata metadata;
     metadata.captureTime = MonotonicTime::now().secondsSinceEpoch();
     dispatchMediaSampleToObservers(WTFMove(sample), metadata);
 }

Modified: trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm	2022-03-15 07:52:24 UTC (rev 291269)
@@ -101,7 +101,7 @@
 
     auto captureTime = MonotonicTime::now().secondsSinceEpoch();
     m_workQueue->dispatch([this, protectedThis = Ref { *this }, sampleBuffer = WTFMove(sampleBuffer), captureTime]() mutable {
-        VideoSampleMetadata metadata;
+        VideoFrameTimeMetadata metadata;
         metadata.captureTime = captureTime;
         dispatchMediaSampleToObservers(*sampleBuffer, metadata);
     });

Modified: trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -63,7 +63,7 @@
 {
 }
 
-void RealtimeOutgoingVideoSourceCocoa::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata)
+void RealtimeOutgoingVideoSourceCocoa::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata)
 {
 #if !RELEASE_LOG_DISABLED
     if (!(++m_numberOfFrames % 60))

Modified: trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h (291268 => 291269)


--- trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -45,7 +45,7 @@
     rtc::scoped_refptr<webrtc::VideoFrameBuffer> createBlackFrame(size_t width, size_t height) final;
 
     // RealtimeMediaSource::VideoSampleObserver API
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
 
     RetainPtr<CVPixelBufferRef> convertToYUV(CVPixelBufferRef);
     RetainPtr<CVPixelBufferRef> rotatePixelBuffer(CVPixelBufferRef, webrtc::VideoRotation);

Modified: trunk/Source/WebCore/testing/Internals.cpp (291268 => 291269)


--- trunk/Source/WebCore/testing/Internals.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/testing/Internals.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -5545,7 +5545,7 @@
     promise.resolve(m_trackVideoRotation);
 }
 
-void Internals::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata)
+void Internals::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata)
 {
     callOnMainThread([this, weakThis = WeakPtr { *this }, sample = Ref { sample }] {
         if (!weakThis)

Modified: trunk/Source/WebCore/testing/Internals.h (291268 => 291269)


--- trunk/Source/WebCore/testing/Internals.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebCore/testing/Internals.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1294,7 +1294,7 @@
 
 #if ENABLE(MEDIA_STREAM)
     // RealtimeMediaSource::Observer API
-    void videoSampleAvailable(MediaSample&, VideoSampleMetadata) final;
+    void videoSampleAvailable(MediaSample&, VideoFrameTimeMetadata) final;
     // RealtimeMediaSource::AudioSampleObserver API
     void audioSamplesAvailable(const MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t) final { m_trackAudioSampleCount++; }
 

Modified: trunk/Source/WebKit/ChangeLog (291268 => 291269)


--- trunk/Source/WebKit/ChangeLog	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/ChangeLog	2022-03-15 07:52:24 UTC (rev 291269)
@@ -1,3 +1,25 @@
+2022-03-15  Youenn Fablet  <you...@apple.com>
+
+        Rename VideoSampleMetadata to VideoFrameTimeMetadata
+        https://bugs.webkit.org/show_bug.cgi?id=237593
+
+        Reviewed by Eric Carlson.
+
+        * UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
+        * WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
+        (WebKit::MediaRecorderPrivate::videoSampleAvailable):
+        * WebProcess/GPU/webrtc/MediaRecorderPrivate.h:
+        * WebProcess/cocoa/RemoteCaptureSampleManager.cpp:
+        (WebKit::RemoteCaptureSampleManager::videoFrameAvailable):
+        (WebKit::RemoteCaptureSampleManager::videoFrameAvailableCV):
+        (WebKit::RemoteCaptureSampleManager::RemoteVideo::videoFrameAvailable):
+        * WebProcess/cocoa/RemoteCaptureSampleManager.h:
+        * WebProcess/cocoa/RemoteCaptureSampleManager.messages.in:
+        * WebProcess/cocoa/RemoteRealtimeDisplaySource.h:
+        * WebProcess/cocoa/RemoteRealtimeVideoSource.cpp:
+        (WebKit::RemoteRealtimeVideoSource::videoSampleAvailable):
+        * WebProcess/cocoa/RemoteRealtimeVideoSource.h:
+
 2022-03-14  Wenson Hsieh  <wenson_hs...@apple.com>
 
         [Mail Compose] Spelling and grammar context menu items need custom identifiers

Modified: trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp (291268 => 291269)


--- trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -187,7 +187,7 @@
         return &sample;
     }
 
-    void videoSampleAvailable(MediaSample& frame, VideoSampleMetadata metadata) final
+    void videoSampleAvailable(MediaSample& frame, VideoFrameTimeMetadata metadata) final
     {
         auto videoFrame = rotateVideoFrameIfNeeded(frame);
         if (!videoFrame)

Modified: trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -92,7 +92,7 @@
     WebProcess::singleton().ensureGPUProcessConnection().removeClient(*this);
 }
 
-void MediaRecorderPrivate::videoSampleAvailable(MediaSample& sample, VideoSampleMetadata)
+void MediaRecorderPrivate::videoSampleAvailable(MediaSample& sample, VideoFrameTimeMetadata)
 {
     if (shouldMuteVideo()) {
         if (!m_blackFrameSize) {

Modified: trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.h (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -56,7 +56,7 @@
 
 private:
     // WebCore::MediaRecorderPrivate
-    void videoSampleAvailable(WebCore::MediaSample&, WebCore::VideoSampleMetadata) final;
+    void videoSampleAvailable(WebCore::MediaSample&, WebCore::VideoFrameTimeMetadata) final;
     void fetchData(CompletionHandler<void(RefPtr<WebCore::FragmentedSharedBuffer>&&, const String& mimeType, double)>&&) final;
     void stopRecording(CompletionHandler<void()>&&) final;
     void startRecording(StartRecordingCallback&&) final;

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp	2022-03-15 07:52:24 UTC (rev 291269)
@@ -145,7 +145,7 @@
     iterator->value->setStorage(ipcHandle.handle, description, numberOfFrames, WTFMove(semaphore), mediaTime, frameChunkSize);
 }
 
-void RemoteCaptureSampleManager::videoFrameAvailable(RealtimeMediaSourceIdentifier identifier, RemoteVideoFrameProxy::Properties&& properties, VideoSampleMetadata metadata)
+void RemoteCaptureSampleManager::videoFrameAvailable(RealtimeMediaSourceIdentifier identifier, RemoteVideoFrameProxy::Properties&& properties, VideoFrameTimeMetadata metadata)
 {
     ASSERT(!WTF::isMainRunLoop());
     // Create videoFrame before early outs so that the reference in `properties` is adopted.
@@ -163,7 +163,7 @@
     iterator->value->videoFrameAvailable(WTFMove(videoFrame), videoFrameSize, metadata);
 }
 
-void RemoteCaptureSampleManager::videoFrameAvailableCV(RealtimeMediaSourceIdentifier identifier, RetainPtr<CVPixelBufferRef>&& pixelBuffer, WebCore::MediaSample::VideoRotation rotation, bool mirrored, MediaTime presentationTime, WebCore::VideoSampleMetadata metadata)
+void RemoteCaptureSampleManager::videoFrameAvailableCV(RealtimeMediaSourceIdentifier identifier, RetainPtr<CVPixelBufferRef>&& pixelBuffer, WebCore::MediaSample::VideoRotation rotation, bool mirrored, MediaTime presentationTime, WebCore::VideoFrameTimeMetadata metadata)
 {
     ASSERT(!WTF::isMainRunLoop());
     auto iterator = m_videoSources.find(identifier);

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -72,9 +72,9 @@
     // Messages
     void audioStorageChanged(WebCore::RealtimeMediaSourceIdentifier, const SharedMemory::IPCHandle&, const WebCore::CAAudioStreamDescription&, uint64_t numberOfFrames, IPC::Semaphore&&, const MediaTime&, size_t frameSampleSize);
     void audioSamplesAvailable(WebCore::RealtimeMediaSourceIdentifier, MediaTime, uint64_t numberOfFrames);
-    void videoFrameAvailable(WebCore::RealtimeMediaSourceIdentifier, RemoteVideoFrameProxy::Properties&&, WebCore::VideoSampleMetadata);
+    void videoFrameAvailable(WebCore::RealtimeMediaSourceIdentifier, RemoteVideoFrameProxy::Properties&&, WebCore::VideoFrameTimeMetadata);
     // FIXME: Will be removed once RemoteVideoFrameProxy providers are the only ones sending data.
-    void videoFrameAvailableCV(WebCore::RealtimeMediaSourceIdentifier, RetainPtr<CVPixelBufferRef>&&, WebCore::MediaSample::VideoRotation, bool mirrored, MediaTime, WebCore::VideoSampleMetadata);
+    void videoFrameAvailableCV(WebCore::RealtimeMediaSourceIdentifier, RetainPtr<CVPixelBufferRef>&&, WebCore::MediaSample::VideoRotation, bool mirrored, MediaTime, WebCore::VideoFrameTimeMetadata);
 
     void setConnection(IPC::Connection*);
 

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.messages.in (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.messages.in	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.messages.in	2022-03-15 07:52:24 UTC (rev 291269)
@@ -25,8 +25,8 @@
 
 messages -> RemoteCaptureSampleManager NotRefCounted {
     AudioStorageChanged(WebCore::RealtimeMediaSourceIdentifier id, WebKit::SharedMemory::IPCHandle storageHandle, WebCore::CAAudioStreamDescription description, uint64_t numberOfFrames, IPC::Semaphore captureSemaphore, MediaTime mediaTime, size_t frameChunkSize);
-    VideoFrameAvailable(WebCore::RealtimeMediaSourceIdentifier id, WebKit::RemoteVideoFrameProxy::Properties sample, struct WebCore::VideoSampleMetadata metadata)
-    VideoFrameAvailableCV(WebCore::RealtimeMediaSourceIdentifier id, RetainPtr<CVPixelBufferRef> pixelBuffer, WebCore::MediaSample::VideoRotation rotation, bool mirrored, MediaTime presentationTime, struct WebCore::VideoSampleMetadata metadata)
+    VideoFrameAvailable(WebCore::RealtimeMediaSourceIdentifier id, WebKit::RemoteVideoFrameProxy::Properties sample, struct WebCore::VideoFrameTimeMetadata metadata)
+    VideoFrameAvailableCV(WebCore::RealtimeMediaSourceIdentifier id, RetainPtr<CVPixelBufferRef> pixelBuffer, WebCore::MediaSample::VideoRotation rotation, bool mirrored, MediaTime presentationTime, struct WebCore::VideoFrameTimeMetadata metadata)
 
 }
 

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.h (291268 => 291269)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.h	2022-03-15 07:28:45 UTC (rev 291268)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.h	2022-03-15 07:52:24 UTC (rev 291269)
@@ -58,7 +58,7 @@
 
     void captureStopped(bool didFail);
 
-    void videoFrameAvailable(WebCore::VideoFrame& frame, WebCore::IntSize, WebCore::VideoSampleMetadata metadata) { videoSampleAvailable(frame, metadata); }
+    void videoFrameAvailable(WebCore::VideoFrame& frame, WebCore::IntSize, WebCore::VideoFrameTimeMetadata metadata) { videoSampleAvailable(frame, metadata); }
     void sourceMutedChanged(bool value, bool interrupted);
 
     void applyConstraintsSucceeded(WebCore::RealtimeMediaSourceSettings&&);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to