From 4e5af96606b94b048132cbf61514fa2b12cb0edc Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Mon, 3 Sep 2018 14:44:50 +0200 Subject: [PATCH] Include i420 buffers in Obj-C framework again. These headers was lost in the cleanup CL for the Obj-C directories. This puts them back in the framework headers. Note that since the protocol and interface was split into two different headers, and all public framework headers are put into a flat directory structure, I had to rename the implementation files so they would not collide in the framework header directory. Bug: webrtc:9701 Change-Id: I42d4c1e02bdfa4e114575f527c4c42a19be8fb52 Reviewed-on: https://webrtc-review.googlesource.com/97330 Reviewed-by: Peter Hanspers Commit-Queue: Anders Carlsson Cr-Commit-Position: refs/heads/master@{#24539} --- sdk/BUILD.gn | 23 +++++++++++++++---- .../Headers/WebRTC/RTCVideoFrameBuffer.h | 4 ++-- sdk/objc/api/RTCVideoRendererAdapter.mm | 2 -- .../api/video_codec/RTCVideoCodecConstants.h | 2 +- ...rivate.h => RTCNativeI420Buffer+Private.h} | 2 +- ...{RTCI420Buffer.h => RTCNativeI420Buffer.h} | 6 ++--- ...TCI420Buffer.mm => RTCNativeI420Buffer.mm} | 2 +- ...0Buffer.h => RTCNativeMutableI420Buffer.h} | 8 +++---- ...uffer.mm => RTCNativeMutableI420Buffer.mm} | 4 ++-- sdk/objc/base/RTCI420Buffer.h | 1 + sdk/objc/base/RTCMutableI420Buffer.h | 1 + sdk/objc/base/RTCMutableYUVPlanarBuffer.h | 1 + sdk/objc/base/RTCYUVPlanarBuffer.h | 1 + .../video_frame_buffer/RTCCVPixelBuffer.mm | 2 +- sdk/objc/native/src/objc_frame_buffer.mm | 2 +- .../native/src/objc_video_encoder_factory.mm | 1 - .../unittests/ObjCVideoTrackSource_xctest.mm | 2 +- sdk/objc/unittests/RTCCVPixelBuffer_xctest.mm | 2 +- sdk/objc/unittests/RTCMTLVideoView_xctest.m | 2 +- 19 files changed, 41 insertions(+), 27 deletions(-) rename sdk/objc/api/video_frame_buffer/{RTCI420Buffer+Private.h => RTCNativeI420Buffer+Private.h} (96%) rename sdk/objc/api/video_frame_buffer/{RTCI420Buffer.h => RTCNativeI420Buffer.h} (83%) rename sdk/objc/api/video_frame_buffer/{RTCI420Buffer.mm => RTCNativeI420Buffer.mm} (98%) rename sdk/objc/api/video_frame_buffer/{RTCMutableI420Buffer.h => RTCNativeMutableI420Buffer.h} (77%) rename sdk/objc/api/video_frame_buffer/{RTCMutableI420Buffer.mm => RTCNativeMutableI420Buffer.mm} (91%) diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn index 68f3ae69df..8a58a20b04 100644 --- a/sdk/BUILD.gn +++ b/sdk/BUILD.gn @@ -328,11 +328,11 @@ if (is_ios || is_mac) { rtc_static_library("videoframebuffer_objc") { visibility = [ "*" ] sources = [ - "objc/api/video_frame_buffer/RTCI420Buffer+Private.h", - "objc/api/video_frame_buffer/RTCI420Buffer.h", - "objc/api/video_frame_buffer/RTCI420Buffer.mm", - "objc/api/video_frame_buffer/RTCMutableI420Buffer.h", - "objc/api/video_frame_buffer/RTCMutableI420Buffer.mm", + "objc/api/video_frame_buffer/RTCNativeI420Buffer+Private.h", + "objc/api/video_frame_buffer/RTCNativeI420Buffer.h", + "objc/api/video_frame_buffer/RTCNativeI420Buffer.mm", + "objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h", + "objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.mm", "objc/components/video_frame_buffer/RTCCVPixelBuffer.h", "objc/components/video_frame_buffer/RTCCVPixelBuffer.mm", ] @@ -1194,8 +1194,11 @@ if (is_ios || is_mac) { common_objc_headers = [ "objc/base/RTCCodecSpecificInfo.h", "objc/base/RTCEncodedImage.h", + "objc/base/RTCI420Buffer.h", "objc/base/RTCLogging.h", "objc/base/RTCMacros.h", + "objc/base/RTCMutableI420Buffer.h", + "objc/base/RTCMutableYUVPlanarBuffer.h", "objc/base/RTCRtpFragmentationHeader.h", "objc/base/RTCVideoCapturer.h", "objc/base/RTCVideoCodecInfo.h", @@ -1208,6 +1211,7 @@ if (is_ios || is_mac) { "objc/base/RTCVideoFrame.h", "objc/base/RTCVideoFrameBuffer.h", "objc/base/RTCVideoRenderer.h", + "objc/base/RTCYUVPlanarBuffer.h", "objc/components/audio/RTCAudioSession.h", "objc/components/audio/RTCAudioSessionConfiguration.h", "objc/components/capturer/RTCCameraVideoCapturer.h", @@ -1261,10 +1265,13 @@ if (is_ios || is_mac) { "objc/api/peerconnection/RTCCertificate.h", "objc/api/peerconnection/RTCVideoSource.h", "objc/api/peerconnection/RTCVideoTrack.h", + "objc/api/video_codec/RTCVideoCodecConstants.h", "objc/api/video_codec/RTCVideoDecoderVP8.h", "objc/api/video_codec/RTCVideoDecoderVP9.h", "objc/api/video_codec/RTCVideoEncoderVP8.h", "objc/api/video_codec/RTCVideoEncoderVP9.h", + "objc/api/video_frame_buffer/RTCNativeI420Buffer.h", + "objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h", ] if (!build_with_chromium) { @@ -1341,8 +1348,11 @@ if (is_ios || is_mac) { mac_framework_header_files = [ "objc/base/RTCCodecSpecificInfo.h", "objc/base/RTCEncodedImage.h", + "objc/base/RTCI420Buffer.h", "objc/base/RTCLogging.h", "objc/base/RTCMacros.h", + "objc/base/RTCMutableI420Buffer.h", + "objc/base/RTCMutableYUVPlanarBuffer.h", "objc/base/RTCRtpFragmentationHeader.h", "objc/base/RTCVideoCapturer.h", "objc/base/RTCVideoCodecInfo.h", @@ -1355,6 +1365,7 @@ if (is_ios || is_mac) { "objc/base/RTCVideoFrame.h", "objc/base/RTCVideoFrameBuffer.h", "objc/base/RTCVideoRenderer.h", + "objc/base/RTCYUVPlanarBuffer.h", "objc/components/capturer/RTCCameraVideoCapturer.h", "objc/components/capturer/RTCFileVideoCapturer.h", "objc/components/renderer/metal/RTCMTLNSVideoView.h", @@ -1408,6 +1419,8 @@ if (is_ios || is_mac) { "objc/api/video_codec/RTCVideoDecoderVP9.h", "objc/api/video_codec/RTCVideoEncoderVP8.h", "objc/api/video_codec/RTCVideoEncoderVP9.h", + "objc/api/video_frame_buffer/RTCNativeI420Buffer.h", + "objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h", ] if (!build_with_chromium) { mac_framework_header_files += [ diff --git a/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrameBuffer.h b/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrameBuffer.h index 459e272aaf..8d4be50868 100644 --- a/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrameBuffer.h +++ b/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrameBuffer.h @@ -8,8 +8,8 @@ * be found in the AUTHORS file in the root of the source tree. */ -#import "api/video_frame_buffer/RTCI420Buffer.h" -#import "api/video_frame_buffer/RTCMutableI420Buffer.h" +#import "api/video_frame_buffer/RTCNativeI420Buffer.h" +#import "api/video_frame_buffer/RTCNativeMutableI420Buffer.h" #import "base/RTCI420Buffer.h" #import "base/RTCMutableI420Buffer.h" #import "base/RTCMutableYUVPlanarBuffer.h" diff --git a/sdk/objc/api/RTCVideoRendererAdapter.mm b/sdk/objc/api/RTCVideoRendererAdapter.mm index d30c4e7255..27dd6c2c52 100644 --- a/sdk/objc/api/RTCVideoRendererAdapter.mm +++ b/sdk/objc/api/RTCVideoRendererAdapter.mm @@ -9,9 +9,7 @@ */ #import "RTCVideoRendererAdapter+Private.h" -#import "api/video_frame_buffer/RTCI420Buffer+Private.h" #import "base/RTCVideoFrame.h" -#import "base/RTCVideoFrameBuffer.h" #include diff --git a/sdk/objc/api/video_codec/RTCVideoCodecConstants.h b/sdk/objc/api/video_codec/RTCVideoCodecConstants.h index 1d03f599aa..fb9043ff62 100644 --- a/sdk/objc/api/video_codec/RTCVideoCodecConstants.h +++ b/sdk/objc/api/video_codec/RTCVideoCodecConstants.h @@ -10,7 +10,7 @@ #import -#import "base/RTCMacros.h" +#import "RTCMacros.h" RTC_EXPORT extern NSString *const kRTCVideoCodecVp8Name; RTC_EXPORT extern NSString *const kRTCVideoCodecVp9Name; diff --git a/sdk/objc/api/video_frame_buffer/RTCI420Buffer+Private.h b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer+Private.h similarity index 96% rename from sdk/objc/api/video_frame_buffer/RTCI420Buffer+Private.h rename to sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer+Private.h index 97bc1418eb..fad08c2453 100644 --- a/sdk/objc/api/video_frame_buffer/RTCI420Buffer+Private.h +++ b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer+Private.h @@ -8,7 +8,7 @@ * be found in the AUTHORS file in the root of the source tree. */ -#import "RTCI420Buffer.h" +#import "RTCNativeI420Buffer.h" #include "api/video/i420_buffer.h" diff --git a/sdk/objc/api/video_frame_buffer/RTCI420Buffer.h b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.h similarity index 83% rename from sdk/objc/api/video_frame_buffer/RTCI420Buffer.h rename to sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.h index dc2613470b..48309522d0 100644 --- a/sdk/objc/api/video_frame_buffer/RTCI420Buffer.h +++ b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.h @@ -10,14 +10,14 @@ #import -#import "base/RTCI420Buffer.h" -#import "base/RTCMacros.h" +#import "RTCI420Buffer.h" +#import "RTCMacros.h" NS_ASSUME_NONNULL_BEGIN /** RTCI420Buffer implements the RTCI420Buffer protocol */ RTC_EXPORT -@interface RTCI420Buffer : NSObject +@interface RTCI420Buffer : NSObject @end NS_ASSUME_NONNULL_END diff --git a/sdk/objc/api/video_frame_buffer/RTCI420Buffer.mm b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.mm similarity index 98% rename from sdk/objc/api/video_frame_buffer/RTCI420Buffer.mm rename to sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.mm index babd93c80e..d9d5d15716 100644 --- a/sdk/objc/api/video_frame_buffer/RTCI420Buffer.mm +++ b/sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer.mm @@ -8,7 +8,7 @@ * be found in the AUTHORS file in the root of the source tree. */ -#import "RTCI420Buffer+Private.h" +#import "RTCNativeI420Buffer+Private.h" #include "api/video/i420_buffer.h" diff --git a/sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.h b/sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h similarity index 77% rename from sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.h rename to sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h index aa91af2597..035666d3e8 100644 --- a/sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.h +++ b/sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.h @@ -10,15 +10,15 @@ #import -#import "RTCI420Buffer.h" -#import "base/RTCMacros.h" -#import "base/RTCMutableI420Buffer.h" +#import "RTCMacros.h" +#import "RTCMutableI420Buffer.h" +#import "RTCNativeI420Buffer.h" NS_ASSUME_NONNULL_BEGIN /** Mutable version of RTCI420Buffer */ RTC_EXPORT -@interface RTCMutableI420Buffer : RTCI420Buffer +@interface RTCMutableI420Buffer : RTCI420Buffer @end NS_ASSUME_NONNULL_END diff --git a/sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.mm b/sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.mm similarity index 91% rename from sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.mm rename to sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.mm index e326faced6..5c6c1ffb64 100644 --- a/sdk/objc/api/video_frame_buffer/RTCMutableI420Buffer.mm +++ b/sdk/objc/api/video_frame_buffer/RTCNativeMutableI420Buffer.mm @@ -8,9 +8,9 @@ * be found in the AUTHORS file in the root of the source tree. */ -#import "RTCMutableI420Buffer.h" +#import "RTCNativeMutableI420Buffer.h" -#import "RTCI420Buffer+Private.h" +#import "RTCNativeI420Buffer+Private.h" #include "api/video/i420_buffer.h" diff --git a/sdk/objc/base/RTCI420Buffer.h b/sdk/objc/base/RTCI420Buffer.h index dad69dc7e0..27d73379ae 100644 --- a/sdk/objc/base/RTCI420Buffer.h +++ b/sdk/objc/base/RTCI420Buffer.h @@ -15,6 +15,7 @@ NS_ASSUME_NONNULL_BEGIN /** Protocol for RTCYUVPlanarBuffers containing I420 data */ +RTC_EXPORT @protocol RTCI420Buffer @end diff --git a/sdk/objc/base/RTCMutableI420Buffer.h b/sdk/objc/base/RTCMutableI420Buffer.h index 312e28dbfb..2eea6d06a9 100644 --- a/sdk/objc/base/RTCMutableI420Buffer.h +++ b/sdk/objc/base/RTCMutableI420Buffer.h @@ -16,6 +16,7 @@ NS_ASSUME_NONNULL_BEGIN /** Extension of the I420 buffer with mutable data access */ +RTC_EXPORT @protocol RTCMutableI420Buffer @end diff --git a/sdk/objc/base/RTCMutableYUVPlanarBuffer.h b/sdk/objc/base/RTCMutableYUVPlanarBuffer.h index 58cd278722..50b097d2db 100644 --- a/sdk/objc/base/RTCMutableYUVPlanarBuffer.h +++ b/sdk/objc/base/RTCMutableYUVPlanarBuffer.h @@ -15,6 +15,7 @@ NS_ASSUME_NONNULL_BEGIN /** Extension of the YUV planar data buffer with mutable data access */ +RTC_EXPORT @protocol RTCMutableYUVPlanarBuffer @property(nonatomic, readonly) uint8_t *mutableDataY; diff --git a/sdk/objc/base/RTCYUVPlanarBuffer.h b/sdk/objc/base/RTCYUVPlanarBuffer.h index c8314ffbed..b9dd282257 100644 --- a/sdk/objc/base/RTCYUVPlanarBuffer.h +++ b/sdk/objc/base/RTCYUVPlanarBuffer.h @@ -16,6 +16,7 @@ NS_ASSUME_NONNULL_BEGIN /** Protocol for RTCVideoFrameBuffers containing YUV planar data. */ +RTC_EXPORT @protocol RTCYUVPlanarBuffer @property(nonatomic, readonly) int chromaWidth; diff --git a/sdk/objc/components/video_frame_buffer/RTCCVPixelBuffer.mm b/sdk/objc/components/video_frame_buffer/RTCCVPixelBuffer.mm index f0291f5966..01b6405dc4 100644 --- a/sdk/objc/components/video_frame_buffer/RTCCVPixelBuffer.mm +++ b/sdk/objc/components/video_frame_buffer/RTCCVPixelBuffer.mm @@ -10,7 +10,7 @@ #import "RTCCVPixelBuffer.h" -#import "api/video_frame_buffer/RTCMutableI420Buffer.h" +#import "api/video_frame_buffer/RTCNativeMutableI420Buffer.h" #include "common_video/libyuv/include/webrtc_libyuv.h" #include "rtc_base/checks.h" diff --git a/sdk/objc/native/src/objc_frame_buffer.mm b/sdk/objc/native/src/objc_frame_buffer.mm index 12198d86b3..d1090fcef2 100644 --- a/sdk/objc/native/src/objc_frame_buffer.mm +++ b/sdk/objc/native/src/objc_frame_buffer.mm @@ -11,7 +11,7 @@ #include "sdk/objc/native/src/objc_frame_buffer.h" #import "base/RTCVideoFrameBuffer.h" -#import "sdk/objc/api/video_frame_buffer/RTCI420Buffer+Private.h" +#import "sdk/objc/api/video_frame_buffer/RTCNativeI420Buffer+Private.h" namespace webrtc { diff --git a/sdk/objc/native/src/objc_video_encoder_factory.mm b/sdk/objc/native/src/objc_video_encoder_factory.mm index fda02030bc..ba7c3e9675 100644 --- a/sdk/objc/native/src/objc_video_encoder_factory.mm +++ b/sdk/objc/native/src/objc_video_encoder_factory.mm @@ -21,7 +21,6 @@ #import "sdk/objc/api/peerconnection/RTCVideoEncoderSettings+Private.h" #import "sdk/objc/api/video_codec/RTCVideoCodecConstants.h" #import "sdk/objc/api/video_codec/RTCWrappedNativeVideoEncoder.h" -#import "sdk/objc/api/video_frame_buffer/RTCI420Buffer+Private.h" #import "sdk/objc/helpers/NSString+StdString.h" #include "api/video/video_frame.h" diff --git a/sdk/objc/unittests/ObjCVideoTrackSource_xctest.mm b/sdk/objc/unittests/ObjCVideoTrackSource_xctest.mm index cb187e2ed5..fa864a24e2 100644 --- a/sdk/objc/unittests/ObjCVideoTrackSource_xctest.mm +++ b/sdk/objc/unittests/ObjCVideoTrackSource_xctest.mm @@ -13,7 +13,7 @@ #include "sdk/objc/native/src/objc_video_track_source.h" -#import "api/video_frame_buffer/RTCI420Buffer+Private.h" +#import "api/video_frame_buffer/RTCNativeI420Buffer+Private.h" #import "base/RTCVideoFrame.h" #import "base/RTCVideoFrameBuffer.h" #import "components/video_frame_buffer/RTCCVPixelBuffer.h" diff --git a/sdk/objc/unittests/RTCCVPixelBuffer_xctest.mm b/sdk/objc/unittests/RTCCVPixelBuffer_xctest.mm index 135b94468b..ee970643ab 100644 --- a/sdk/objc/unittests/RTCCVPixelBuffer_xctest.mm +++ b/sdk/objc/unittests/RTCCVPixelBuffer_xctest.mm @@ -13,7 +13,7 @@ #import "components/video_frame_buffer/RTCCVPixelBuffer.h" -#import "api/video_frame_buffer/RTCI420Buffer+Private.h" +#import "api/video_frame_buffer/RTCNativeI420Buffer+Private.h" #import "base/RTCVideoFrame.h" #import "base/RTCVideoFrameBuffer.h" #import "frame_buffer_helpers.h" diff --git a/sdk/objc/unittests/RTCMTLVideoView_xctest.m b/sdk/objc/unittests/RTCMTLVideoView_xctest.m index 1bb2a36bf6..d792d0445d 100644 --- a/sdk/objc/unittests/RTCMTLVideoView_xctest.m +++ b/sdk/objc/unittests/RTCMTLVideoView_xctest.m @@ -16,7 +16,7 @@ #import "components/renderer/metal/RTCMTLVideoView.h" -#import "api/video_frame_buffer/RTCI420Buffer.h" +#import "api/video_frame_buffer/RTCNativeI420Buffer.h" #import "base/RTCVideoFrameBuffer.h" #import "components/renderer/metal/RTCMTLNV12Renderer.h" #import "components/video_frame_buffer/RTCCVPixelBuffer.h"