Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: webrtc/api/objc/RTCVideoRendererAdapter.mm

Issue 1903663002: Build dynamic iOS SDK. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Fix test gyp Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/api/objc/RTCVideoRendererAdapter.h ('k') | webrtc/api/objc/RTCVideoRendererAdapter+Private.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/api/objc/RTCVideoRendererAdapter.mm
diff --git a/webrtc/api/objc/RTCVideoRendererAdapter.mm b/webrtc/api/objc/RTCVideoRendererAdapter.mm
deleted file mode 100644
index af41a6307eae74aa92ca61dd0f9c0968b595dfb1..0000000000000000000000000000000000000000
--- a/webrtc/api/objc/RTCVideoRendererAdapter.mm
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright 2015 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#import "RTCVideoRendererAdapter.h"
-
-#include "webrtc/media/engine/webrtcvideoframe.h"
-
-#import "webrtc/api/objc/RTCVideoFrame+Private.h"
-#import "webrtc/api/objc/RTCVideoRendererAdapter+Private.h"
-
-namespace webrtc {
-
-class VideoRendererAdapter
- : public rtc::VideoSinkInterface<cricket::VideoFrame> {
- public:
- VideoRendererAdapter(RTCVideoRendererAdapter* adapter) {
- adapter_ = adapter;
- size_ = CGSizeZero;
- }
-
- void OnFrame(const cricket::VideoFrame& nativeVideoFrame) override {
- RTCVideoFrame *videoFrame = nil;
- // Rotation of native handles is unsupported right now. Convert to CPU
- // I420 buffer for rotation before calling the rotation method otherwise
- // it will hit a DCHECK.
- if (nativeVideoFrame.rotation() != webrtc::kVideoRotation_0 &&
- nativeVideoFrame.GetNativeHandle()) {
- rtc::scoped_refptr<webrtc::VideoFrameBuffer> i420Buffer =
- nativeVideoFrame.video_frame_buffer()->NativeToI420Buffer();
- std::unique_ptr<cricket::VideoFrame> cpuFrame(
- new cricket::WebRtcVideoFrame(i420Buffer,
- nativeVideoFrame.rotation(),
- nativeVideoFrame.timestamp_us()));
- const cricket::VideoFrame *rotatedFrame =
- cpuFrame->GetCopyWithRotationApplied();
- videoFrame = [[RTCVideoFrame alloc] initWithNativeFrame:rotatedFrame];
- } else {
- const cricket::VideoFrame *rotatedFrame =
- nativeVideoFrame.GetCopyWithRotationApplied();
- videoFrame = [[RTCVideoFrame alloc] initWithNativeFrame:rotatedFrame];
- }
- CGSize current_size = CGSizeMake(videoFrame.width, videoFrame.height);
- if (!CGSizeEqualToSize(size_, current_size)) {
- size_ = current_size;
- [adapter_.videoRenderer setSize:size_];
- }
- [adapter_.videoRenderer renderFrame:videoFrame];
- }
-
- private:
- __weak RTCVideoRendererAdapter *adapter_;
- CGSize size_;
-};
-}
-
-@implementation RTCVideoRendererAdapter {
- rtc::scoped_ptr<webrtc::VideoRendererAdapter> _adapter;
-}
-
-@synthesize videoRenderer = _videoRenderer;
-
-- (instancetype)initWithNativeRenderer:(id<RTCVideoRenderer>)videoRenderer {
- NSParameterAssert(videoRenderer);
- if (self = [super init]) {
- _videoRenderer = videoRenderer;
- _adapter.reset(new webrtc::VideoRendererAdapter(self));
- }
- return self;
-}
-
-- (rtc::VideoSinkInterface<cricket::VideoFrame> *)nativeVideoRenderer {
- return _adapter.get();
-}
-
-@end
« no previous file with comments | « webrtc/api/objc/RTCVideoRendererAdapter.h ('k') | webrtc/api/objc/RTCVideoRendererAdapter+Private.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698