Title: [290721] trunk/Source
Revision
290721
Author
[email protected]
Date
2022-03-01 23:08:11 -0800 (Tue, 01 Mar 2022)

Log Message

Remove RemoteVideoSample support from ImageTransferSessionVT
https://bugs.webkit.org/show_bug.cgi?id=237318

Reviewed by Eric Carlson.

Source/WebCore:

No change of behavior.

* platform/graphics/cv/ImageTransferSessionVT.h:
* platform/graphics/cv/ImageTransferSessionVT.mm:
* platform/mediastream/RealtimeMediaSource.h:
* platform/mediastream/RealtimeVideoCaptureSource.cpp:

Source/WebKit:

Remove no longer needed forward declaration or include of RemoteVideoSample.
Remove ImageTransferSessionVT::createMediaSample(RemoteVideoSample&&) and replace it with direct use of MediaSampleAVFObjC.

No change of behavior.

* GPUProcess/webrtc/RemoteMediaRecorder.cpp:
* GPUProcess/webrtc/RemoteMediaRecorder.h:
* GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp:
* GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h:
* WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
* WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp:
* WebProcess/cocoa/RemoteCaptureSampleManager.cpp:
* WebProcess/cocoa/RemoteCaptureSampleManager.h:
* WebProcess/cocoa/RemoteRealtimeAudioSource.h:
* WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h:
* WebProcess/cocoa/UserMediaCaptureManager.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (290720 => 290721)


--- trunk/Source/WebCore/ChangeLog	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebCore/ChangeLog	2022-03-02 07:08:11 UTC (rev 290721)
@@ -1,3 +1,17 @@
+2022-03-01  Youenn Fablet  <[email protected]>
+
+        Remove RemoteVideoSample support from ImageTransferSessionVT
+        https://bugs.webkit.org/show_bug.cgi?id=237318
+
+        Reviewed by Eric Carlson.
+
+        No change of behavior.
+
+        * platform/graphics/cv/ImageTransferSessionVT.h:
+        * platform/graphics/cv/ImageTransferSessionVT.mm:
+        * platform/mediastream/RealtimeMediaSource.h:
+        * platform/mediastream/RealtimeVideoCaptureSource.cpp:
+
 2022-03-01  Fujii Hironori  <[email protected]>
 
         Fix deprecations for ERB.new in GenerateSettings.rb

Modified: trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.h (290720 => 290721)


--- trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -38,8 +38,6 @@
 
 namespace WebCore {
 
-class RemoteVideoSample;
-
 class ImageTransferSessionVT {
 public:
     static std::unique_ptr<ImageTransferSessionVT> create(uint32_t pixelFormat, bool shouldUseIOSurface = true)
@@ -53,10 +51,7 @@
 
 #if !PLATFORM(MACCATALYST)
     WEBCORE_EXPORT RefPtr<MediaSample> createMediaSample(IOSurfaceRef, const MediaTime&, const IntSize&, MediaSample::VideoRotation = MediaSample::VideoRotation::None, bool mirrored = false);
-#if ENABLE(MEDIA_STREAM)
-    WEBCORE_EXPORT RefPtr<MediaSample> createMediaSample(const RemoteVideoSample&);
 #endif
-#endif
 
     uint32_t pixelFormat() const { return m_pixelFormat; }
 

Modified: trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.mm (290720 => 290721)


--- trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.mm	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebCore/platform/graphics/cv/ImageTransferSessionVT.mm	2022-03-02 07:08:11 UTC (rev 290721)
@@ -30,7 +30,6 @@
 #import "GraphicsContextCG.h"
 #import "Logging.h"
 #import "MediaSampleAVFObjC.h"
-#import "RemoteVideoSample.h"
 #import <CoreMedia/CMFormatDescription.h>
 #import <CoreMedia/CMSampleBuffer.h>
 
@@ -270,13 +269,6 @@
 }
 
 #if !PLATFORM(MACCATALYST)
-#if ENABLE(MEDIA_STREAM)
-RefPtr<MediaSample> ImageTransferSessionVT::createMediaSample(const RemoteVideoSample& remoteSample)
-{
-    return createMediaSample(remoteSample.surface(), remoteSample.time(), remoteSample.size(), remoteSample.rotation(), remoteSample.mirrored());
-}
-#endif
-
 RefPtr<MediaSample> ImageTransferSessionVT::createMediaSample(IOSurfaceRef surface, const MediaTime& sampleTime, const IntSize& size, MediaSample::VideoRotation rotation, bool mirrored)
 {
     auto sampleBuffer = createCMSampleBuffer(surface, sampleTime, size);

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h (290720 => 290721)


--- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -64,7 +64,6 @@
 class OrientationNotifier;
 class PlatformAudioData;
 class RealtimeMediaSourceSettings;
-class RemoteVideoSample;
 
 struct CaptureSourceOrError;
 

Modified: trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp (290720 => 290721)


--- trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeVideoCaptureSource.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -31,7 +31,6 @@
 #include "Logging.h"
 #include "RealtimeMediaSourceCenter.h"
 #include "RealtimeMediaSourceSettings.h"
-#include "RemoteVideoSample.h"
 #include <wtf/JSONValues.h>
 
 namespace WebCore {

Modified: trunk/Source/WebKit/ChangeLog (290720 => 290721)


--- trunk/Source/WebKit/ChangeLog	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/ChangeLog	2022-03-02 07:08:11 UTC (rev 290721)
@@ -1,3 +1,27 @@
+2022-03-01  Youenn Fablet  <[email protected]>
+
+        Remove RemoteVideoSample support from ImageTransferSessionVT
+        https://bugs.webkit.org/show_bug.cgi?id=237318
+
+        Reviewed by Eric Carlson.
+
+        Remove no longer needed forward declaration or include of RemoteVideoSample.
+        Remove ImageTransferSessionVT::createMediaSample(RemoteVideoSample&&) and replace it with direct use of MediaSampleAVFObjC.
+
+        No change of behavior.
+
+        * GPUProcess/webrtc/RemoteMediaRecorder.cpp:
+        * GPUProcess/webrtc/RemoteMediaRecorder.h:
+        * GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp:
+        * GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h:
+        * WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
+        * WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp:
+        * WebProcess/cocoa/RemoteCaptureSampleManager.cpp:
+        * WebProcess/cocoa/RemoteCaptureSampleManager.h:
+        * WebProcess/cocoa/RemoteRealtimeAudioSource.h:
+        * WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h:
+        * WebProcess/cocoa/UserMediaCaptureManager.h:
+
 2022-03-01  Robert Jenner  <[email protected]>
 
         Unreviewed, reverting r290588.

Modified: trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.cpp (290720 => 290721)


--- trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -34,7 +34,6 @@
 #include "SharedRingBufferStorage.h"
 #include <WebCore/CARingBuffer.h>
 #include <WebCore/MediaSampleAVFObjC.h>
-#include <WebCore/RemoteVideoSample.h>
 #include <WebCore/WebAudioBufferList.h>
 #include <wtf/CompletionHandler.h>
 

Modified: trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.h (290720 => 290721)


--- trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/GPUProcess/webrtc/RemoteMediaRecorder.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -44,7 +44,6 @@
 
 namespace WebCore {
 class CARingBuffer;
-class RemoteVideoSample;
 class WebAudioBufferList;
 struct MediaRecorderPrivateOptions;
 }

Modified: trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp (290720 => 290721)


--- trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -34,7 +34,6 @@
 #include <WebCore/ImageTransferSessionVT.h>
 #include <WebCore/LocalSampleBufferDisplayLayer.h>
 #include <WebCore/MediaSampleAVFObjC.h>
-#include <WebCore/RemoteVideoSample.h>
 
 namespace WebKit {
 

Modified: trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h (290720 => 290721)


--- trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -40,7 +40,6 @@
 namespace WebCore {
 class ImageTransferSessionVT;
 class LocalSampleBufferDisplayLayer;
-class RemoteVideoSample;
 };
 
 namespace WebKit {

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


--- trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -39,7 +39,6 @@
 #include <WebCore/MediaStreamPrivate.h>
 #include <WebCore/MediaStreamTrackPrivate.h>
 #include <WebCore/RealtimeIncomingVideoSourceCocoa.h>
-#include <WebCore/RemoteVideoSample.h>
 #include <WebCore/SharedBuffer.h>
 #include <WebCore/WebAudioBufferList.h>
 

Modified: trunk/Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -38,7 +38,6 @@
 #include "SampleBufferDisplayLayerManager.h"
 #include "WebCoreArgumentCoders.h"
 #include "WebProcess.h"
-#include <WebCore/RemoteVideoSample.h>
 
 namespace WebKit {
 using namespace WebCore;

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp	2022-03-02 07:08:11 UTC (rev 290721)
@@ -32,7 +32,8 @@
 #include "RemoteVideoFrameProxy.h"
 #include "SharedRingBufferStorage.h"
 #include "WebProcess.h"
-#include <WebCore/ImageTransferSessionVT.h>
+#include <WebCore/CVUtilities.h>
+#include <WebCore/MediaSampleAVFObjC.h>
 #include <WebCore/RemoteVideoSample.h>
 #include <WebCore/WebAudioBufferList.h>
 
@@ -259,20 +260,19 @@
 
 void RemoteCaptureSampleManager::RemoteVideo::videoSampleAvailable(RemoteVideoSample&& remoteSample, VideoSampleMetadata metadata)
 {
-    if (!m_imageTransferSession || m_imageTransferSession->pixelFormat() != remoteSample.videoFormat())
-        m_imageTransferSession = ImageTransferSessionVT::create(remoteSample.videoFormat());
-
-    if (!m_imageTransferSession) {
+    auto pixelBuffer = createCVPixelBuffer(remoteSample.surface()).value_or(nullptr);
+    if (!pixelBuffer) {
         ASSERT_NOT_REACHED();
         return;
     }
 
-    auto sampleRef = m_imageTransferSession->createMediaSample(remoteSample);
-    if (!sampleRef) {
+    auto videoFrame = MediaSampleAVFObjC::createImageSample(WTFMove(pixelBuffer), remoteSample.rotation(), remoteSample.mirrored(), remoteSample.time());
+    if (!videoFrame) {
         ASSERT_NOT_REACHED();
         return;
     }
-    videoFrameAvailable(sampleRef.releaseNonNull(), remoteSample.size(), metadata);
+
+    videoFrameAvailable(videoFrame.releaseNonNull(), remoteSample.size(), metadata);
 }
 
 void RemoteCaptureSampleManager::RemoteVideo::videoFrameAvailable(Ref<MediaSample>&& sample, IntSize size, VideoSampleMetadata metadata)

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -117,7 +117,6 @@
 
     private:
         Source m_source;
-        std::unique_ptr<WebCore::ImageTransferSessionVT> m_imageTransferSession;
     };
 
     bool m_isRegisteredToParentProcessConnection { false };

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeAudioSource.h (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeAudioSource.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeAudioSource.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -41,7 +41,6 @@
 class CAAudioStreamDescription;
 class ImageTransferSessionVT;
 struct MediaConstraints;
-class RemoteVideoSample;
 }
 
 namespace WebKit {

Modified: trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -38,7 +38,6 @@
 class CAAudioStreamDescription;
 class ImageTransferSessionVT;
 struct MediaConstraints;
-class RemoteVideoSample;
 }
 
 namespace WebKit {

Modified: trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.h (290720 => 290721)


--- trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.h	2022-03-02 06:42:27 UTC (rev 290720)
+++ trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.h	2022-03-02 07:08:11 UTC (rev 290721)
@@ -38,7 +38,6 @@
 
 namespace WebCore {
 class CAAudioStreamDescription;
-class RemoteVideoSample;
 }
 
 namespace WebKit {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to