Split iOS sdk in to separate targets
This CL splits the iOS sdk into separate static libraries for video, audio, ui, common, and peerconnection-related code. This will in the future make it easier to compile WebRTC without unneeded components. BUG=webrtc:4867 Review-Url: https://codereview.webrtc.org/2862543002 Cr-Commit-Position: refs/heads/master@{#18166}
This commit is contained in:
@ -410,7 +410,7 @@ if (rtc_include_tests) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (is_ios || is_mac) {
|
if (is_ios || is_mac) {
|
||||||
deps += [ "sdk:rtc_sdk_peerconnection_objc_unittests" ]
|
deps += [ "sdk:objc_sdk_unittests" ]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -163,7 +163,7 @@ if (is_ios || (is_mac && target_cpu != "x86")) {
|
|||||||
public_configs = [ ":apprtc_common_config" ]
|
public_configs = [ ":apprtc_common_config" ]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
"//webrtc/sdk:rtc_sdk_common_objc",
|
"//webrtc/sdk:objc_common",
|
||||||
"//webrtc/system_wrappers:field_trial_default",
|
"//webrtc/system_wrappers:field_trial_default",
|
||||||
"//webrtc/system_wrappers:metrics_default",
|
"//webrtc/system_wrappers:metrics_default",
|
||||||
]
|
]
|
||||||
@ -232,7 +232,7 @@ if (is_ios || (is_mac && target_cpu != "x86")) {
|
|||||||
":socketrocket",
|
":socketrocket",
|
||||||
]
|
]
|
||||||
public_deps = [
|
public_deps = [
|
||||||
"//webrtc/sdk:rtc_sdk_peerconnection_objc",
|
"//webrtc/sdk:objc_peerconnection",
|
||||||
]
|
]
|
||||||
libs = [ "QuartzCore.framework" ]
|
libs = [ "QuartzCore.framework" ]
|
||||||
}
|
}
|
||||||
@ -290,7 +290,7 @@ if (is_ios || (is_mac && target_cpu != "x86")) {
|
|||||||
|
|
||||||
bundle_data("AppRTCMobile_ios_frameworks") {
|
bundle_data("AppRTCMobile_ios_frameworks") {
|
||||||
public_deps = [
|
public_deps = [
|
||||||
"//webrtc/sdk:rtc_sdk_framework_objc+link",
|
"//webrtc/sdk:objc_framework+link",
|
||||||
]
|
]
|
||||||
sources = [
|
sources = [
|
||||||
"$root_out_dir/WebRTC.framework",
|
"$root_out_dir/WebRTC.framework",
|
||||||
|
|||||||
@ -176,7 +176,7 @@ rtc_static_library("audio_device") {
|
|||||||
public_deps = [
|
public_deps = [
|
||||||
"../../base:gtest_prod",
|
"../../base:gtest_prod",
|
||||||
"../../base:rtc_base",
|
"../../base:rtc_base",
|
||||||
"../../sdk:rtc_sdk_common_objc",
|
"../../sdk:objc_common",
|
||||||
]
|
]
|
||||||
sources += [
|
sources += [
|
||||||
"ios/audio_device_ios.h",
|
"ios/audio_device_ios.h",
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
#include "webrtc/base/thread.h"
|
#include "webrtc/base/thread.h"
|
||||||
#include "webrtc/base/thread_annotations.h"
|
#include "webrtc/base/thread_annotations.h"
|
||||||
#include "webrtc/modules/audio_device/fine_audio_buffer.h"
|
#include "webrtc/modules/audio_device/fine_audio_buffer.h"
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/helpers.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Common/helpers.h"
|
||||||
|
|
||||||
#import "WebRTC/RTCLogging.h"
|
#import "WebRTC/RTCLogging.h"
|
||||||
#import "webrtc/modules/audio_device/ios/objc/RTCAudioSession.h"
|
#import "webrtc/modules/audio_device/ios/objc/RTCAudioSession.h"
|
||||||
|
|||||||
@ -376,7 +376,7 @@ if (rtc_include_tests) {
|
|||||||
if (is_ios || is_mac) {
|
if (is_ios || is_mac) {
|
||||||
deps += [
|
deps += [
|
||||||
"../../media:rtc_media_base",
|
"../../media:rtc_media_base",
|
||||||
"../../sdk:webrtc_h264_video_toolbox",
|
"../../sdk:objc_videotoolbox",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,8 +23,8 @@
|
|||||||
#include "webrtc/sdk/android/src/jni/androidmediadecoder_jni.h"
|
#include "webrtc/sdk/android/src/jni/androidmediadecoder_jni.h"
|
||||||
#include "webrtc/sdk/android/src/jni/androidmediaencoder_jni.h"
|
#include "webrtc/sdk/android/src/jni/androidmediaencoder_jni.h"
|
||||||
#elif defined(WEBRTC_IOS)
|
#elif defined(WEBRTC_IOS)
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/h264_video_toolbox_decoder.h"
|
#include "webrtc/sdk/objc/Framework/Classes/VideoToolbox/decoder.h"
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/h264_video_toolbox_encoder.h"
|
#include "webrtc/sdk/objc/Framework/Classes/VideoToolbox/encoder.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "webrtc/base/checks.h"
|
#include "webrtc/base/checks.h"
|
||||||
|
|||||||
@ -11,44 +11,50 @@ if (is_ios) {
|
|||||||
import("//build/config/ios/rules.gni")
|
import("//build/config/ios/rules.gni")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
declare_args() {
|
||||||
|
# Determine whether or not to include metal rendering
|
||||||
|
rtc_use_metal_rendering = is_mac || (is_ios && current_cpu == "arm64")
|
||||||
|
}
|
||||||
|
|
||||||
group("sdk") {
|
group("sdk") {
|
||||||
if (is_ios) {
|
if (is_ios) {
|
||||||
public_deps = [
|
public_deps = [
|
||||||
":rtc_sdk_framework_objc",
|
":objc_framework",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_ios || is_mac) {
|
if (is_ios || is_mac) {
|
||||||
config("rtc_sdk_common_objc_config") {
|
config("objc_common_config") {
|
||||||
include_dirs = [
|
include_dirs = [
|
||||||
"objc/Framework/Classes",
|
"objc/Framework/Classes",
|
||||||
|
"objc/Framework/Classes/Audio",
|
||||||
|
"objc/Framework/Classes/Common",
|
||||||
|
"objc/Framework/Classes/Metal",
|
||||||
|
"objc/Framework/Classes/PeerConnection",
|
||||||
|
"objc/Framework/Classes/UI",
|
||||||
|
"objc/Framework/Classes/Video",
|
||||||
|
"objc/Framework/Classes/VideoToolbox",
|
||||||
"objc/Framework/Headers",
|
"objc/Framework/Headers",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc_static_library("rtc_sdk_common_objc") {
|
rtc_static_library("objc_common") {
|
||||||
sources = [
|
sources = [
|
||||||
"objc/Framework/Classes/NSString+StdString.h",
|
"objc/Framework/Classes/Common/NSString+StdString.h",
|
||||||
"objc/Framework/Classes/NSString+StdString.mm",
|
"objc/Framework/Classes/Common/NSString+StdString.mm",
|
||||||
"objc/Framework/Classes/RTCDispatcher.m",
|
"objc/Framework/Classes/Common/RTCDispatcher+Private.h",
|
||||||
"objc/Framework/Classes/RTCFieldTrials.mm",
|
"objc/Framework/Classes/Common/RTCDispatcher.m",
|
||||||
"objc/Framework/Classes/RTCLogging.mm",
|
"objc/Framework/Classes/Common/RTCFieldTrials.mm",
|
||||||
"objc/Framework/Classes/RTCMetrics.mm",
|
"objc/Framework/Classes/Common/RTCLogging.mm",
|
||||||
"objc/Framework/Classes/RTCMetricsSampleInfo+Private.h",
|
"objc/Framework/Classes/Common/RTCUIApplication.h",
|
||||||
"objc/Framework/Classes/RTCMetricsSampleInfo.mm",
|
"objc/Framework/Classes/Common/RTCUIApplication.mm",
|
||||||
"objc/Framework/Classes/RTCSSLAdapter.mm",
|
"objc/Framework/Classes/Common/helpers.h",
|
||||||
"objc/Framework/Classes/RTCTracing.mm",
|
"objc/Framework/Classes/Common/helpers.mm",
|
||||||
"objc/Framework/Classes/helpers.h",
|
|
||||||
"objc/Framework/Classes/helpers.mm",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCDispatcher.h",
|
"objc/Framework/Headers/WebRTC/RTCDispatcher.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCFieldTrials.h",
|
"objc/Framework/Headers/WebRTC/RTCFieldTrials.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCLogging.h",
|
"objc/Framework/Headers/WebRTC/RTCLogging.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMacros.h",
|
"objc/Framework/Headers/WebRTC/RTCMacros.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCSSLAdapter.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCTracing.h",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
@ -56,132 +62,201 @@ if (is_ios || is_mac) {
|
|||||||
]
|
]
|
||||||
configs += [ "..:common_objc" ]
|
configs += [ "..:common_objc" ]
|
||||||
|
|
||||||
public_configs = [ ":rtc_sdk_common_objc_config" ]
|
public_configs = [ ":objc_common_config" ]
|
||||||
|
|
||||||
if (is_ios) {
|
if (is_ios) {
|
||||||
sources += [
|
sources += [
|
||||||
"objc/Framework/Classes/RTCCameraPreviewView.m",
|
"objc/Framework/Classes/Common/UIDevice+RTCDevice.mm",
|
||||||
"objc/Framework/Classes/RTCUIApplication.h",
|
|
||||||
"objc/Framework/Classes/RTCUIApplication.mm",
|
|
||||||
"objc/Framework/Classes/UIDevice+RTCDevice.mm",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h",
|
"objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_mac || (is_ios && current_cpu == "arm64")) {
|
if (!build_with_chromium) {
|
||||||
sources += [
|
sources += [
|
||||||
|
"objc/Framework/Classes/Common/RTCFileLogger.mm",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCFileLogger.h",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rtc_static_library("objc_video") {
|
||||||
|
sources = [
|
||||||
|
"objc/Framework/Classes/Video/RTCAVFoundationVideoCapturerInternal.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCAVFoundationVideoCapturerInternal.mm",
|
||||||
|
"objc/Framework/Classes/Video/RTCI420Shader.mm",
|
||||||
|
"objc/Framework/Classes/Video/RTCI420TextureCache.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCI420TextureCache.mm",
|
||||||
|
"objc/Framework/Classes/Video/RTCOpenGLDefines.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCShader+Private.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCShader.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCShader.mm",
|
||||||
|
"objc/Framework/Classes/Video/avfoundationformatmapper.h",
|
||||||
|
"objc/Framework/Classes/Video/avfoundationformatmapper.mm",
|
||||||
|
"objc/Framework/Classes/Video/avfoundationvideocapturer.h",
|
||||||
|
"objc/Framework/Classes/Video/avfoundationvideocapturer.mm",
|
||||||
|
"objc/Framework/Classes/Video/objcvideotracksource.h",
|
||||||
|
"objc/Framework/Classes/Video/objcvideotracksource.mm",
|
||||||
|
]
|
||||||
|
libs = []
|
||||||
|
if (is_ios) {
|
||||||
|
sources += [
|
||||||
|
"objc/Framework/Classes/Video/RTCNV12TextureCache.h",
|
||||||
|
"objc/Framework/Classes/Video/RTCNV12TextureCache.m",
|
||||||
|
"objc/Framework/Classes/Video/RTCNativeNV12Shader.mm",
|
||||||
|
]
|
||||||
|
libs += [
|
||||||
|
"GLKit.framework",
|
||||||
|
"OpenGLES.framework",
|
||||||
|
"QuartzCore.framework",
|
||||||
|
]
|
||||||
|
} else if (is_mac) {
|
||||||
|
sources += []
|
||||||
|
|
||||||
|
libs += [
|
||||||
|
"CoreMedia.framework",
|
||||||
|
"CoreVideo.framework",
|
||||||
|
"OpenGL.framework",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
deps = [
|
||||||
|
":objc_common",
|
||||||
|
":objc_corevideoframebuffer",
|
||||||
|
":objc_videotoolbox",
|
||||||
|
"//webrtc/api:libjingle_peerconnection_api",
|
||||||
|
"//webrtc/base:rtc_base",
|
||||||
|
"//webrtc/common_video",
|
||||||
|
"//webrtc/media:rtc_media_base",
|
||||||
|
]
|
||||||
|
|
||||||
|
configs += [ "..:common_objc" ]
|
||||||
|
if (!build_with_chromium && is_clang) {
|
||||||
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||||
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rtc_static_library("objc_ui") {
|
||||||
|
if (is_ios) {
|
||||||
|
sources = [
|
||||||
|
"objc/Framework/Classes/UI/RTCCameraPreviewView.m",
|
||||||
|
"objc/Framework/Classes/UI/RTCEAGLVideoView.m",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
if (is_mac) {
|
||||||
|
sources = [
|
||||||
|
"objc/Framework/Classes/UI/RTCNSGLVideoView.m",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
configs += [ "..:common_objc" ]
|
||||||
|
deps = [
|
||||||
|
":objc_common",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rtc_use_metal_rendering) {
|
||||||
|
rtc_static_library("objc_metal") {
|
||||||
|
sources = [
|
||||||
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.h",
|
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.h",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.mm",
|
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.mm",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLRenderer+Private.h",
|
"objc/Framework/Classes/Metal/RTCMTLRenderer+Private.h",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLRenderer.h",
|
"objc/Framework/Classes/Metal/RTCMTLRenderer.h",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLRenderer.mm",
|
"objc/Framework/Classes/Metal/RTCMTLRenderer.mm",
|
||||||
]
|
]
|
||||||
deps += [ "../api:video_frame_api" ]
|
|
||||||
|
|
||||||
if (is_ios) {
|
if (is_ios) {
|
||||||
sources += [
|
sources += [
|
||||||
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h",
|
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm",
|
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm",
|
||||||
"objc/Framework/Classes/Metal/RTCMTLVideoView.m",
|
"objc/Framework/Classes/Metal/RTCMTLVideoView.m",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCMTLVideoView.h",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
if (is_mac) {
|
if (is_mac) {
|
||||||
sources += [ "objc/Framework/Classes/Metal/RTCMTLNSVideoView.m" ]
|
sources += [
|
||||||
|
"objc/Framework/Classes/Metal/RTCMTLNSVideoView.m",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCMTLNSVideoView.h",
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
libs = [
|
||||||
|
|
||||||
libs = [ "AVFoundation.framework" ]
|
|
||||||
if (is_mac || (is_ios && current_cpu == "arm64")) {
|
|
||||||
libs += [
|
|
||||||
"CoreVideo.framework",
|
"CoreVideo.framework",
|
||||||
"Metal.framework",
|
"Metal.framework",
|
||||||
"MetalKit.framework",
|
"MetalKit.framework",
|
||||||
]
|
]
|
||||||
}
|
deps = [
|
||||||
if (!build_with_chromium) {
|
":objc_video",
|
||||||
sources += [
|
"//webrtc/api:video_frame_api",
|
||||||
"objc/Framework/Classes/RTCFileLogger.mm",
|
"//webrtc/base:rtc_base_approved",
|
||||||
"objc/Framework/Headers/WebRTC/RTCFileLogger.h",
|
|
||||||
]
|
]
|
||||||
|
configs += [ "..:common_objc" ]
|
||||||
|
public_configs = [ ":objc_common_config" ]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc_static_library("rtc_sdk_peerconnection_objc") {
|
rtc_static_library("objc_peerconnection") {
|
||||||
sources = [
|
sources = [
|
||||||
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h",
|
"objc/Framework/Classes/PeerConnection/RTCAVFoundationVideoSource+Private.h",
|
||||||
"objc/Framework/Classes/RTCAVFoundationVideoCapturerInternal.h",
|
"objc/Framework/Classes/PeerConnection/RTCAVFoundationVideoSource.mm",
|
||||||
"objc/Framework/Classes/RTCAVFoundationVideoCapturerInternal.mm",
|
"objc/Framework/Classes/PeerConnection/RTCAudioSource+Private.h",
|
||||||
"objc/Framework/Classes/RTCAVFoundationVideoSource+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCAudioSource.mm",
|
||||||
"objc/Framework/Classes/RTCAVFoundationVideoSource.mm",
|
"objc/Framework/Classes/PeerConnection/RTCAudioTrack+Private.h",
|
||||||
"objc/Framework/Classes/RTCAudioSource+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCAudioTrack.mm",
|
||||||
"objc/Framework/Classes/RTCAudioSource.mm",
|
"objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m",
|
||||||
"objc/Framework/Classes/RTCAudioTrack+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCConfiguration+Private.h",
|
||||||
"objc/Framework/Classes/RTCAudioTrack.mm",
|
"objc/Framework/Classes/PeerConnection/RTCConfiguration.mm",
|
||||||
"objc/Framework/Classes/RTCCameraVideoCapturer.m",
|
"objc/Framework/Classes/PeerConnection/RTCDataChannel+Private.h",
|
||||||
"objc/Framework/Classes/RTCConfiguration+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCDataChannel.mm",
|
||||||
"objc/Framework/Classes/RTCConfiguration.mm",
|
"objc/Framework/Classes/PeerConnection/RTCDataChannelConfiguration+Private.h",
|
||||||
"objc/Framework/Classes/RTCDataChannel+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCDataChannelConfiguration.mm",
|
||||||
"objc/Framework/Classes/RTCDataChannel.mm",
|
"objc/Framework/Classes/PeerConnection/RTCIceCandidate+Private.h",
|
||||||
"objc/Framework/Classes/RTCDataChannelConfiguration+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCIceCandidate.mm",
|
||||||
"objc/Framework/Classes/RTCDataChannelConfiguration.mm",
|
"objc/Framework/Classes/PeerConnection/RTCIceServer+Private.h",
|
||||||
"objc/Framework/Classes/RTCI420Shader.mm",
|
"objc/Framework/Classes/PeerConnection/RTCIceServer.mm",
|
||||||
"objc/Framework/Classes/RTCI420TextureCache.h",
|
"objc/Framework/Classes/PeerConnection/RTCLegacyStatsReport+Private.h",
|
||||||
"objc/Framework/Classes/RTCI420TextureCache.mm",
|
"objc/Framework/Classes/PeerConnection/RTCLegacyStatsReport.mm",
|
||||||
"objc/Framework/Classes/RTCIceCandidate+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMediaConstraints+Private.h",
|
||||||
"objc/Framework/Classes/RTCIceCandidate.mm",
|
"objc/Framework/Classes/PeerConnection/RTCMediaConstraints.mm",
|
||||||
"objc/Framework/Classes/RTCIceServer+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMediaSource+Private.h",
|
||||||
"objc/Framework/Classes/RTCIceServer.mm",
|
"objc/Framework/Classes/PeerConnection/RTCMediaSource.mm",
|
||||||
"objc/Framework/Classes/RTCLegacyStatsReport+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMediaStream+Private.h",
|
||||||
"objc/Framework/Classes/RTCLegacyStatsReport.mm",
|
"objc/Framework/Classes/PeerConnection/RTCMediaStream.mm",
|
||||||
"objc/Framework/Classes/RTCMediaConstraints+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMediaStreamTrack+Private.h",
|
||||||
"objc/Framework/Classes/RTCMediaConstraints.mm",
|
"objc/Framework/Classes/PeerConnection/RTCMediaStreamTrack.mm",
|
||||||
"objc/Framework/Classes/RTCMediaSource+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMetrics.mm",
|
||||||
"objc/Framework/Classes/RTCMediaSource.mm",
|
"objc/Framework/Classes/PeerConnection/RTCMetricsSampleInfo+Private.h",
|
||||||
"objc/Framework/Classes/RTCMediaStream+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCMetricsSampleInfo.mm",
|
||||||
"objc/Framework/Classes/RTCMediaStream.mm",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnection+DataChannel.mm",
|
||||||
"objc/Framework/Classes/RTCMediaStreamTrack+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnection+Private.h",
|
||||||
"objc/Framework/Classes/RTCMediaStreamTrack.mm",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnection+Stats.mm",
|
||||||
"objc/Framework/Classes/RTCOpenGLDefines.h",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnection.mm",
|
||||||
"objc/Framework/Classes/RTCPeerConnection+DataChannel.mm",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnectionFactory+Private.h",
|
||||||
"objc/Framework/Classes/RTCPeerConnection+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCPeerConnectionFactory.mm",
|
||||||
"objc/Framework/Classes/RTCPeerConnection+Stats.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpCodecParameters+Private.h",
|
||||||
"objc/Framework/Classes/RTCPeerConnection.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpCodecParameters.mm",
|
||||||
"objc/Framework/Classes/RTCPeerConnectionFactory+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCRtpEncodingParameters+Private.h",
|
||||||
"objc/Framework/Classes/RTCPeerConnectionFactory.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpEncodingParameters.mm",
|
||||||
"objc/Framework/Classes/RTCRtpCodecParameters+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCRtpParameters+Private.h",
|
||||||
"objc/Framework/Classes/RTCRtpCodecParameters.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpParameters.mm",
|
||||||
"objc/Framework/Classes/RTCRtpEncodingParameters+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCRtpReceiver+Private.h",
|
||||||
"objc/Framework/Classes/RTCRtpEncodingParameters.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpReceiver.mm",
|
||||||
"objc/Framework/Classes/RTCRtpParameters+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCRtpSender+Private.h",
|
||||||
"objc/Framework/Classes/RTCRtpParameters.mm",
|
"objc/Framework/Classes/PeerConnection/RTCRtpSender.mm",
|
||||||
"objc/Framework/Classes/RTCRtpReceiver+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCSSLAdapter.mm",
|
||||||
"objc/Framework/Classes/RTCRtpReceiver.mm",
|
"objc/Framework/Classes/PeerConnection/RTCSessionDescription+Private.h",
|
||||||
"objc/Framework/Classes/RTCRtpSender+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCSessionDescription.mm",
|
||||||
"objc/Framework/Classes/RTCRtpSender.mm",
|
"objc/Framework/Classes/PeerConnection/RTCTracing.mm",
|
||||||
"objc/Framework/Classes/RTCSessionDescription+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoCapturer.m",
|
||||||
"objc/Framework/Classes/RTCSessionDescription.mm",
|
"objc/Framework/Classes/PeerConnection/RTCVideoFrame+Private.h",
|
||||||
"objc/Framework/Classes/RTCShader+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoFrame.mm",
|
||||||
"objc/Framework/Classes/RTCShader.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter+Private.h",
|
||||||
"objc/Framework/Classes/RTCShader.mm",
|
"objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter.h",
|
||||||
"objc/Framework/Classes/RTCVideoCapturer.m",
|
"objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter.mm",
|
||||||
"objc/Framework/Classes/RTCVideoFrame+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoSource+Private.h",
|
||||||
"objc/Framework/Classes/RTCVideoFrame.mm",
|
"objc/Framework/Classes/PeerConnection/RTCVideoSource.mm",
|
||||||
"objc/Framework/Classes/RTCVideoRendererAdapter+Private.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoTrack+Private.h",
|
||||||
"objc/Framework/Classes/RTCVideoRendererAdapter.h",
|
"objc/Framework/Classes/PeerConnection/RTCVideoTrack.mm",
|
||||||
"objc/Framework/Classes/RTCVideoRendererAdapter.mm",
|
|
||||||
"objc/Framework/Classes/RTCVideoSource+Private.h",
|
|
||||||
"objc/Framework/Classes/RTCVideoSource.mm",
|
|
||||||
"objc/Framework/Classes/RTCVideoTrack+Private.h",
|
|
||||||
"objc/Framework/Classes/RTCVideoTrack.mm",
|
|
||||||
"objc/Framework/Classes/avfoundationformatmapper.h",
|
|
||||||
"objc/Framework/Classes/avfoundationformatmapper.mm",
|
|
||||||
"objc/Framework/Classes/avfoundationvideocapturer.h",
|
|
||||||
"objc/Framework/Classes/avfoundationvideocapturer.mm",
|
|
||||||
"objc/Framework/Classes/objcvideotracksource.h",
|
|
||||||
"objc/Framework/Classes/objcvideotracksource.mm",
|
|
||||||
"objc/Framework/Classes/videotoolboxvideocodecfactory.cc",
|
|
||||||
"objc/Framework/Classes/videotoolboxvideocodecfactory.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
|
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCAudioSource.h",
|
"objc/Framework/Headers/WebRTC/RTCAudioSource.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCAudioTrack.h",
|
"objc/Framework/Headers/WebRTC/RTCAudioTrack.h",
|
||||||
@ -196,6 +271,8 @@ if (is_ios || is_mac) {
|
|||||||
"objc/Framework/Headers/WebRTC/RTCMediaSource.h",
|
"objc/Framework/Headers/WebRTC/RTCMediaSource.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMediaStream.h",
|
"objc/Framework/Headers/WebRTC/RTCMediaStream.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
|
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
|
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
|
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
|
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
|
||||||
@ -203,7 +280,9 @@ if (is_ios || is_mac) {
|
|||||||
"objc/Framework/Headers/WebRTC/RTCRtpParameters.h",
|
"objc/Framework/Headers/WebRTC/RTCRtpParameters.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCRtpReceiver.h",
|
"objc/Framework/Headers/WebRTC/RTCRtpReceiver.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCRtpSender.h",
|
"objc/Framework/Headers/WebRTC/RTCRtpSender.h",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCSSLAdapter.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCSessionDescription.h",
|
"objc/Framework/Headers/WebRTC/RTCSessionDescription.h",
|
||||||
|
"objc/Framework/Headers/WebRTC/RTCTracing.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCVideoCapturer.h",
|
"objc/Framework/Headers/WebRTC/RTCVideoCapturer.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCVideoFrame.h",
|
"objc/Framework/Headers/WebRTC/RTCVideoFrame.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCVideoRenderer.h",
|
"objc/Framework/Headers/WebRTC/RTCVideoRenderer.h",
|
||||||
@ -211,65 +290,36 @@ if (is_ios || is_mac) {
|
|||||||
"objc/Framework/Headers/WebRTC/RTCVideoTrack.h",
|
"objc/Framework/Headers/WebRTC/RTCVideoTrack.h",
|
||||||
]
|
]
|
||||||
|
|
||||||
deps = [
|
libs = [ "AVFoundation.framework" ]
|
||||||
":rtc_sdk_corevideoframebuffer",
|
|
||||||
":webrtc_h264_video_toolbox",
|
|
||||||
"../api:video_frame_api",
|
|
||||||
"../base:rtc_base",
|
|
||||||
"../base:rtc_base_approved",
|
|
||||||
"../common_video",
|
|
||||||
"../media:rtc_media",
|
|
||||||
"../media:rtc_media_base",
|
|
||||||
"../system_wrappers",
|
|
||||||
]
|
|
||||||
|
|
||||||
if (is_ios) {
|
if (is_ios) {
|
||||||
sources += [
|
libs += [ "CoreGraphics.framework" ]
|
||||||
"objc/Framework/Classes/RTCEAGLVideoView.m",
|
|
||||||
"objc/Framework/Classes/RTCNV12TextureCache.h",
|
|
||||||
"objc/Framework/Classes/RTCNV12TextureCache.m",
|
|
||||||
"objc/Framework/Classes/RTCNativeNV12Shader.mm",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h",
|
|
||||||
]
|
|
||||||
libs = [
|
|
||||||
"CoreGraphics.framework",
|
|
||||||
"GLKit.framework",
|
|
||||||
"OpenGLES.framework",
|
|
||||||
"QuartzCore.framework",
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_mac) {
|
|
||||||
sources += [
|
|
||||||
"objc/Framework/Classes/RTCNSGLVideoView.m",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCMTLNSVideoView.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h",
|
|
||||||
]
|
|
||||||
libs = [
|
|
||||||
"CoreVideo.framework",
|
|
||||||
"CoreMedia.framework",
|
|
||||||
"OpenGL.framework",
|
|
||||||
"Metal.framework",
|
|
||||||
"MetalKit.framework",
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
configs += [ "..:common_objc" ]
|
configs += [ "..:common_objc" ]
|
||||||
|
|
||||||
public_configs = [ ":rtc_sdk_common_objc_config" ]
|
public_configs = [ ":objc_common_config" ]
|
||||||
|
|
||||||
if (!build_with_chromium && is_clang) {
|
if (!build_with_chromium && is_clang) {
|
||||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
libs += [ "AVFoundation.framework" ]
|
deps = [
|
||||||
|
":objc_common",
|
||||||
deps += [
|
":objc_corevideoframebuffer",
|
||||||
":rtc_sdk_common_objc",
|
":objc_ui",
|
||||||
|
":objc_video",
|
||||||
"../pc:libjingle_peerconnection",
|
"../pc:libjingle_peerconnection",
|
||||||
|
"//webrtc/api:video_frame_api",
|
||||||
|
"//webrtc/base:rtc_base",
|
||||||
|
"//webrtc/media:rtc_media_base",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
if (rtc_use_metal_rendering) {
|
||||||
|
deps += [ ":objc_metal" ]
|
||||||
|
}
|
||||||
|
|
||||||
if (rtc_build_libyuv) {
|
if (rtc_build_libyuv) {
|
||||||
deps += [ "$rtc_libyuv_dir" ]
|
deps += [ "$rtc_libyuv_dir" ]
|
||||||
public_deps = [
|
public_deps = [
|
||||||
@ -279,7 +329,7 @@ if (is_ios || is_mac) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (rtc_include_tests) {
|
if (rtc_include_tests) {
|
||||||
rtc_source_set("rtc_sdk_peerconnection_objc_unittests") {
|
rtc_source_set("objc_sdk_unittests") {
|
||||||
testonly = true
|
testonly = true
|
||||||
|
|
||||||
# Skip restricting visibility on mobile platforms since the tests on those
|
# Skip restricting visibility on mobile platforms since the tests on those
|
||||||
@ -299,15 +349,6 @@ if (is_ios || is_mac) {
|
|||||||
"objc/Framework/UnitTests/RTCSessionDescriptionTest.mm",
|
"objc/Framework/UnitTests/RTCSessionDescriptionTest.mm",
|
||||||
"objc/Framework/UnitTests/avformatmappertests.mm",
|
"objc/Framework/UnitTests/avformatmappertests.mm",
|
||||||
]
|
]
|
||||||
if (is_ios) {
|
|
||||||
sources += [ "objc/Framework/UnitTests/RTCMTLVideoViewTests.mm" ]
|
|
||||||
if (current_cpu != "arm64") {
|
|
||||||
sources += [ "objc/Framework/Classes/Metal/RTCMTLVideoView.m" ]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# TODO(tkchin): Cleanup this warning.
|
|
||||||
cflags = [ "-Wno-objc-property-no-attribute" ]
|
|
||||||
|
|
||||||
# |-ObjC| flag needed to make sure category method implementations
|
# |-ObjC| flag needed to make sure category method implementations
|
||||||
# are included:
|
# are included:
|
||||||
@ -316,12 +357,24 @@ if (is_ios || is_mac) {
|
|||||||
|
|
||||||
defines = [ "GTEST_RELATIVE_PATH" ]
|
defines = [ "GTEST_RELATIVE_PATH" ]
|
||||||
deps = [
|
deps = [
|
||||||
":rtc_sdk_peerconnection_objc",
|
":objc_peerconnection",
|
||||||
|
"..//system_wrappers:system_wrappers_default",
|
||||||
"../base:rtc_base_tests_utils",
|
"../base:rtc_base_tests_utils",
|
||||||
"//third_party/ocmock",
|
"//third_party/ocmock",
|
||||||
"//webrtc/system_wrappers:system_wrappers_default",
|
"//webrtc/system_wrappers:system_wrappers_default",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# RTCMTLVideoView not supported on 32-bit arm
|
||||||
|
if (is_ios && current_cpu != "arm") {
|
||||||
|
sources += [ "objc/Framework/UnitTests/RTCMTLVideoViewTests.mm" ]
|
||||||
|
if (current_cpu != "arm64") {
|
||||||
|
# Only include this file on simulator, as it's already
|
||||||
|
# included in device builds.
|
||||||
|
sources += [ "objc/Framework/Classes/Metal/RTCMTLVideoView.m" ]
|
||||||
|
libs = [ "CoreVideo.framework" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!build_with_chromium && is_clang) {
|
if (!build_with_chromium && is_clang) {
|
||||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||||
@ -330,16 +383,12 @@ if (is_ios || is_mac) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (is_ios) {
|
if (is_ios) {
|
||||||
ios_framework_bundle("rtc_sdk_framework_objc") {
|
ios_framework_bundle("objc_framework") {
|
||||||
info_plist = "objc/Framework/Info.plist"
|
info_plist = "objc/Framework/Info.plist"
|
||||||
output_name = "WebRTC"
|
output_name = "WebRTC"
|
||||||
|
|
||||||
common_objc_headers = [
|
common_objc_headers = [
|
||||||
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
|
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCAudioSource.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCAudioTrack.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCCameraVideoCapturer.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCConfiguration.h",
|
"objc/Framework/Headers/WebRTC/RTCConfiguration.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCDataChannel.h",
|
"objc/Framework/Headers/WebRTC/RTCDataChannel.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCDataChannelConfiguration.h",
|
"objc/Framework/Headers/WebRTC/RTCDataChannelConfiguration.h",
|
||||||
@ -357,7 +406,6 @@ if (is_ios || is_mac) {
|
|||||||
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
|
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
|
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
|
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCMTLVideoView.h",
|
|
||||||
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
|
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
|
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
|
||||||
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
|
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
|
||||||
@ -392,23 +440,22 @@ if (is_ios || is_mac) {
|
|||||||
]
|
]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
":rtc_sdk_peerconnection_objc",
|
":objc_peerconnection",
|
||||||
|
"../base:rtc_base_approved",
|
||||||
"../system_wrappers:field_trial_default",
|
"../system_wrappers:field_trial_default",
|
||||||
"../system_wrappers:metrics_default",
|
"../system_wrappers:metrics_default",
|
||||||
]
|
]
|
||||||
|
|
||||||
libs = [
|
libs = [
|
||||||
"AVFoundation.framework",
|
"AVFoundation.framework",
|
||||||
"AudioToolbox.framework",
|
|
||||||
"CoreGraphics.framework",
|
"CoreGraphics.framework",
|
||||||
"CoreMedia.framework",
|
"CoreMedia.framework",
|
||||||
"GLKit.framework",
|
"GLKit.framework",
|
||||||
"VideoToolbox.framework",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
configs += [ "..:common_objc" ]
|
configs += [ "..:common_objc" ]
|
||||||
|
|
||||||
public_configs = [ ":rtc_sdk_common_objc_config" ]
|
public_configs = [ ":objc_common_config" ]
|
||||||
|
|
||||||
if (!build_with_chromium && is_clang) {
|
if (!build_with_chromium && is_clang) {
|
||||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
|
||||||
@ -420,16 +467,16 @@ if (is_ios || is_mac) {
|
|||||||
rtc_static_library("rtc_sdk_objc") {
|
rtc_static_library("rtc_sdk_objc") {
|
||||||
complete_static_lib = true
|
complete_static_lib = true
|
||||||
deps = [
|
deps = [
|
||||||
":rtc_sdk_peerconnection_objc",
|
":objc_peerconnection",
|
||||||
"//webrtc/system_wrappers:field_trial_default",
|
"//webrtc/system_wrappers:field_trial_default",
|
||||||
"//webrtc/system_wrappers:metrics_default",
|
"//webrtc/system_wrappers:metrics_default",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc_static_library("rtc_sdk_corevideoframebuffer") {
|
rtc_static_library("objc_corevideoframebuffer") {
|
||||||
sources = [
|
sources = [
|
||||||
"objc/Framework/Classes/corevideo_frame_buffer.cc",
|
"objc/Framework/Classes/Video/corevideo_frame_buffer.cc",
|
||||||
"objc/Framework/Classes/corevideo_frame_buffer.h",
|
"objc/Framework/Classes/Video/corevideo_frame_buffer.h",
|
||||||
]
|
]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
@ -437,32 +484,39 @@ if (is_ios || is_mac) {
|
|||||||
"../common_video",
|
"../common_video",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
if (!build_with_chromium && is_clang) {
|
||||||
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||||
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||||
|
}
|
||||||
|
|
||||||
libs = [ "CoreVideo.framework" ]
|
libs = [ "CoreVideo.framework" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc_static_library("webrtc_h264_video_toolbox") {
|
rtc_static_library("objc_videotoolbox") {
|
||||||
sources = [
|
sources = [
|
||||||
"objc/Framework/Classes/h264_video_toolbox_decoder.cc",
|
"objc/Framework/Classes/VideoToolbox/decoder.cc",
|
||||||
"objc/Framework/Classes/h264_video_toolbox_decoder.h",
|
"objc/Framework/Classes/VideoToolbox/decoder.h",
|
||||||
"objc/Framework/Classes/h264_video_toolbox_encoder.h",
|
"objc/Framework/Classes/VideoToolbox/encoder.h",
|
||||||
"objc/Framework/Classes/h264_video_toolbox_encoder.mm",
|
"objc/Framework/Classes/VideoToolbox/encoder.mm",
|
||||||
"objc/Framework/Classes/h264_video_toolbox_nalu.cc",
|
"objc/Framework/Classes/VideoToolbox/nalu_rewriter.cc",
|
||||||
"objc/Framework/Classes/h264_video_toolbox_nalu.h",
|
"objc/Framework/Classes/VideoToolbox/nalu_rewriter.h",
|
||||||
|
"objc/Framework/Classes/VideoToolbox/videocodecfactory.cc",
|
||||||
|
"objc/Framework/Classes/VideoToolbox/videocodecfactory.h",
|
||||||
]
|
]
|
||||||
|
|
||||||
configs += [ "//webrtc:common_objc" ]
|
configs += [ "//webrtc:common_objc" ]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
":rtc_sdk_common_objc",
|
":objc_common",
|
||||||
":rtc_sdk_corevideoframebuffer",
|
":objc_corevideoframebuffer",
|
||||||
"../api:video_frame_api",
|
|
||||||
"../base:rtc_base_approved",
|
"../base:rtc_base_approved",
|
||||||
"../common_video",
|
"//webrtc/common_video",
|
||||||
"../media:rtc_media_base",
|
"//webrtc/media:rtc_media",
|
||||||
"../modules:module_api",
|
"//webrtc/media:rtc_media_base",
|
||||||
"../modules/video_coding:video_coding_utility",
|
"//webrtc/modules:module_api",
|
||||||
"../modules/video_coding:webrtc_h264",
|
"//webrtc/modules/video_coding:video_coding_utility",
|
||||||
"../system_wrappers",
|
"//webrtc/modules/video_coding:webrtc_h264",
|
||||||
|
"//webrtc/system_wrappers",
|
||||||
]
|
]
|
||||||
|
|
||||||
libs = [
|
libs = [
|
||||||
|
|||||||
@ -1,5 +1,12 @@
|
|||||||
include_rules = [
|
include_rules = [
|
||||||
"+WebRTC",
|
"+WebRTC",
|
||||||
|
"+Common",
|
||||||
|
"+Video",
|
||||||
|
"+Audio",
|
||||||
|
"+UI",
|
||||||
|
"+PeerConnection",
|
||||||
|
"+VideoToolbox",
|
||||||
|
"+Metal",
|
||||||
"+webrtc/api",
|
"+webrtc/api",
|
||||||
"+webrtc/common_video/h264",
|
"+webrtc/common_video/h264",
|
||||||
"+webrtc/common_video/include",
|
"+webrtc/common_video/include",
|
||||||
|
|||||||
@ -8,8 +8,8 @@
|
|||||||
* be found in the AUTHORS file in the root of the source tree.
|
* be found in the AUTHORS file in the root of the source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef WEBRTC_BASE_OBJC_RTC_UI_APPLICATION_H_
|
#ifndef WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_UI_RTCUIAPPLICATION_H_
|
||||||
#define WEBRTC_BASE_OBJC_RTC_UI_APPLICATION_H_
|
#define WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_UI_RTCUIAPPLICATION_H_
|
||||||
|
|
||||||
#include "WebRTC/RTCMacros.h"
|
#include "WebRTC/RTCMacros.h"
|
||||||
|
|
||||||
@ -18,4 +18,4 @@
|
|||||||
RTC_EXTERN bool RTCIsUIApplicationActive();
|
RTC_EXTERN bool RTCIsUIApplicationActive();
|
||||||
#endif // WEBRTC_IOS
|
#endif // WEBRTC_IOS
|
||||||
|
|
||||||
#endif // WEBRTC_BASE_OBJC_RTC_UI_APPLICATION_H_
|
#endif // WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_UI_RTCUIAPPLICATION_H_
|
||||||
@ -8,8 +8,8 @@
|
|||||||
* be found in the AUTHORS file in the root of the source tree.
|
* be found in the AUTHORS file in the root of the source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_HELPERS_H_
|
#ifndef WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_COMMON_HELPERS_H_
|
||||||
#define WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_HELPERS_H_
|
#define WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_COMMON_HELPERS_H_
|
||||||
|
|
||||||
#if defined(WEBRTC_IOS)
|
#if defined(WEBRTC_IOS)
|
||||||
|
|
||||||
@ -33,8 +33,6 @@ std::string GetThreadInfo();
|
|||||||
// Example: <NSThread: 0x170066d80>{number = 1, name = main}
|
// Example: <NSThread: 0x170066d80>{number = 1, name = main}
|
||||||
std::string GetCurrentThreadDescription();
|
std::string GetCurrentThreadDescription();
|
||||||
|
|
||||||
std::string GetAudioSessionCategory();
|
|
||||||
|
|
||||||
// Returns the current name of the operating system.
|
// Returns the current name of the operating system.
|
||||||
std::string GetSystemName();
|
std::string GetSystemName();
|
||||||
|
|
||||||
@ -75,4 +73,4 @@ bool GetLowPowerModeEnabled();
|
|||||||
|
|
||||||
#endif // defined(WEBRTC_IOS)
|
#endif // defined(WEBRTC_IOS)
|
||||||
|
|
||||||
#endif // WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_HELPERS_H_
|
#endif // WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_COMMON_HELPERS_H_
|
||||||
@ -9,7 +9,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#import <AVFoundation/AVFoundation.h>
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
#import <sys/sysctl.h>
|
#import <sys/sysctl.h>
|
||||||
#if defined(WEBRTC_IOS)
|
#if defined(WEBRTC_IOS)
|
||||||
@ -20,7 +19,7 @@
|
|||||||
|
|
||||||
#include "webrtc/base/checks.h"
|
#include "webrtc/base/checks.h"
|
||||||
#include "webrtc/base/logging.h"
|
#include "webrtc/base/logging.h"
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/helpers.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Common/helpers.h"
|
||||||
|
|
||||||
namespace webrtc {
|
namespace webrtc {
|
||||||
namespace ios {
|
namespace ios {
|
||||||
@ -65,11 +64,6 @@ std::string GetCurrentThreadDescription() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(WEBRTC_IOS)
|
#if defined(WEBRTC_IOS)
|
||||||
std::string GetAudioSessionCategory() {
|
|
||||||
NSString* category = [[AVAudioSession sharedInstance] category];
|
|
||||||
return StdStringFromNSString(category);
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string GetSystemName() {
|
std::string GetSystemName() {
|
||||||
NSString* osName = [[UIDevice currentDevice] systemName];
|
NSString* osName = [[UIDevice currentDevice] systemName];
|
||||||
return StdStringFromNSString(osName);
|
return StdStringFromNSString(osName);
|
||||||
@ -11,7 +11,6 @@
|
|||||||
#import "RTCPeerConnectionFactory+Private.h"
|
#import "RTCPeerConnectionFactory+Private.h"
|
||||||
|
|
||||||
#import "NSString+StdString.h"
|
#import "NSString+StdString.h"
|
||||||
#import "RTCAVFoundationVideoSource+Private.h"
|
|
||||||
#import "RTCAudioSource+Private.h"
|
#import "RTCAudioSource+Private.h"
|
||||||
#import "RTCAudioTrack+Private.h"
|
#import "RTCAudioTrack+Private.h"
|
||||||
#import "RTCMediaConstraints+Private.h"
|
#import "RTCMediaConstraints+Private.h"
|
||||||
@ -19,10 +18,11 @@
|
|||||||
#import "RTCPeerConnection+Private.h"
|
#import "RTCPeerConnection+Private.h"
|
||||||
#import "RTCVideoSource+Private.h"
|
#import "RTCVideoSource+Private.h"
|
||||||
#import "RTCVideoTrack+Private.h"
|
#import "RTCVideoTrack+Private.h"
|
||||||
|
#import "RTCAVFoundationVideoSource+Private.h"
|
||||||
#import "WebRTC/RTCLogging.h"
|
#import "WebRTC/RTCLogging.h"
|
||||||
|
|
||||||
#include "objcvideotracksource.h"
|
#include "Video/objcvideotracksource.h"
|
||||||
#include "videotoolboxvideocodecfactory.h"
|
#include "VideoToolbox/videocodecfactory.h"
|
||||||
|
|
||||||
@implementation RTCPeerConnectionFactory {
|
@implementation RTCPeerConnectionFactory {
|
||||||
std::unique_ptr<rtc::Thread> _networkThread;
|
std::unique_ptr<rtc::Thread> _networkThread;
|
||||||
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
#import "RTCVideoFrame+Private.h"
|
#import "RTCVideoFrame+Private.h"
|
||||||
|
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/corevideo_frame_buffer.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Video/corevideo_frame_buffer.h"
|
||||||
|
|
||||||
@implementation RTCVideoFrame {
|
@implementation RTCVideoFrame {
|
||||||
rtc::scoped_refptr<webrtc::VideoFrameBuffer> _videoBuffer;
|
rtc::scoped_refptr<webrtc::VideoFrameBuffer> _videoBuffer;
|
||||||
@ -11,7 +11,7 @@
|
|||||||
#import "RTCVideoSource+Private.h"
|
#import "RTCVideoSource+Private.h"
|
||||||
|
|
||||||
#include "webrtc/base/checks.h"
|
#include "webrtc/base/checks.h"
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/objcvideotracksource.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Video/objcvideotracksource.h"
|
||||||
|
|
||||||
// TODO(magjed): Refactor this class and target ObjcVideoTrackSource only once
|
// TODO(magjed): Refactor this class and target ObjcVideoTrackSource only once
|
||||||
// RTCAVFoundationVideoSource is gone. See http://crbug/webrtc/7177 for more
|
// RTCAVFoundationVideoSource is gone. See http://crbug/webrtc/7177 for more
|
||||||
@ -8,8 +8,8 @@
|
|||||||
* be found in the AUTHORS file in the root of the source tree.
|
* be found in the AUTHORS file in the root of the source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef WEBRTC_API_OBJC_AVFOUNDATION_VIDEO_CAPTURER_H_
|
#ifndef WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_VIDEO_AVFOUNDATIONVIDEOCAPTURER_H_
|
||||||
#define WEBRTC_API_OBJC_AVFOUNDATION_VIDEO_CAPTURER_H_
|
#define WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_VIDEO_AVFOUNDATIONVIDEOCAPTURER_H_
|
||||||
|
|
||||||
#import <AVFoundation/AVFoundation.h>
|
#import <AVFoundation/AVFoundation.h>
|
||||||
|
|
||||||
@ -69,4 +69,4 @@ class AVFoundationVideoCapturer : public cricket::VideoCapturer {
|
|||||||
|
|
||||||
} // namespace webrtc
|
} // namespace webrtc
|
||||||
|
|
||||||
#endif // WEBRTC_API_OBJC_AVFOUNDATION_VIDEO_CAPTURER_H_
|
#endif // WEBRTC_SDK_OBJC_FRAMEWORK_CLASSES_VIDEO_AVFOUNDATIONVIDEOCAPTURER_H_
|
||||||
@ -23,7 +23,7 @@
|
|||||||
#include "webrtc/base/checks.h"
|
#include "webrtc/base/checks.h"
|
||||||
#include "webrtc/base/logging.h"
|
#include "webrtc/base/logging.h"
|
||||||
#include "webrtc/base/thread.h"
|
#include "webrtc/base/thread.h"
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/corevideo_frame_buffer.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Video/corevideo_frame_buffer.h"
|
||||||
|
|
||||||
namespace webrtc {
|
namespace webrtc {
|
||||||
|
|
||||||
@ -8,7 +8,7 @@
|
|||||||
* be found in the AUTHORS file in the root of the source tree.
|
* be found in the AUTHORS file in the root of the source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "webrtc/sdk/objc/Framework/Classes/corevideo_frame_buffer.h"
|
#include "webrtc/sdk/objc/Framework/Classes/Video/corevideo_frame_buffer.h"
|
||||||
|
|
||||||
#include "libyuv/convert.h"
|
#include "libyuv/convert.h"
|
||||||
#include "webrtc/api/video/i420_buffer.h"
|
#include "webrtc/api/video/i420_buffer.h"
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user