Fix WebRTC API framework build.

BUG=webrtc:5737

Review URL: https://codereview.webrtc.org/1875003004

Cr-Commit-Position: refs/heads/master@{#12391}
This commit is contained in:
tkchin
2016-04-16 12:06:33 -07:00
committed by Commit bot
parent e42c0ae040
commit 5209d671f2
13 changed files with 751 additions and 585 deletions

View File

@ -8,7 +8,7 @@
* be found in the AUTHORS file in the root of the source tree.
*/
#import "RTCVideoSource.h"
#import "webrtc/api/objc/RTCVideoSource.h"
@class AVCaptureSession;
@class RTCMediaConstraints;

View File

@ -8,7 +8,7 @@
* be found in the AUTHORS file in the root of the source tree.
*/
#import "RTCMediaStreamTrack.h"
#import "webrtc/api/objc/RTCMediaStreamTrack.h"
NS_ASSUME_NONNULL_BEGIN

View File

@ -11,7 +11,7 @@
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "RTCVideoRenderer.h"
#import "webrtc/api/objc/RTCVideoRenderer.h"
NS_ASSUME_NONNULL_BEGIN

View File

@ -10,8 +10,8 @@
#import <Foundation/Foundation.h>
#import "webrtc/api/objc/RTCRtpParameters.h"
#import "webrtc/api/objc/RTCMediaStreamTrack.h"
#import "webrtc/api/objc/RTCRtpParameters.h"
NS_ASSUME_NONNULL_BEGIN

View File

@ -8,7 +8,7 @@
* be found in the AUTHORS file in the root of the source tree.
*/
#import "RTCMediaStreamTrack.h"
#import "webrtc/api/objc/RTCMediaStreamTrack.h"
NS_ASSUME_NONNULL_BEGIN

View File

@ -7,70 +7,104 @@
objects = {
/* Begin PBXBuildFile section */
980224981CA243DE00295D57 /* libaudio_coding_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224561CA243DE00295D57 /* libaudio_coding_module.a */; };
980224991CA243DE00295D57 /* libaudio_conference_mixer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224571CA243DE00295D57 /* libaudio_conference_mixer.a */; };
9802249A1CA243DE00295D57 /* libaudio_decoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224581CA243DE00295D57 /* libaudio_decoder_interface.a */; };
9802249B1CA243DE00295D57 /* libaudio_device.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224591CA243DE00295D57 /* libaudio_device.a */; };
9802249C1CA243DE00295D57 /* libaudio_encoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */; };
9802249D1CA243DE00295D57 /* libaudio_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245B1CA243DE00295D57 /* libaudio_processing.a */; };
9802249E1CA243DE00295D57 /* libaudioproc_debug_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */; };
9802249F1CA243DE00295D57 /* libbitrate_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245D1CA243DE00295D57 /* libbitrate_controller.a */; };
980224A01CA243DE00295D57 /* libboringssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245E1CA243DE00295D57 /* libboringssl.a */; };
980224A11CA243DE00295D57 /* libcng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245F1CA243DE00295D57 /* libcng.a */; };
980224A21CA243DE00295D57 /* libcommon_audio.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224601CA243DE00295D57 /* libcommon_audio.a */; };
980224A31CA243DE00295D57 /* libcommon_video.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224611CA243DE00295D57 /* libcommon_video.a */; };
980224A41CA243DE00295D57 /* libcongestion_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224621CA243DE00295D57 /* libcongestion_controller.a */; };
980224A51CA243DE00295D57 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224631CA243DE00295D57 /* libexpat.a */; };
980224A61CA243DE00295D57 /* libfield_trial_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224641CA243DE00295D57 /* libfield_trial_default.a */; };
980224A71CA243DE00295D57 /* libg711.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224651CA243DE00295D57 /* libg711.a */; };
980224A81CA243DE00295D57 /* libg722.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224661CA243DE00295D57 /* libg722.a */; };
980224A91CA243DE00295D57 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224671CA243DE00295D57 /* libilbc.a */; };
980224AA1CA243DE00295D57 /* libisac_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224681CA243DE00295D57 /* libisac_common.a */; };
980224AB1CA243DE00295D57 /* libisac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224691CA243DE00295D57 /* libisac.a */; };
980224AC1CA243DE00295D57 /* libjingle_peerconnection.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */; };
980224AD1CA243DE00295D57 /* libjsoncpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246B1CA243DE00295D57 /* libjsoncpp.a */; };
980224AE1CA243DE00295D57 /* libmedia_file.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246C1CA243DE00295D57 /* libmedia_file.a */; };
980224AF1CA243DE00295D57 /* libmetrics_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246D1CA243DE00295D57 /* libmetrics_default.a */; };
980224B01CA243DE00295D57 /* libneteq.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246E1CA243DE00295D57 /* libneteq.a */; };
980224B11CA243DE00295D57 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246F1CA243DE00295D57 /* libopus.a */; };
980224B21CA243DE00295D57 /* libpaced_sender.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224701CA243DE00295D57 /* libpaced_sender.a */; };
980224B31CA243DE00295D57 /* libpcm16b.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224711CA243DE00295D57 /* libpcm16b.a */; };
980224B41CA243DE00295D57 /* libprotobuf_lite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224721CA243DE00295D57 /* libprotobuf_lite.a */; };
980224B51CA243DE00295D57 /* libred.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224731CA243DE00295D57 /* libred.a */; };
980224B61CA243DE00295D57 /* libremote_bitrate_estimator.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */; };
980224B71CA243DE00295D57 /* librent_a_codec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224751CA243DE00295D57 /* librent_a_codec.a */; };
980224B91CA243DE00295D57 /* librtc_base_approved.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224771CA243DE00295D57 /* librtc_base_approved.a */; };
980224BB1CA243DE00295D57 /* librtc_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224791CA243DE00295D57 /* librtc_base.a */; };
980224BC1CA243DE00295D57 /* librtc_event_log_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */; };
980224BD1CA243DE00295D57 /* librtc_event_log.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247B1CA243DE00295D57 /* librtc_event_log.a */; };
980224BE1CA243DE00295D57 /* librtc_media.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247C1CA243DE00295D57 /* librtc_media.a */; };
980224BF1CA243DE00295D57 /* librtc_p2p.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247D1CA243DE00295D57 /* librtc_p2p.a */; };
980224C01CA243DE00295D57 /* librtc_pc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247E1CA243DE00295D57 /* librtc_pc.a */; };
980224C11CA243DE00295D57 /* librtc_xmllite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247F1CA243DE00295D57 /* librtc_xmllite.a */; };
980224C21CA243DE00295D57 /* librtc_xmpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224801CA243DE00295D57 /* librtc_xmpp.a */; };
980224C31CA243DE00295D57 /* librtp_rtcp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224811CA243DE00295D57 /* librtp_rtcp.a */; };
980224C41CA243DE00295D57 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224821CA243DE00295D57 /* libsrtp.a */; };
980224C51CA243DE00295D57 /* libsystem_wrappers.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224831CA243DE00295D57 /* libsystem_wrappers.a */; };
980224C61CA243DE00295D57 /* libusrsctplib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224841CA243DE00295D57 /* libusrsctplib.a */; };
980224C71CA243DE00295D57 /* libvideo_capture_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */; };
980224C81CA243DE00295D57 /* libvideo_capture_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224861CA243DE00295D57 /* libvideo_capture_module.a */; };
980224C91CA243DE00295D57 /* libvideo_coding_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224871CA243DE00295D57 /* libvideo_coding_utility.a */; };
980224CA1CA243DE00295D57 /* libvideo_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224881CA243DE00295D57 /* libvideo_processing.a */; };
980224CB1CA243DE00295D57 /* libvideo_render_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */; };
980224CC1CA243DE00295D57 /* libvideo_render_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248A1CA243DE00295D57 /* libvideo_render_module.a */; };
980224CD1CA243DE00295D57 /* libvoice_engine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248B1CA243DE00295D57 /* libvoice_engine.a */; };
980224CE1CA243DE00295D57 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248C1CA243DE00295D57 /* libvpx.a */; };
980224CF1CA243DE00295D57 /* libwebrtc_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248D1CA243DE00295D57 /* libwebrtc_common.a */; };
980224D01CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */; };
980224D11CA243DE00295D57 /* libwebrtc_h264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248F1CA243DE00295D57 /* libwebrtc_h264.a */; };
980224D21CA243DE00295D57 /* libwebrtc_i420.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224901CA243DE00295D57 /* libwebrtc_i420.a */; };
980224D31CA243DE00295D57 /* libwebrtc_opus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224911CA243DE00295D57 /* libwebrtc_opus.a */; };
980224D41CA243DE00295D57 /* libwebrtc_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224921CA243DE00295D57 /* libwebrtc_utility.a */; };
980224D51CA243DE00295D57 /* libwebrtc_video_coding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224931CA243DE00295D57 /* libwebrtc_video_coding.a */; };
980224D61CA243DE00295D57 /* libwebrtc_vp8.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224941CA243DE00295D57 /* libwebrtc_vp8.a */; };
980224D71CA243DE00295D57 /* libwebrtc_vp9.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224951CA243DE00295D57 /* libwebrtc_vp9.a */; };
980224D81CA243DE00295D57 /* libwebrtc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224961CA243DE00295D57 /* libwebrtc.a */; };
980224D91CA243DE00295D57 /* libyuv.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224971CA243DE00295D57 /* libyuv.a */; };
43C39B691CBC2C3E0017E317 /* RTCRtpEncodingParameters.mm in Sources */ = {isa = PBXBuildFile; fileRef = 43C39B661CBC2C3E0017E317 /* RTCRtpEncodingParameters.mm */; };
43C39B6A1CBC2C3F0017E317 /* RTCRtpParameters.mm in Sources */ = {isa = PBXBuildFile; fileRef = 43C39B671CBC2C3E0017E317 /* RTCRtpParameters.mm */; };
43C39B6B1CBC2C3F0017E317 /* RTCRtpSender.mm in Sources */ = {isa = PBXBuildFile; fileRef = 43C39B681CBC2C3E0017E317 /* RTCRtpSender.mm */; };
43C39E781CC060400017E317 /* libaudio_coding_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E361CC060400017E317 /* libaudio_coding_module.a */; };
43C39E791CC060400017E317 /* libaudio_conference_mixer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E371CC060400017E317 /* libaudio_conference_mixer.a */; };
43C39E7A1CC060400017E317 /* libaudio_decoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E381CC060400017E317 /* libaudio_decoder_interface.a */; };
43C39E7B1CC060400017E317 /* libaudio_device.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E391CC060400017E317 /* libaudio_device.a */; };
43C39E7C1CC060400017E317 /* libaudio_encoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3A1CC060400017E317 /* libaudio_encoder_interface.a */; };
43C39E7D1CC060400017E317 /* libaudio_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3B1CC060400017E317 /* libaudio_processing.a */; };
43C39E7E1CC060400017E317 /* libaudioproc_debug_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3C1CC060400017E317 /* libaudioproc_debug_proto.a */; };
43C39E7F1CC060400017E317 /* libbitrate_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3D1CC060400017E317 /* libbitrate_controller.a */; };
43C39E801CC060400017E317 /* libboringssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3E1CC060400017E317 /* libboringssl.a */; };
43C39E811CC060400017E317 /* libcng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E3F1CC060400017E317 /* libcng.a */; };
43C39E821CC060400017E317 /* libcommon_audio.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E401CC060400017E317 /* libcommon_audio.a */; };
43C39E831CC060400017E317 /* libcommon_video.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E411CC060400017E317 /* libcommon_video.a */; };
43C39E841CC060400017E317 /* libcongestion_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E421CC060400017E317 /* libcongestion_controller.a */; };
43C39E851CC060400017E317 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E431CC060400017E317 /* libexpat.a */; };
43C39E861CC060400017E317 /* libfield_trial_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E441CC060400017E317 /* libfield_trial_default.a */; };
43C39E871CC060400017E317 /* libg711.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E451CC060400017E317 /* libg711.a */; };
43C39E881CC060400017E317 /* libg722.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E461CC060400017E317 /* libg722.a */; };
43C39E891CC060400017E317 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E471CC060400017E317 /* libilbc.a */; };
43C39E8A1CC060400017E317 /* libisac_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E481CC060400017E317 /* libisac_common.a */; };
43C39E8B1CC060400017E317 /* libisac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E491CC060400017E317 /* libisac.a */; };
43C39E8C1CC060400017E317 /* libjingle_peerconnection.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4A1CC060400017E317 /* libjingle_peerconnection.a */; };
43C39E8D1CC060400017E317 /* libjsoncpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4B1CC060400017E317 /* libjsoncpp.a */; };
43C39E8E1CC060400017E317 /* libmedia_file.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4C1CC060400017E317 /* libmedia_file.a */; };
43C39E8F1CC060400017E317 /* libmetrics_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4D1CC060400017E317 /* libmetrics_default.a */; };
43C39E901CC060400017E317 /* libneteq.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4E1CC060400017E317 /* libneteq.a */; };
43C39E911CC060400017E317 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E4F1CC060400017E317 /* libopus.a */; };
43C39E921CC060400017E317 /* libpaced_sender.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E501CC060400017E317 /* libpaced_sender.a */; };
43C39E931CC060400017E317 /* libpcm16b.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E511CC060400017E317 /* libpcm16b.a */; };
43C39E941CC060400017E317 /* libprotobuf_lite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E521CC060400017E317 /* libprotobuf_lite.a */; };
43C39E951CC060400017E317 /* libred.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E531CC060400017E317 /* libred.a */; };
43C39E961CC060400017E317 /* libremote_bitrate_estimator.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E541CC060400017E317 /* libremote_bitrate_estimator.a */; };
43C39E971CC060400017E317 /* librent_a_codec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E551CC060400017E317 /* librent_a_codec.a */; };
43C39E991CC060400017E317 /* librtc_base_approved.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E571CC060400017E317 /* librtc_base_approved.a */; };
43C39E9B1CC060400017E317 /* librtc_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E591CC060400017E317 /* librtc_base.a */; };
43C39E9C1CC060400017E317 /* librtc_event_log_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5A1CC060400017E317 /* librtc_event_log_proto.a */; };
43C39E9D1CC060400017E317 /* librtc_event_log.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5B1CC060400017E317 /* librtc_event_log.a */; };
43C39E9E1CC060400017E317 /* librtc_media.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5C1CC060400017E317 /* librtc_media.a */; };
43C39E9F1CC060400017E317 /* librtc_p2p.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5D1CC060400017E317 /* librtc_p2p.a */; };
43C39EA01CC060400017E317 /* librtc_pc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5E1CC060400017E317 /* librtc_pc.a */; };
43C39EA11CC060400017E317 /* librtc_xmllite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E5F1CC060400017E317 /* librtc_xmllite.a */; };
43C39EA21CC060400017E317 /* librtc_xmpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E601CC060400017E317 /* librtc_xmpp.a */; };
43C39EA31CC060400017E317 /* librtp_rtcp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E611CC060400017E317 /* librtp_rtcp.a */; };
43C39EA41CC060400017E317 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E621CC060400017E317 /* libsrtp.a */; };
43C39EA51CC060400017E317 /* libsystem_wrappers.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E631CC060400017E317 /* libsystem_wrappers.a */; };
43C39EA61CC060400017E317 /* libusrsctplib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E641CC060400017E317 /* libusrsctplib.a */; };
43C39EA71CC060400017E317 /* libvideo_capture_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E651CC060400017E317 /* libvideo_capture_module_internal_impl.a */; };
43C39EA81CC060400017E317 /* libvideo_capture_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E661CC060400017E317 /* libvideo_capture_module.a */; };
43C39EA91CC060400017E317 /* libvideo_coding_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E671CC060400017E317 /* libvideo_coding_utility.a */; };
43C39EAA1CC060400017E317 /* libvideo_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E681CC060400017E317 /* libvideo_processing.a */; };
43C39EAB1CC060400017E317 /* libvideo_render_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E691CC060400017E317 /* libvideo_render_module_internal_impl.a */; };
43C39EAC1CC060400017E317 /* libvideo_render_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6A1CC060400017E317 /* libvideo_render_module.a */; };
43C39EAD1CC060400017E317 /* libvoice_engine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6B1CC060400017E317 /* libvoice_engine.a */; };
43C39EAE1CC060400017E317 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6C1CC060400017E317 /* libvpx.a */; };
43C39EAF1CC060400017E317 /* libwebrtc_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6D1CC060400017E317 /* libwebrtc_common.a */; };
43C39EB01CC060400017E317 /* libwebrtc_h264_video_toolbox.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6E1CC060400017E317 /* libwebrtc_h264_video_toolbox.a */; };
43C39EB11CC060400017E317 /* libwebrtc_h264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E6F1CC060400017E317 /* libwebrtc_h264.a */; };
43C39EB21CC060400017E317 /* libwebrtc_i420.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E701CC060400017E317 /* libwebrtc_i420.a */; };
43C39EB31CC060400017E317 /* libwebrtc_opus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E711CC060400017E317 /* libwebrtc_opus.a */; };
43C39EB41CC060400017E317 /* libwebrtc_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E721CC060400017E317 /* libwebrtc_utility.a */; };
43C39EB51CC060400017E317 /* libwebrtc_video_coding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E731CC060400017E317 /* libwebrtc_video_coding.a */; };
43C39EB61CC060400017E317 /* libwebrtc_vp8.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E741CC060400017E317 /* libwebrtc_vp8.a */; };
43C39EB71CC060400017E317 /* libwebrtc_vp9.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E751CC060400017E317 /* libwebrtc_vp9.a */; };
43C39EB81CC060400017E317 /* libwebrtc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E761CC060400017E317 /* libwebrtc.a */; };
43C39EB91CC060400017E317 /* libyuv.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 43C39E771CC060400017E317 /* libyuv.a */; };
43C39F031CC061020017E317 /* RTCAudioTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE21CC061010017E317 /* RTCAudioTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F041CC061020017E317 /* RTCAVFoundationVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE31CC061010017E317 /* RTCAVFoundationVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F051CC061020017E317 /* RTCCameraPreviewView.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE41CC061010017E317 /* RTCCameraPreviewView.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F061CC061020017E317 /* RTCConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE51CC061010017E317 /* RTCConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F071CC061020017E317 /* RTCDataChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE61CC061010017E317 /* RTCDataChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F081CC061020017E317 /* RTCDataChannelConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE71CC061010017E317 /* RTCDataChannelConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F091CC061020017E317 /* RTCDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE81CC061010017E317 /* RTCDispatcher.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0A1CC061020017E317 /* RTCEAGLVideoView.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EE91CC061010017E317 /* RTCEAGLVideoView.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0B1CC061020017E317 /* RTCFieldTrials.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EEA1CC061010017E317 /* RTCFieldTrials.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0C1CC061020017E317 /* RTCFileLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EEB1CC061010017E317 /* RTCFileLogger.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0D1CC061020017E317 /* RTCIceCandidate.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EEC1CC061010017E317 /* RTCIceCandidate.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0E1CC061020017E317 /* RTCIceServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EED1CC061010017E317 /* RTCIceServer.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F0F1CC061020017E317 /* RTCLogging.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EEE1CC061010017E317 /* RTCLogging.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F101CC061020017E317 /* RTCMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EEF1CC061010017E317 /* RTCMacros.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F111CC061020017E317 /* RTCMediaConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF01CC061010017E317 /* RTCMediaConstraints.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F121CC061020017E317 /* RTCMediaStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF11CC061010017E317 /* RTCMediaStream.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F131CC061020017E317 /* RTCMediaStreamTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF21CC061010017E317 /* RTCMediaStreamTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F141CC061020017E317 /* RTCOpenGLVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF31CC061010017E317 /* RTCOpenGLVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F151CC061020017E317 /* RTCPeerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF41CC061010017E317 /* RTCPeerConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F161CC061020017E317 /* RTCPeerConnectionFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF51CC061010017E317 /* RTCPeerConnectionFactory.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F171CC061020017E317 /* RTCRtpEncodingParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF61CC061020017E317 /* RTCRtpEncodingParameters.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F181CC061020017E317 /* RTCRtpParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF71CC061020017E317 /* RTCRtpParameters.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F191CC061020017E317 /* RTCRtpSender.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF81CC061020017E317 /* RTCRtpSender.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1A1CC061020017E317 /* RTCSessionDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EF91CC061020017E317 /* RTCSessionDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1B1CC061020017E317 /* RTCSSLAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFA1CC061020017E317 /* RTCSSLAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1C1CC061020017E317 /* RTCStatsReport.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFB1CC061020017E317 /* RTCStatsReport.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1D1CC061020017E317 /* RTCTracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFC1CC061020017E317 /* RTCTracing.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1E1CC061020017E317 /* RTCVideoFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFD1CC061020017E317 /* RTCVideoFrame.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F1F1CC061020017E317 /* RTCVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFE1CC061020017E317 /* RTCVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F201CC061020017E317 /* RTCVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39EFF1CC061020017E317 /* RTCVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; };
43C39F211CC061020017E317 /* RTCVideoTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 43C39F001CC061020017E317 /* RTCVideoTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
9820AAC71C977D11001E5793 /* WebRTC.h in Headers */ = {isa = PBXBuildFile; fileRef = 9820AAC61C977D11001E5793 /* WebRTC.h */; settings = {ATTRIBUTES = (Public, ); }; };
982C13291C98B78000895DC2 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C13281C98B78000895DC2 /* AVFoundation.framework */; };
982C132B1C98B79700895DC2 /* VideoToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C132A1C98B79700895DC2 /* VideoToolbox.framework */; };
@ -85,35 +119,6 @@
982C151E1C99083B00895DC2 /* RTCSSLAdapter.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15151C99083B00895DC2 /* RTCSSLAdapter.mm */; };
982C151F1C99083B00895DC2 /* RTCTracing.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15161C99083B00895DC2 /* RTCTracing.mm */; };
982C15201C99083B00895DC2 /* RTCUIApplication.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15171C99083B00895DC2 /* RTCUIApplication.mm */; };
9845CE9B1CA1AE1D00BFE57C /* RTCAudioTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CE9C1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CE9D1CA1AE1E00BFE57C /* RTCCameraPreviewView.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CE9E1CA1AE1E00BFE57C /* RTCConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CE9F1CA1AE1E00BFE57C /* RTCDataChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA01CA1AE1E00BFE57C /* RTCDataChannelConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA11CA1AE1E00BFE57C /* RTCDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA21CA1AE1E00BFE57C /* RTCEAGLVideoView.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA31CA1AE1E00BFE57C /* RTCFieldTrials.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA41CA1AE1E00BFE57C /* RTCFileLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA51CA1AE1E00BFE57C /* RTCIceCandidate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA61CA1AE1E00BFE57C /* RTCIceServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA71CA1AE1E00BFE57C /* RTCLogging.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA81CA1AE1E00BFE57C /* RTCMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEA91CA1AE1E00BFE57C /* RTCMediaConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAA1CA1AE1E00BFE57C /* RTCMediaStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAB1CA1AE1E00BFE57C /* RTCMediaStreamTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAC1CA1AE1E00BFE57C /* RTCOpenGLVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAD1CA1AE1E00BFE57C /* RTCPeerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAE1CA1AE1E00BFE57C /* RTCPeerConnectionFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEAF1CA1AE1E00BFE57C /* RTCSessionDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB01CA1AE1E00BFE57C /* RTCSSLAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB11CA1AE1E00BFE57C /* RTCStatsReport.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB21CA1AE1E00BFE57C /* RTCTracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE951CA1AE1D00BFE57C /* RTCTracing.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB31CA1AE1E00BFE57C /* RTCVideoFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB41CA1AE1E00BFE57C /* RTCVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB51CA1AE1E00BFE57C /* RTCVideoRendererAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB61CA1AE1E00BFE57C /* RTCVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; };
9845CEB71CA1AE1E00BFE57C /* RTCVideoTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */; settings = {ATTRIBUTES = (Public, ); }; };
986649D21C986B7D008EC831 /* avfoundationvideocapturer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BA1C986B7D008EC831 /* avfoundationvideocapturer.mm */; };
986649D31C986B7D008EC831 /* RTCAudioTrack.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BB1C986B7D008EC831 /* RTCAudioTrack.mm */; };
986649D41C986B7D008EC831 /* RTCAVFoundationVideoSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BC1C986B7D008EC831 /* RTCAVFoundationVideoSource.mm */; };
@ -140,70 +145,104 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
980224561CA243DE00295D57 /* libaudio_coding_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_coding_module.a; path = ../../../../../out_ios_libs/lib/libaudio_coding_module.a; sourceTree = "<group>"; };
980224571CA243DE00295D57 /* libaudio_conference_mixer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_conference_mixer.a; path = ../../../../../out_ios_libs/lib/libaudio_conference_mixer.a; sourceTree = "<group>"; };
980224581CA243DE00295D57 /* libaudio_decoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_decoder_interface.a; path = ../../../../../out_ios_libs/lib/libaudio_decoder_interface.a; sourceTree = "<group>"; };
980224591CA243DE00295D57 /* libaudio_device.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_device.a; path = ../../../../../out_ios_libs/lib/libaudio_device.a; sourceTree = "<group>"; };
9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_encoder_interface.a; path = ../../../../../out_ios_libs/lib/libaudio_encoder_interface.a; sourceTree = "<group>"; };
9802245B1CA243DE00295D57 /* libaudio_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_processing.a; path = ../../../../../out_ios_libs/lib/libaudio_processing.a; sourceTree = "<group>"; };
9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudioproc_debug_proto.a; path = ../../../../../out_ios_libs/lib/libaudioproc_debug_proto.a; sourceTree = "<group>"; };
9802245D1CA243DE00295D57 /* libbitrate_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbitrate_controller.a; path = ../../../../../out_ios_libs/lib/libbitrate_controller.a; sourceTree = "<group>"; };
9802245E1CA243DE00295D57 /* libboringssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libboringssl.a; path = ../../../../../out_ios_libs/lib/libboringssl.a; sourceTree = "<group>"; };
9802245F1CA243DE00295D57 /* libcng.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcng.a; path = ../../../../../out_ios_libs/lib/libcng.a; sourceTree = "<group>"; };
980224601CA243DE00295D57 /* libcommon_audio.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_audio.a; path = ../../../../../out_ios_libs/lib/libcommon_audio.a; sourceTree = "<group>"; };
980224611CA243DE00295D57 /* libcommon_video.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_video.a; path = ../../../../../out_ios_libs/lib/libcommon_video.a; sourceTree = "<group>"; };
980224621CA243DE00295D57 /* libcongestion_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcongestion_controller.a; path = ../../../../../out_ios_libs/lib/libcongestion_controller.a; sourceTree = "<group>"; };
980224631CA243DE00295D57 /* libexpat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libexpat.a; path = ../../../../../out_ios_libs/lib/libexpat.a; sourceTree = "<group>"; };
980224641CA243DE00295D57 /* libfield_trial_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libfield_trial_default.a; path = ../../../../../out_ios_libs/lib/libfield_trial_default.a; sourceTree = "<group>"; };
980224651CA243DE00295D57 /* libg711.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg711.a; path = ../../../../../out_ios_libs/lib/libg711.a; sourceTree = "<group>"; };
980224661CA243DE00295D57 /* libg722.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg722.a; path = ../../../../../out_ios_libs/lib/libg722.a; sourceTree = "<group>"; };
980224671CA243DE00295D57 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = ../../../../../out_ios_libs/lib/libilbc.a; sourceTree = "<group>"; };
980224681CA243DE00295D57 /* libisac_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac_common.a; path = ../../../../../out_ios_libs/lib/libisac_common.a; sourceTree = "<group>"; };
980224691CA243DE00295D57 /* libisac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac.a; path = ../../../../../out_ios_libs/lib/libisac.a; sourceTree = "<group>"; };
9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjingle_peerconnection.a; path = ../../../../../out_ios_libs/lib/libjingle_peerconnection.a; sourceTree = "<group>"; };
9802246B1CA243DE00295D57 /* libjsoncpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjsoncpp.a; path = ../../../../../out_ios_libs/lib/libjsoncpp.a; sourceTree = "<group>"; };
9802246C1CA243DE00295D57 /* libmedia_file.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmedia_file.a; path = ../../../../../out_ios_libs/lib/libmedia_file.a; sourceTree = "<group>"; };
9802246D1CA243DE00295D57 /* libmetrics_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmetrics_default.a; path = ../../../../../out_ios_libs/lib/libmetrics_default.a; sourceTree = "<group>"; };
9802246E1CA243DE00295D57 /* libneteq.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libneteq.a; path = ../../../../../out_ios_libs/lib/libneteq.a; sourceTree = "<group>"; };
9802246F1CA243DE00295D57 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = ../../../../../out_ios_libs/lib/libopus.a; sourceTree = "<group>"; };
980224701CA243DE00295D57 /* libpaced_sender.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpaced_sender.a; path = ../../../../../out_ios_libs/lib/libpaced_sender.a; sourceTree = "<group>"; };
980224711CA243DE00295D57 /* libpcm16b.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpcm16b.a; path = ../../../../../out_ios_libs/lib/libpcm16b.a; sourceTree = "<group>"; };
980224721CA243DE00295D57 /* libprotobuf_lite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libprotobuf_lite.a; path = ../../../../../out_ios_libs/lib/libprotobuf_lite.a; sourceTree = "<group>"; };
980224731CA243DE00295D57 /* libred.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libred.a; path = ../../../../../out_ios_libs/lib/libred.a; sourceTree = "<group>"; };
980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libremote_bitrate_estimator.a; path = ../../../../../out_ios_libs/lib/libremote_bitrate_estimator.a; sourceTree = "<group>"; };
980224751CA243DE00295D57 /* librent_a_codec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librent_a_codec.a; path = ../../../../../out_ios_libs/lib/librent_a_codec.a; sourceTree = "<group>"; };
980224771CA243DE00295D57 /* librtc_base_approved.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base_approved.a; path = ../../../../../out_ios_libs/lib/librtc_base_approved.a; sourceTree = "<group>"; };
980224791CA243DE00295D57 /* librtc_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base.a; path = ../../../../../out_ios_libs/lib/librtc_base.a; sourceTree = "<group>"; };
9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log_proto.a; path = ../../../../../out_ios_libs/lib/librtc_event_log_proto.a; sourceTree = "<group>"; };
9802247B1CA243DE00295D57 /* librtc_event_log.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log.a; path = ../../../../../out_ios_libs/lib/librtc_event_log.a; sourceTree = "<group>"; };
9802247C1CA243DE00295D57 /* librtc_media.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_media.a; path = ../../../../../out_ios_libs/lib/librtc_media.a; sourceTree = "<group>"; };
9802247D1CA243DE00295D57 /* librtc_p2p.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_p2p.a; path = ../../../../../out_ios_libs/lib/librtc_p2p.a; sourceTree = "<group>"; };
9802247E1CA243DE00295D57 /* librtc_pc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_pc.a; path = ../../../../../out_ios_libs/lib/librtc_pc.a; sourceTree = "<group>"; };
9802247F1CA243DE00295D57 /* librtc_xmllite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmllite.a; path = ../../../../../out_ios_libs/lib/librtc_xmllite.a; sourceTree = "<group>"; };
980224801CA243DE00295D57 /* librtc_xmpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmpp.a; path = ../../../../../out_ios_libs/lib/librtc_xmpp.a; sourceTree = "<group>"; };
980224811CA243DE00295D57 /* librtp_rtcp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtp_rtcp.a; path = ../../../../../out_ios_libs/lib/librtp_rtcp.a; sourceTree = "<group>"; };
980224821CA243DE00295D57 /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = ../../../../../out_ios_libs/lib/libsrtp.a; sourceTree = "<group>"; };
980224831CA243DE00295D57 /* libsystem_wrappers.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsystem_wrappers.a; path = ../../../../../out_ios_libs/lib/libsystem_wrappers.a; sourceTree = "<group>"; };
980224841CA243DE00295D57 /* libusrsctplib.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libusrsctplib.a; path = ../../../../../out_ios_libs/lib/libusrsctplib.a; sourceTree = "<group>"; };
980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module_internal_impl.a; path = ../../../../../out_ios_libs/lib/libvideo_capture_module_internal_impl.a; sourceTree = "<group>"; };
980224861CA243DE00295D57 /* libvideo_capture_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module.a; path = ../../../../../out_ios_libs/lib/libvideo_capture_module.a; sourceTree = "<group>"; };
980224871CA243DE00295D57 /* libvideo_coding_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_coding_utility.a; path = ../../../../../out_ios_libs/lib/libvideo_coding_utility.a; sourceTree = "<group>"; };
980224881CA243DE00295D57 /* libvideo_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_processing.a; path = ../../../../../out_ios_libs/lib/libvideo_processing.a; sourceTree = "<group>"; };
980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module_internal_impl.a; path = ../../../../../out_ios_libs/lib/libvideo_render_module_internal_impl.a; sourceTree = "<group>"; };
9802248A1CA243DE00295D57 /* libvideo_render_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module.a; path = ../../../../../out_ios_libs/lib/libvideo_render_module.a; sourceTree = "<group>"; };
9802248B1CA243DE00295D57 /* libvoice_engine.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvoice_engine.a; path = ../../../../../out_ios_libs/lib/libvoice_engine.a; sourceTree = "<group>"; };
9802248C1CA243DE00295D57 /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = ../../../../../out_ios_libs/lib/libvpx.a; sourceTree = "<group>"; };
9802248D1CA243DE00295D57 /* libwebrtc_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_common.a; path = ../../../../../out_ios_libs/lib/libwebrtc_common.a; sourceTree = "<group>"; };
9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264_video_toolbox.a; path = ../../../../../out_ios_libs/lib/libwebrtc_h264_video_toolbox.a; sourceTree = "<group>"; };
9802248F1CA243DE00295D57 /* libwebrtc_h264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264.a; path = ../../../../../out_ios_libs/lib/libwebrtc_h264.a; sourceTree = "<group>"; };
980224901CA243DE00295D57 /* libwebrtc_i420.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_i420.a; path = ../../../../../out_ios_libs/lib/libwebrtc_i420.a; sourceTree = "<group>"; };
980224911CA243DE00295D57 /* libwebrtc_opus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_opus.a; path = ../../../../../out_ios_libs/lib/libwebrtc_opus.a; sourceTree = "<group>"; };
980224921CA243DE00295D57 /* libwebrtc_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_utility.a; path = ../../../../../out_ios_libs/lib/libwebrtc_utility.a; sourceTree = "<group>"; };
980224931CA243DE00295D57 /* libwebrtc_video_coding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_video_coding.a; path = ../../../../../out_ios_libs/lib/libwebrtc_video_coding.a; sourceTree = "<group>"; };
980224941CA243DE00295D57 /* libwebrtc_vp8.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp8.a; path = ../../../../../out_ios_libs/lib/libwebrtc_vp8.a; sourceTree = "<group>"; };
980224951CA243DE00295D57 /* libwebrtc_vp9.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp9.a; path = ../../../../../out_ios_libs/lib/libwebrtc_vp9.a; sourceTree = "<group>"; };
980224961CA243DE00295D57 /* libwebrtc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc.a; path = ../../../../../out_ios_libs/lib/libwebrtc.a; sourceTree = "<group>"; };
980224971CA243DE00295D57 /* libyuv.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libyuv.a; path = ../../../../../out_ios_libs/lib/libyuv.a; sourceTree = "<group>"; };
43C39B661CBC2C3E0017E317 /* RTCRtpEncodingParameters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCRtpEncodingParameters.mm; path = ../../../../api/objc/RTCRtpEncodingParameters.mm; sourceTree = "<group>"; };
43C39B671CBC2C3E0017E317 /* RTCRtpParameters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCRtpParameters.mm; path = ../../../../api/objc/RTCRtpParameters.mm; sourceTree = "<group>"; };
43C39B681CBC2C3E0017E317 /* RTCRtpSender.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCRtpSender.mm; path = ../../../../api/objc/RTCRtpSender.mm; sourceTree = "<group>"; };
43C39E361CC060400017E317 /* libaudio_coding_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_coding_module.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_coding_module.a; sourceTree = "<group>"; };
43C39E371CC060400017E317 /* libaudio_conference_mixer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_conference_mixer.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_conference_mixer.a; sourceTree = "<group>"; };
43C39E381CC060400017E317 /* libaudio_decoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_decoder_interface.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_decoder_interface.a; sourceTree = "<group>"; };
43C39E391CC060400017E317 /* libaudio_device.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_device.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_device.a; sourceTree = "<group>"; };
43C39E3A1CC060400017E317 /* libaudio_encoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_encoder_interface.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_encoder_interface.a; sourceTree = "<group>"; };
43C39E3B1CC060400017E317 /* libaudio_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_processing.a; path = ../../../../../out_ios_libs/fat_libs/libaudio_processing.a; sourceTree = "<group>"; };
43C39E3C1CC060400017E317 /* libaudioproc_debug_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudioproc_debug_proto.a; path = ../../../../../out_ios_libs/fat_libs/libaudioproc_debug_proto.a; sourceTree = "<group>"; };
43C39E3D1CC060400017E317 /* libbitrate_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbitrate_controller.a; path = ../../../../../out_ios_libs/fat_libs/libbitrate_controller.a; sourceTree = "<group>"; };
43C39E3E1CC060400017E317 /* libboringssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libboringssl.a; path = ../../../../../out_ios_libs/fat_libs/libboringssl.a; sourceTree = "<group>"; };
43C39E3F1CC060400017E317 /* libcng.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcng.a; path = ../../../../../out_ios_libs/fat_libs/libcng.a; sourceTree = "<group>"; };
43C39E401CC060400017E317 /* libcommon_audio.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_audio.a; path = ../../../../../out_ios_libs/fat_libs/libcommon_audio.a; sourceTree = "<group>"; };
43C39E411CC060400017E317 /* libcommon_video.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_video.a; path = ../../../../../out_ios_libs/fat_libs/libcommon_video.a; sourceTree = "<group>"; };
43C39E421CC060400017E317 /* libcongestion_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcongestion_controller.a; path = ../../../../../out_ios_libs/fat_libs/libcongestion_controller.a; sourceTree = "<group>"; };
43C39E431CC060400017E317 /* libexpat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libexpat.a; path = ../../../../../out_ios_libs/fat_libs/libexpat.a; sourceTree = "<group>"; };
43C39E441CC060400017E317 /* libfield_trial_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libfield_trial_default.a; path = ../../../../../out_ios_libs/fat_libs/libfield_trial_default.a; sourceTree = "<group>"; };
43C39E451CC060400017E317 /* libg711.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg711.a; path = ../../../../../out_ios_libs/fat_libs/libg711.a; sourceTree = "<group>"; };
43C39E461CC060400017E317 /* libg722.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg722.a; path = ../../../../../out_ios_libs/fat_libs/libg722.a; sourceTree = "<group>"; };
43C39E471CC060400017E317 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = ../../../../../out_ios_libs/fat_libs/libilbc.a; sourceTree = "<group>"; };
43C39E481CC060400017E317 /* libisac_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac_common.a; path = ../../../../../out_ios_libs/fat_libs/libisac_common.a; sourceTree = "<group>"; };
43C39E491CC060400017E317 /* libisac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac.a; path = ../../../../../out_ios_libs/fat_libs/libisac.a; sourceTree = "<group>"; };
43C39E4A1CC060400017E317 /* libjingle_peerconnection.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjingle_peerconnection.a; path = ../../../../../out_ios_libs/fat_libs/libjingle_peerconnection.a; sourceTree = "<group>"; };
43C39E4B1CC060400017E317 /* libjsoncpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjsoncpp.a; path = ../../../../../out_ios_libs/fat_libs/libjsoncpp.a; sourceTree = "<group>"; };
43C39E4C1CC060400017E317 /* libmedia_file.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmedia_file.a; path = ../../../../../out_ios_libs/fat_libs/libmedia_file.a; sourceTree = "<group>"; };
43C39E4D1CC060400017E317 /* libmetrics_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmetrics_default.a; path = ../../../../../out_ios_libs/fat_libs/libmetrics_default.a; sourceTree = "<group>"; };
43C39E4E1CC060400017E317 /* libneteq.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libneteq.a; path = ../../../../../out_ios_libs/fat_libs/libneteq.a; sourceTree = "<group>"; };
43C39E4F1CC060400017E317 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = ../../../../../out_ios_libs/fat_libs/libopus.a; sourceTree = "<group>"; };
43C39E501CC060400017E317 /* libpaced_sender.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpaced_sender.a; path = ../../../../../out_ios_libs/fat_libs/libpaced_sender.a; sourceTree = "<group>"; };
43C39E511CC060400017E317 /* libpcm16b.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpcm16b.a; path = ../../../../../out_ios_libs/fat_libs/libpcm16b.a; sourceTree = "<group>"; };
43C39E521CC060400017E317 /* libprotobuf_lite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libprotobuf_lite.a; path = ../../../../../out_ios_libs/fat_libs/libprotobuf_lite.a; sourceTree = "<group>"; };
43C39E531CC060400017E317 /* libred.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libred.a; path = ../../../../../out_ios_libs/fat_libs/libred.a; sourceTree = "<group>"; };
43C39E541CC060400017E317 /* libremote_bitrate_estimator.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libremote_bitrate_estimator.a; path = ../../../../../out_ios_libs/fat_libs/libremote_bitrate_estimator.a; sourceTree = "<group>"; };
43C39E551CC060400017E317 /* librent_a_codec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librent_a_codec.a; path = ../../../../../out_ios_libs/fat_libs/librent_a_codec.a; sourceTree = "<group>"; };
43C39E571CC060400017E317 /* librtc_base_approved.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base_approved.a; path = ../../../../../out_ios_libs/fat_libs/librtc_base_approved.a; sourceTree = "<group>"; };
43C39E591CC060400017E317 /* librtc_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base.a; path = ../../../../../out_ios_libs/fat_libs/librtc_base.a; sourceTree = "<group>"; };
43C39E5A1CC060400017E317 /* librtc_event_log_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log_proto.a; path = ../../../../../out_ios_libs/fat_libs/librtc_event_log_proto.a; sourceTree = "<group>"; };
43C39E5B1CC060400017E317 /* librtc_event_log.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log.a; path = ../../../../../out_ios_libs/fat_libs/librtc_event_log.a; sourceTree = "<group>"; };
43C39E5C1CC060400017E317 /* librtc_media.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_media.a; path = ../../../../../out_ios_libs/fat_libs/librtc_media.a; sourceTree = "<group>"; };
43C39E5D1CC060400017E317 /* librtc_p2p.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_p2p.a; path = ../../../../../out_ios_libs/fat_libs/librtc_p2p.a; sourceTree = "<group>"; };
43C39E5E1CC060400017E317 /* librtc_pc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_pc.a; path = ../../../../../out_ios_libs/fat_libs/librtc_pc.a; sourceTree = "<group>"; };
43C39E5F1CC060400017E317 /* librtc_xmllite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmllite.a; path = ../../../../../out_ios_libs/fat_libs/librtc_xmllite.a; sourceTree = "<group>"; };
43C39E601CC060400017E317 /* librtc_xmpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmpp.a; path = ../../../../../out_ios_libs/fat_libs/librtc_xmpp.a; sourceTree = "<group>"; };
43C39E611CC060400017E317 /* librtp_rtcp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtp_rtcp.a; path = ../../../../../out_ios_libs/fat_libs/librtp_rtcp.a; sourceTree = "<group>"; };
43C39E621CC060400017E317 /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = ../../../../../out_ios_libs/fat_libs/libsrtp.a; sourceTree = "<group>"; };
43C39E631CC060400017E317 /* libsystem_wrappers.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsystem_wrappers.a; path = ../../../../../out_ios_libs/fat_libs/libsystem_wrappers.a; sourceTree = "<group>"; };
43C39E641CC060400017E317 /* libusrsctplib.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libusrsctplib.a; path = ../../../../../out_ios_libs/fat_libs/libusrsctplib.a; sourceTree = "<group>"; };
43C39E651CC060400017E317 /* libvideo_capture_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module_internal_impl.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_capture_module_internal_impl.a; sourceTree = "<group>"; };
43C39E661CC060400017E317 /* libvideo_capture_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_capture_module.a; sourceTree = "<group>"; };
43C39E671CC060400017E317 /* libvideo_coding_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_coding_utility.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_coding_utility.a; sourceTree = "<group>"; };
43C39E681CC060400017E317 /* libvideo_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_processing.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_processing.a; sourceTree = "<group>"; };
43C39E691CC060400017E317 /* libvideo_render_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module_internal_impl.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_render_module_internal_impl.a; sourceTree = "<group>"; };
43C39E6A1CC060400017E317 /* libvideo_render_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module.a; path = ../../../../../out_ios_libs/fat_libs/libvideo_render_module.a; sourceTree = "<group>"; };
43C39E6B1CC060400017E317 /* libvoice_engine.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvoice_engine.a; path = ../../../../../out_ios_libs/fat_libs/libvoice_engine.a; sourceTree = "<group>"; };
43C39E6C1CC060400017E317 /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = ../../../../../out_ios_libs/fat_libs/libvpx.a; sourceTree = "<group>"; };
43C39E6D1CC060400017E317 /* libwebrtc_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_common.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_common.a; sourceTree = "<group>"; };
43C39E6E1CC060400017E317 /* libwebrtc_h264_video_toolbox.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264_video_toolbox.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_h264_video_toolbox.a; sourceTree = "<group>"; };
43C39E6F1CC060400017E317 /* libwebrtc_h264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_h264.a; sourceTree = "<group>"; };
43C39E701CC060400017E317 /* libwebrtc_i420.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_i420.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_i420.a; sourceTree = "<group>"; };
43C39E711CC060400017E317 /* libwebrtc_opus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_opus.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_opus.a; sourceTree = "<group>"; };
43C39E721CC060400017E317 /* libwebrtc_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_utility.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_utility.a; sourceTree = "<group>"; };
43C39E731CC060400017E317 /* libwebrtc_video_coding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_video_coding.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_video_coding.a; sourceTree = "<group>"; };
43C39E741CC060400017E317 /* libwebrtc_vp8.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp8.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_vp8.a; sourceTree = "<group>"; };
43C39E751CC060400017E317 /* libwebrtc_vp9.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp9.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc_vp9.a; sourceTree = "<group>"; };
43C39E761CC060400017E317 /* libwebrtc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc.a; path = ../../../../../out_ios_libs/fat_libs/libwebrtc.a; sourceTree = "<group>"; };
43C39E771CC060400017E317 /* libyuv.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libyuv.a; path = ../../../../../out_ios_libs/fat_libs/libyuv.a; sourceTree = "<group>"; };
43C39EE21CC061010017E317 /* RTCAudioTrack.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCAudioTrack.h; sourceTree = "<group>"; };
43C39EE31CC061010017E317 /* RTCAVFoundationVideoSource.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCAVFoundationVideoSource.h; sourceTree = "<group>"; };
43C39EE41CC061010017E317 /* RTCCameraPreviewView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCCameraPreviewView.h; sourceTree = "<group>"; };
43C39EE51CC061010017E317 /* RTCConfiguration.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCConfiguration.h; sourceTree = "<group>"; };
43C39EE61CC061010017E317 /* RTCDataChannel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCDataChannel.h; sourceTree = "<group>"; };
43C39EE71CC061010017E317 /* RTCDataChannelConfiguration.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCDataChannelConfiguration.h; sourceTree = "<group>"; };
43C39EE81CC061010017E317 /* RTCDispatcher.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCDispatcher.h; sourceTree = "<group>"; };
43C39EE91CC061010017E317 /* RTCEAGLVideoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCEAGLVideoView.h; sourceTree = "<group>"; };
43C39EEA1CC061010017E317 /* RTCFieldTrials.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCFieldTrials.h; sourceTree = "<group>"; };
43C39EEB1CC061010017E317 /* RTCFileLogger.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCFileLogger.h; sourceTree = "<group>"; };
43C39EEC1CC061010017E317 /* RTCIceCandidate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCIceCandidate.h; sourceTree = "<group>"; };
43C39EED1CC061010017E317 /* RTCIceServer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCIceServer.h; sourceTree = "<group>"; };
43C39EEE1CC061010017E317 /* RTCLogging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCLogging.h; sourceTree = "<group>"; };
43C39EEF1CC061010017E317 /* RTCMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCMacros.h; sourceTree = "<group>"; };
43C39EF01CC061010017E317 /* RTCMediaConstraints.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCMediaConstraints.h; sourceTree = "<group>"; };
43C39EF11CC061010017E317 /* RTCMediaStream.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCMediaStream.h; sourceTree = "<group>"; };
43C39EF21CC061010017E317 /* RTCMediaStreamTrack.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCMediaStreamTrack.h; sourceTree = "<group>"; };
43C39EF31CC061010017E317 /* RTCOpenGLVideoRenderer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCOpenGLVideoRenderer.h; sourceTree = "<group>"; };
43C39EF41CC061010017E317 /* RTCPeerConnection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnection.h; sourceTree = "<group>"; };
43C39EF51CC061010017E317 /* RTCPeerConnectionFactory.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnectionFactory.h; sourceTree = "<group>"; };
43C39EF61CC061020017E317 /* RTCRtpEncodingParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpEncodingParameters.h; sourceTree = "<group>"; };
43C39EF71CC061020017E317 /* RTCRtpParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpParameters.h; sourceTree = "<group>"; };
43C39EF81CC061020017E317 /* RTCRtpSender.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCRtpSender.h; sourceTree = "<group>"; };
43C39EF91CC061020017E317 /* RTCSessionDescription.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCSessionDescription.h; sourceTree = "<group>"; };
43C39EFA1CC061020017E317 /* RTCSSLAdapter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCSSLAdapter.h; sourceTree = "<group>"; };
43C39EFB1CC061020017E317 /* RTCStatsReport.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCStatsReport.h; sourceTree = "<group>"; };
43C39EFC1CC061020017E317 /* RTCTracing.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCTracing.h; sourceTree = "<group>"; };
43C39EFD1CC061020017E317 /* RTCVideoFrame.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCVideoFrame.h; sourceTree = "<group>"; };
43C39EFE1CC061020017E317 /* RTCVideoRenderer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCVideoRenderer.h; sourceTree = "<group>"; };
43C39EFF1CC061020017E317 /* RTCVideoSource.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCVideoSource.h; sourceTree = "<group>"; };
43C39F001CC061020017E317 /* RTCVideoTrack.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RTCVideoTrack.h; sourceTree = "<group>"; };
9820AAC31C977D11001E5793 /* WebRTC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WebRTC.framework; sourceTree = BUILT_PRODUCTS_DIR; };
9820AAC61C977D11001E5793 /* WebRTC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebRTC.h; sourceTree = "<group>"; };
9820AAC81C977D11001E5793 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@ -220,35 +259,6 @@
982C15151C99083B00895DC2 /* RTCSSLAdapter.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCSSLAdapter.mm; path = ../../../../base/objc/RTCSSLAdapter.mm; sourceTree = "<group>"; };
982C15161C99083B00895DC2 /* RTCTracing.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCTracing.mm; path = ../../../../base/objc/RTCTracing.mm; sourceTree = "<group>"; };
982C15171C99083B00895DC2 /* RTCUIApplication.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCUIApplication.mm; path = ../../../../base/objc/RTCUIApplication.mm; sourceTree = "<group>"; };
9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCAudioTrack.h; sourceTree = "<group>"; };
9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCAVFoundationVideoSource.h; sourceTree = "<group>"; };
9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCCameraPreviewView.h; sourceTree = "<group>"; };
9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCConfiguration.h; sourceTree = "<group>"; };
9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDataChannel.h; sourceTree = "<group>"; };
9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDataChannelConfiguration.h; sourceTree = "<group>"; };
9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDispatcher.h; sourceTree = "<group>"; };
9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCEAGLVideoView.h; sourceTree = "<group>"; };
9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCFieldTrials.h; sourceTree = "<group>"; };
9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCFileLogger.h; sourceTree = "<group>"; };
9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCIceCandidate.h; sourceTree = "<group>"; };
9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCIceServer.h; sourceTree = "<group>"; };
9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCLogging.h; sourceTree = "<group>"; };
9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMacros.h; sourceTree = "<group>"; };
9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaConstraints.h; sourceTree = "<group>"; };
9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaStream.h; sourceTree = "<group>"; };
9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaStreamTrack.h; sourceTree = "<group>"; };
9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCOpenGLVideoRenderer.h; sourceTree = "<group>"; };
9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnection.h; sourceTree = "<group>"; };
9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnectionFactory.h; sourceTree = "<group>"; };
9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCSessionDescription.h; sourceTree = "<group>"; };
9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCSSLAdapter.h; sourceTree = "<group>"; };
9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCStatsReport.h; sourceTree = "<group>"; };
9845CE951CA1AE1D00BFE57C /* RTCTracing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCTracing.h; sourceTree = "<group>"; };
9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoFrame.h; sourceTree = "<group>"; };
9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoRenderer.h; sourceTree = "<group>"; };
9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoRendererAdapter.h; sourceTree = "<group>"; };
9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoSource.h; sourceTree = "<group>"; };
9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoTrack.h; sourceTree = "<group>"; };
986649BA1C986B7D008EC831 /* avfoundationvideocapturer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = avfoundationvideocapturer.mm; path = ../../../../api/objc/avfoundationvideocapturer.mm; sourceTree = "<group>"; };
986649BB1C986B7D008EC831 /* RTCAudioTrack.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCAudioTrack.mm; path = ../../../../api/objc/RTCAudioTrack.mm; sourceTree = "<group>"; };
986649BC1C986B7D008EC831 /* RTCAVFoundationVideoSource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCAVFoundationVideoSource.mm; path = ../../../../api/objc/RTCAVFoundationVideoSource.mm; sourceTree = "<group>"; };
@ -279,74 +289,74 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
9802249B1CA243DE00295D57 /* libaudio_device.a in Frameworks */,
980224BE1CA243DE00295D57 /* librtc_media.a in Frameworks */,
980224A61CA243DE00295D57 /* libfield_trial_default.a in Frameworks */,
980224D31CA243DE00295D57 /* libwebrtc_opus.a in Frameworks */,
980224C11CA243DE00295D57 /* librtc_xmllite.a in Frameworks */,
980224C51CA243DE00295D57 /* libsystem_wrappers.a in Frameworks */,
980224D41CA243DE00295D57 /* libwebrtc_utility.a in Frameworks */,
980224A81CA243DE00295D57 /* libg722.a in Frameworks */,
9802249D1CA243DE00295D57 /* libaudio_processing.a in Frameworks */,
980224D61CA243DE00295D57 /* libwebrtc_vp8.a in Frameworks */,
980224AE1CA243DE00295D57 /* libmedia_file.a in Frameworks */,
980224B91CA243DE00295D57 /* librtc_base_approved.a in Frameworks */,
980224C71CA243DE00295D57 /* libvideo_capture_module_internal_impl.a in Frameworks */,
9802249C1CA243DE00295D57 /* libaudio_encoder_interface.a in Frameworks */,
980224CF1CA243DE00295D57 /* libwebrtc_common.a in Frameworks */,
9802249A1CA243DE00295D57 /* libaudio_decoder_interface.a in Frameworks */,
980224BC1CA243DE00295D57 /* librtc_event_log_proto.a in Frameworks */,
980224AC1CA243DE00295D57 /* libjingle_peerconnection.a in Frameworks */,
980224C41CA243DE00295D57 /* libsrtp.a in Frameworks */,
43C39E781CC060400017E317 /* libaudio_coding_module.a in Frameworks */,
43C39E791CC060400017E317 /* libaudio_conference_mixer.a in Frameworks */,
43C39E7A1CC060400017E317 /* libaudio_decoder_interface.a in Frameworks */,
43C39E7B1CC060400017E317 /* libaudio_device.a in Frameworks */,
43C39E7C1CC060400017E317 /* libaudio_encoder_interface.a in Frameworks */,
43C39E7D1CC060400017E317 /* libaudio_processing.a in Frameworks */,
43C39E7E1CC060400017E317 /* libaudioproc_debug_proto.a in Frameworks */,
43C39E7F1CC060400017E317 /* libbitrate_controller.a in Frameworks */,
43C39E801CC060400017E317 /* libboringssl.a in Frameworks */,
43C39E811CC060400017E317 /* libcng.a in Frameworks */,
43C39E821CC060400017E317 /* libcommon_audio.a in Frameworks */,
43C39E831CC060400017E317 /* libcommon_video.a in Frameworks */,
43C39E841CC060400017E317 /* libcongestion_controller.a in Frameworks */,
43C39E851CC060400017E317 /* libexpat.a in Frameworks */,
43C39E861CC060400017E317 /* libfield_trial_default.a in Frameworks */,
43C39E871CC060400017E317 /* libg711.a in Frameworks */,
43C39E881CC060400017E317 /* libg722.a in Frameworks */,
43C39E891CC060400017E317 /* libilbc.a in Frameworks */,
43C39E8A1CC060400017E317 /* libisac_common.a in Frameworks */,
43C39E8B1CC060400017E317 /* libisac.a in Frameworks */,
43C39E8C1CC060400017E317 /* libjingle_peerconnection.a in Frameworks */,
43C39E8D1CC060400017E317 /* libjsoncpp.a in Frameworks */,
43C39E8E1CC060400017E317 /* libmedia_file.a in Frameworks */,
43C39E8F1CC060400017E317 /* libmetrics_default.a in Frameworks */,
43C39E901CC060400017E317 /* libneteq.a in Frameworks */,
43C39E911CC060400017E317 /* libopus.a in Frameworks */,
43C39E921CC060400017E317 /* libpaced_sender.a in Frameworks */,
43C39E931CC060400017E317 /* libpcm16b.a in Frameworks */,
43C39E941CC060400017E317 /* libprotobuf_lite.a in Frameworks */,
43C39E951CC060400017E317 /* libred.a in Frameworks */,
43C39E961CC060400017E317 /* libremote_bitrate_estimator.a in Frameworks */,
43C39E971CC060400017E317 /* librent_a_codec.a in Frameworks */,
43C39E991CC060400017E317 /* librtc_base_approved.a in Frameworks */,
43C39E9B1CC060400017E317 /* librtc_base.a in Frameworks */,
43C39E9C1CC060400017E317 /* librtc_event_log_proto.a in Frameworks */,
43C39E9D1CC060400017E317 /* librtc_event_log.a in Frameworks */,
43C39E9E1CC060400017E317 /* librtc_media.a in Frameworks */,
43C39E9F1CC060400017E317 /* librtc_p2p.a in Frameworks */,
43C39EA01CC060400017E317 /* librtc_pc.a in Frameworks */,
43C39EA11CC060400017E317 /* librtc_xmllite.a in Frameworks */,
43C39EA21CC060400017E317 /* librtc_xmpp.a in Frameworks */,
43C39EA31CC060400017E317 /* librtp_rtcp.a in Frameworks */,
43C39EA41CC060400017E317 /* libsrtp.a in Frameworks */,
43C39EA51CC060400017E317 /* libsystem_wrappers.a in Frameworks */,
43C39EA61CC060400017E317 /* libusrsctplib.a in Frameworks */,
43C39EA71CC060400017E317 /* libvideo_capture_module_internal_impl.a in Frameworks */,
43C39EA81CC060400017E317 /* libvideo_capture_module.a in Frameworks */,
43C39EA91CC060400017E317 /* libvideo_coding_utility.a in Frameworks */,
43C39EAA1CC060400017E317 /* libvideo_processing.a in Frameworks */,
43C39EAB1CC060400017E317 /* libvideo_render_module_internal_impl.a in Frameworks */,
43C39EAC1CC060400017E317 /* libvideo_render_module.a in Frameworks */,
43C39EAD1CC060400017E317 /* libvoice_engine.a in Frameworks */,
43C39EAE1CC060400017E317 /* libvpx.a in Frameworks */,
43C39EAF1CC060400017E317 /* libwebrtc_common.a in Frameworks */,
43C39EB01CC060400017E317 /* libwebrtc_h264_video_toolbox.a in Frameworks */,
43C39EB11CC060400017E317 /* libwebrtc_h264.a in Frameworks */,
43C39EB21CC060400017E317 /* libwebrtc_i420.a in Frameworks */,
43C39EB31CC060400017E317 /* libwebrtc_opus.a in Frameworks */,
43C39EB41CC060400017E317 /* libwebrtc_utility.a in Frameworks */,
43C39EB51CC060400017E317 /* libwebrtc_video_coding.a in Frameworks */,
43C39EB61CC060400017E317 /* libwebrtc_vp8.a in Frameworks */,
43C39EB71CC060400017E317 /* libwebrtc_vp9.a in Frameworks */,
43C39EB81CC060400017E317 /* libwebrtc.a in Frameworks */,
43C39EB91CC060400017E317 /* libyuv.a in Frameworks */,
982C132F1C98B7C100895DC2 /* AudioToolbox.framework in Frameworks */,
980224981CA243DE00295D57 /* libaudio_coding_module.a in Frameworks */,
980224A31CA243DE00295D57 /* libcommon_video.a in Frameworks */,
982C132D1C98B7B400895DC2 /* CoreMedia.framework in Frameworks */,
980224A01CA243DE00295D57 /* libboringssl.a in Frameworks */,
980224D81CA243DE00295D57 /* libwebrtc.a in Frameworks */,
980224C91CA243DE00295D57 /* libvideo_coding_utility.a in Frameworks */,
980224D01CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a in Frameworks */,
980224BF1CA243DE00295D57 /* librtc_p2p.a in Frameworks */,
980224D21CA243DE00295D57 /* libwebrtc_i420.a in Frameworks */,
980224B21CA243DE00295D57 /* libpaced_sender.a in Frameworks */,
980224AF1CA243DE00295D57 /* libmetrics_default.a in Frameworks */,
982C132B1C98B79700895DC2 /* VideoToolbox.framework in Frameworks */,
980224AD1CA243DE00295D57 /* libjsoncpp.a in Frameworks */,
980224A71CA243DE00295D57 /* libg711.a in Frameworks */,
980224AA1CA243DE00295D57 /* libisac_common.a in Frameworks */,
980224D11CA243DE00295D57 /* libwebrtc_h264.a in Frameworks */,
980224CB1CA243DE00295D57 /* libvideo_render_module_internal_impl.a in Frameworks */,
980224A91CA243DE00295D57 /* libilbc.a in Frameworks */,
980224D51CA243DE00295D57 /* libwebrtc_video_coding.a in Frameworks */,
980224BD1CA243DE00295D57 /* librtc_event_log.a in Frameworks */,
980224A41CA243DE00295D57 /* libcongestion_controller.a in Frameworks */,
980224B01CA243DE00295D57 /* libneteq.a in Frameworks */,
9802249E1CA243DE00295D57 /* libaudioproc_debug_proto.a in Frameworks */,
980224A11CA243DE00295D57 /* libcng.a in Frameworks */,
980224991CA243DE00295D57 /* libaudio_conference_mixer.a in Frameworks */,
980224B61CA243DE00295D57 /* libremote_bitrate_estimator.a in Frameworks */,
980224C31CA243DE00295D57 /* librtp_rtcp.a in Frameworks */,
980224CC1CA243DE00295D57 /* libvideo_render_module.a in Frameworks */,
980224C81CA243DE00295D57 /* libvideo_capture_module.a in Frameworks */,
982C13291C98B78000895DC2 /* AVFoundation.framework in Frameworks */,
980224D71CA243DE00295D57 /* libwebrtc_vp9.a in Frameworks */,
980224C21CA243DE00295D57 /* librtc_xmpp.a in Frameworks */,
980224B31CA243DE00295D57 /* libpcm16b.a in Frameworks */,
980224CE1CA243DE00295D57 /* libvpx.a in Frameworks */,
980224BB1CA243DE00295D57 /* librtc_base.a in Frameworks */,
9802249F1CA243DE00295D57 /* libbitrate_controller.a in Frameworks */,
980224B11CA243DE00295D57 /* libopus.a in Frameworks */,
980224CD1CA243DE00295D57 /* libvoice_engine.a in Frameworks */,
980224A51CA243DE00295D57 /* libexpat.a in Frameworks */,
980224A21CA243DE00295D57 /* libcommon_audio.a in Frameworks */,
980224D91CA243DE00295D57 /* libyuv.a in Frameworks */,
980224B41CA243DE00295D57 /* libprotobuf_lite.a in Frameworks */,
980224B71CA243DE00295D57 /* librent_a_codec.a in Frameworks */,
980224CA1CA243DE00295D57 /* libvideo_processing.a in Frameworks */,
980224C01CA243DE00295D57 /* librtc_pc.a in Frameworks */,
980224AB1CA243DE00295D57 /* libisac.a in Frameworks */,
980224B51CA243DE00295D57 /* libred.a in Frameworks */,
980224C61CA243DE00295D57 /* libusrsctplib.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -413,107 +423,109 @@
9845CE7D1CA1AE1D00BFE57C /* include */ = {
isa = PBXGroup;
children = (
9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */,
9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */,
9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */,
9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */,
9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */,
9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */,
9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */,
9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */,
9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */,
9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */,
9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */,
9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */,
9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */,
9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */,
9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */,
9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */,
9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */,
9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */,
9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */,
9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */,
9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */,
9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */,
9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */,
9845CE951CA1AE1D00BFE57C /* RTCTracing.h */,
9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */,
9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */,
9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */,
9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */,
9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */,
43C39EE21CC061010017E317 /* RTCAudioTrack.h */,
43C39EE31CC061010017E317 /* RTCAVFoundationVideoSource.h */,
43C39EE41CC061010017E317 /* RTCCameraPreviewView.h */,
43C39EE51CC061010017E317 /* RTCConfiguration.h */,
43C39EE61CC061010017E317 /* RTCDataChannel.h */,
43C39EE71CC061010017E317 /* RTCDataChannelConfiguration.h */,
43C39EE81CC061010017E317 /* RTCDispatcher.h */,
43C39EE91CC061010017E317 /* RTCEAGLVideoView.h */,
43C39EEA1CC061010017E317 /* RTCFieldTrials.h */,
43C39EEB1CC061010017E317 /* RTCFileLogger.h */,
43C39EEC1CC061010017E317 /* RTCIceCandidate.h */,
43C39EED1CC061010017E317 /* RTCIceServer.h */,
43C39EEE1CC061010017E317 /* RTCLogging.h */,
43C39EEF1CC061010017E317 /* RTCMacros.h */,
43C39EF01CC061010017E317 /* RTCMediaConstraints.h */,
43C39EF11CC061010017E317 /* RTCMediaStream.h */,
43C39EF21CC061010017E317 /* RTCMediaStreamTrack.h */,
43C39EF31CC061010017E317 /* RTCOpenGLVideoRenderer.h */,
43C39EF41CC061010017E317 /* RTCPeerConnection.h */,
43C39EF51CC061010017E317 /* RTCPeerConnectionFactory.h */,
43C39EF61CC061020017E317 /* RTCRtpEncodingParameters.h */,
43C39EF71CC061020017E317 /* RTCRtpParameters.h */,
43C39EF81CC061020017E317 /* RTCRtpSender.h */,
43C39EF91CC061020017E317 /* RTCSessionDescription.h */,
43C39EFA1CC061020017E317 /* RTCSSLAdapter.h */,
43C39EFB1CC061020017E317 /* RTCStatsReport.h */,
43C39EFC1CC061020017E317 /* RTCTracing.h */,
43C39EFD1CC061020017E317 /* RTCVideoFrame.h */,
43C39EFE1CC061020017E317 /* RTCVideoRenderer.h */,
43C39EFF1CC061020017E317 /* RTCVideoSource.h */,
43C39F001CC061020017E317 /* RTCVideoTrack.h */,
);
name = include;
path = ../../../../../out_ios_framework/include;
path = ../../../../../out_ios_libs/framework_include;
sourceTree = "<group>";
};
9866491E1C985706008EC831 /* Static Libraries */ = {
isa = PBXGroup;
children = (
980224561CA243DE00295D57 /* libaudio_coding_module.a */,
980224571CA243DE00295D57 /* libaudio_conference_mixer.a */,
980224581CA243DE00295D57 /* libaudio_decoder_interface.a */,
980224591CA243DE00295D57 /* libaudio_device.a */,
9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */,
9802245B1CA243DE00295D57 /* libaudio_processing.a */,
9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */,
9802245D1CA243DE00295D57 /* libbitrate_controller.a */,
9802245E1CA243DE00295D57 /* libboringssl.a */,
9802245F1CA243DE00295D57 /* libcng.a */,
980224601CA243DE00295D57 /* libcommon_audio.a */,
980224611CA243DE00295D57 /* libcommon_video.a */,
980224621CA243DE00295D57 /* libcongestion_controller.a */,
980224631CA243DE00295D57 /* libexpat.a */,
980224641CA243DE00295D57 /* libfield_trial_default.a */,
980224651CA243DE00295D57 /* libg711.a */,
980224661CA243DE00295D57 /* libg722.a */,
980224671CA243DE00295D57 /* libilbc.a */,
980224681CA243DE00295D57 /* libisac_common.a */,
980224691CA243DE00295D57 /* libisac.a */,
9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */,
9802246B1CA243DE00295D57 /* libjsoncpp.a */,
9802246C1CA243DE00295D57 /* libmedia_file.a */,
9802246D1CA243DE00295D57 /* libmetrics_default.a */,
9802246E1CA243DE00295D57 /* libneteq.a */,
9802246F1CA243DE00295D57 /* libopus.a */,
980224701CA243DE00295D57 /* libpaced_sender.a */,
980224711CA243DE00295D57 /* libpcm16b.a */,
980224721CA243DE00295D57 /* libprotobuf_lite.a */,
980224731CA243DE00295D57 /* libred.a */,
980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */,
980224751CA243DE00295D57 /* librent_a_codec.a */,
980224771CA243DE00295D57 /* librtc_base_approved.a */,
980224791CA243DE00295D57 /* librtc_base.a */,
9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */,
9802247B1CA243DE00295D57 /* librtc_event_log.a */,
9802247C1CA243DE00295D57 /* librtc_media.a */,
9802247D1CA243DE00295D57 /* librtc_p2p.a */,
9802247E1CA243DE00295D57 /* librtc_pc.a */,
9802247F1CA243DE00295D57 /* librtc_xmllite.a */,
980224801CA243DE00295D57 /* librtc_xmpp.a */,
980224811CA243DE00295D57 /* librtp_rtcp.a */,
980224821CA243DE00295D57 /* libsrtp.a */,
980224831CA243DE00295D57 /* libsystem_wrappers.a */,
980224841CA243DE00295D57 /* libusrsctplib.a */,
980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */,
980224861CA243DE00295D57 /* libvideo_capture_module.a */,
980224871CA243DE00295D57 /* libvideo_coding_utility.a */,
980224881CA243DE00295D57 /* libvideo_processing.a */,
980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */,
9802248A1CA243DE00295D57 /* libvideo_render_module.a */,
9802248B1CA243DE00295D57 /* libvoice_engine.a */,
9802248C1CA243DE00295D57 /* libvpx.a */,
9802248D1CA243DE00295D57 /* libwebrtc_common.a */,
9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */,
9802248F1CA243DE00295D57 /* libwebrtc_h264.a */,
980224901CA243DE00295D57 /* libwebrtc_i420.a */,
980224911CA243DE00295D57 /* libwebrtc_opus.a */,
980224921CA243DE00295D57 /* libwebrtc_utility.a */,
980224931CA243DE00295D57 /* libwebrtc_video_coding.a */,
980224941CA243DE00295D57 /* libwebrtc_vp8.a */,
980224951CA243DE00295D57 /* libwebrtc_vp9.a */,
980224961CA243DE00295D57 /* libwebrtc.a */,
980224971CA243DE00295D57 /* libyuv.a */,
43C39E361CC060400017E317 /* libaudio_coding_module.a */,
43C39E371CC060400017E317 /* libaudio_conference_mixer.a */,
43C39E381CC060400017E317 /* libaudio_decoder_interface.a */,
43C39E391CC060400017E317 /* libaudio_device.a */,
43C39E3A1CC060400017E317 /* libaudio_encoder_interface.a */,
43C39E3B1CC060400017E317 /* libaudio_processing.a */,
43C39E3C1CC060400017E317 /* libaudioproc_debug_proto.a */,
43C39E3D1CC060400017E317 /* libbitrate_controller.a */,
43C39E3E1CC060400017E317 /* libboringssl.a */,
43C39E3F1CC060400017E317 /* libcng.a */,
43C39E401CC060400017E317 /* libcommon_audio.a */,
43C39E411CC060400017E317 /* libcommon_video.a */,
43C39E421CC060400017E317 /* libcongestion_controller.a */,
43C39E431CC060400017E317 /* libexpat.a */,
43C39E441CC060400017E317 /* libfield_trial_default.a */,
43C39E451CC060400017E317 /* libg711.a */,
43C39E461CC060400017E317 /* libg722.a */,
43C39E471CC060400017E317 /* libilbc.a */,
43C39E481CC060400017E317 /* libisac_common.a */,
43C39E491CC060400017E317 /* libisac.a */,
43C39E4A1CC060400017E317 /* libjingle_peerconnection.a */,
43C39E4B1CC060400017E317 /* libjsoncpp.a */,
43C39E4C1CC060400017E317 /* libmedia_file.a */,
43C39E4D1CC060400017E317 /* libmetrics_default.a */,
43C39E4E1CC060400017E317 /* libneteq.a */,
43C39E4F1CC060400017E317 /* libopus.a */,
43C39E501CC060400017E317 /* libpaced_sender.a */,
43C39E511CC060400017E317 /* libpcm16b.a */,
43C39E521CC060400017E317 /* libprotobuf_lite.a */,
43C39E531CC060400017E317 /* libred.a */,
43C39E541CC060400017E317 /* libremote_bitrate_estimator.a */,
43C39E551CC060400017E317 /* librent_a_codec.a */,
43C39E571CC060400017E317 /* librtc_base_approved.a */,
43C39E591CC060400017E317 /* librtc_base.a */,
43C39E5A1CC060400017E317 /* librtc_event_log_proto.a */,
43C39E5B1CC060400017E317 /* librtc_event_log.a */,
43C39E5C1CC060400017E317 /* librtc_media.a */,
43C39E5D1CC060400017E317 /* librtc_p2p.a */,
43C39E5E1CC060400017E317 /* librtc_pc.a */,
43C39E5F1CC060400017E317 /* librtc_xmllite.a */,
43C39E601CC060400017E317 /* librtc_xmpp.a */,
43C39E611CC060400017E317 /* librtp_rtcp.a */,
43C39E621CC060400017E317 /* libsrtp.a */,
43C39E631CC060400017E317 /* libsystem_wrappers.a */,
43C39E641CC060400017E317 /* libusrsctplib.a */,
43C39E651CC060400017E317 /* libvideo_capture_module_internal_impl.a */,
43C39E661CC060400017E317 /* libvideo_capture_module.a */,
43C39E671CC060400017E317 /* libvideo_coding_utility.a */,
43C39E681CC060400017E317 /* libvideo_processing.a */,
43C39E691CC060400017E317 /* libvideo_render_module_internal_impl.a */,
43C39E6A1CC060400017E317 /* libvideo_render_module.a */,
43C39E6B1CC060400017E317 /* libvoice_engine.a */,
43C39E6C1CC060400017E317 /* libvpx.a */,
43C39E6D1CC060400017E317 /* libwebrtc_common.a */,
43C39E6E1CC060400017E317 /* libwebrtc_h264_video_toolbox.a */,
43C39E6F1CC060400017E317 /* libwebrtc_h264.a */,
43C39E701CC060400017E317 /* libwebrtc_i420.a */,
43C39E711CC060400017E317 /* libwebrtc_opus.a */,
43C39E721CC060400017E317 /* libwebrtc_utility.a */,
43C39E731CC060400017E317 /* libwebrtc_video_coding.a */,
43C39E741CC060400017E317 /* libwebrtc_vp8.a */,
43C39E751CC060400017E317 /* libwebrtc_vp9.a */,
43C39E761CC060400017E317 /* libwebrtc.a */,
43C39E771CC060400017E317 /* libyuv.a */,
);
name = "Static Libraries";
sourceTree = "<group>";
@ -538,6 +550,9 @@
986649C91C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm */,
986649CA1C986B7D008EC831 /* RTCPeerConnection+Stats.mm */,
986649CB1C986B7D008EC831 /* RTCPeerConnectionFactory.mm */,
43C39B661CBC2C3E0017E317 /* RTCRtpEncodingParameters.mm */,
43C39B671CBC2C3E0017E317 /* RTCRtpParameters.mm */,
43C39B681CBC2C3E0017E317 /* RTCRtpSender.mm */,
986649CC1C986B7D008EC831 /* RTCSessionDescription.mm */,
986649CD1C986B7D008EC831 /* RTCStatsReport.mm */,
986649CE1C986B7D008EC831 /* RTCVideoFrame.mm */,
@ -556,35 +571,37 @@
buildActionMask = 2147483647;
files = (
9820AAC71C977D11001E5793 /* WebRTC.h in Headers */,
9845CEB41CA1AE1E00BFE57C /* RTCVideoRenderer.h in Headers */,
9845CE9E1CA1AE1E00BFE57C /* RTCConfiguration.h in Headers */,
9845CE9F1CA1AE1E00BFE57C /* RTCDataChannel.h in Headers */,
9845CEA41CA1AE1E00BFE57C /* RTCFileLogger.h in Headers */,
9845CEA71CA1AE1E00BFE57C /* RTCLogging.h in Headers */,
9845CEB71CA1AE1E00BFE57C /* RTCVideoTrack.h in Headers */,
9845CE9B1CA1AE1D00BFE57C /* RTCAudioTrack.h in Headers */,
9845CEB21CA1AE1E00BFE57C /* RTCTracing.h in Headers */,
9845CEA01CA1AE1E00BFE57C /* RTCDataChannelConfiguration.h in Headers */,
9845CEAB1CA1AE1E00BFE57C /* RTCMediaStreamTrack.h in Headers */,
9845CEAA1CA1AE1E00BFE57C /* RTCMediaStream.h in Headers */,
9845CEA51CA1AE1E00BFE57C /* RTCIceCandidate.h in Headers */,
9845CEB11CA1AE1E00BFE57C /* RTCStatsReport.h in Headers */,
9845CEB31CA1AE1E00BFE57C /* RTCVideoFrame.h in Headers */,
9845CEA21CA1AE1E00BFE57C /* RTCEAGLVideoView.h in Headers */,
9845CEA31CA1AE1E00BFE57C /* RTCFieldTrials.h in Headers */,
9845CEB61CA1AE1E00BFE57C /* RTCVideoSource.h in Headers */,
9845CEA11CA1AE1E00BFE57C /* RTCDispatcher.h in Headers */,
9845CEA81CA1AE1E00BFE57C /* RTCMacros.h in Headers */,
9845CEAD1CA1AE1E00BFE57C /* RTCPeerConnection.h in Headers */,
9845CEB51CA1AE1E00BFE57C /* RTCVideoRendererAdapter.h in Headers */,
9845CEA91CA1AE1E00BFE57C /* RTCMediaConstraints.h in Headers */,
9845CEAF1CA1AE1E00BFE57C /* RTCSessionDescription.h in Headers */,
9845CEA61CA1AE1E00BFE57C /* RTCIceServer.h in Headers */,
9845CE9C1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h in Headers */,
9845CEAE1CA1AE1E00BFE57C /* RTCPeerConnectionFactory.h in Headers */,
9845CEB01CA1AE1E00BFE57C /* RTCSSLAdapter.h in Headers */,
9845CEAC1CA1AE1E00BFE57C /* RTCOpenGLVideoRenderer.h in Headers */,
9845CE9D1CA1AE1E00BFE57C /* RTCCameraPreviewView.h in Headers */,
43C39F031CC061020017E317 /* RTCAudioTrack.h in Headers */,
43C39F041CC061020017E317 /* RTCAVFoundationVideoSource.h in Headers */,
43C39F051CC061020017E317 /* RTCCameraPreviewView.h in Headers */,
43C39F061CC061020017E317 /* RTCConfiguration.h in Headers */,
43C39F071CC061020017E317 /* RTCDataChannel.h in Headers */,
43C39F081CC061020017E317 /* RTCDataChannelConfiguration.h in Headers */,
43C39F091CC061020017E317 /* RTCDispatcher.h in Headers */,
43C39F0A1CC061020017E317 /* RTCEAGLVideoView.h in Headers */,
43C39F0B1CC061020017E317 /* RTCFieldTrials.h in Headers */,
43C39F0C1CC061020017E317 /* RTCFileLogger.h in Headers */,
43C39F0D1CC061020017E317 /* RTCIceCandidate.h in Headers */,
43C39F0E1CC061020017E317 /* RTCIceServer.h in Headers */,
43C39F0F1CC061020017E317 /* RTCLogging.h in Headers */,
43C39F101CC061020017E317 /* RTCMacros.h in Headers */,
43C39F111CC061020017E317 /* RTCMediaConstraints.h in Headers */,
43C39F121CC061020017E317 /* RTCMediaStream.h in Headers */,
43C39F131CC061020017E317 /* RTCMediaStreamTrack.h in Headers */,
43C39F141CC061020017E317 /* RTCOpenGLVideoRenderer.h in Headers */,
43C39F151CC061020017E317 /* RTCPeerConnection.h in Headers */,
43C39F161CC061020017E317 /* RTCPeerConnectionFactory.h in Headers */,
43C39F171CC061020017E317 /* RTCRtpEncodingParameters.h in Headers */,
43C39F181CC061020017E317 /* RTCRtpParameters.h in Headers */,
43C39F191CC061020017E317 /* RTCRtpSender.h in Headers */,
43C39F1A1CC061020017E317 /* RTCSessionDescription.h in Headers */,
43C39F1B1CC061020017E317 /* RTCSSLAdapter.h in Headers */,
43C39F1C1CC061020017E317 /* RTCStatsReport.h in Headers */,
43C39F1D1CC061020017E317 /* RTCTracing.h in Headers */,
43C39F1E1CC061020017E317 /* RTCVideoFrame.h in Headers */,
43C39F1F1CC061020017E317 /* RTCVideoRenderer.h in Headers */,
43C39F201CC061020017E317 /* RTCVideoSource.h in Headers */,
43C39F211CC061020017E317 /* RTCVideoTrack.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -657,10 +674,12 @@
files = (
986649E01C986B7D008EC831 /* RTCPeerConnection.mm in Sources */,
986649D81C986B7D008EC831 /* RTCEAGLVideoView.m in Sources */,
43C39B691CBC2C3E0017E317 /* RTCRtpEncodingParameters.mm in Sources */,
982C151E1C99083B00895DC2 /* RTCSSLAdapter.mm in Sources */,
982C15181C99083B00895DC2 /* NSString+StdString.mm in Sources */,
986649E11C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm in Sources */,
986649DA1C986B7D008EC831 /* RTCIceServer.mm in Sources */,
43C39B6B1CBC2C3F0017E317 /* RTCRtpSender.mm in Sources */,
982C15191C99083B00895DC2 /* RTCCameraPreviewView.m in Sources */,
986649E51C986B7D008EC831 /* RTCStatsReport.mm in Sources */,
986649D21C986B7D008EC831 /* avfoundationvideocapturer.mm in Sources */,
@ -674,6 +693,7 @@
982C151D1C99083B00895DC2 /* RTCLogging.mm in Sources */,
986649D51C986B7D008EC831 /* RTCConfiguration.mm in Sources */,
986649E91C986B7D008EC831 /* RTCVideoTrack.mm in Sources */,
43C39B6A1CBC2C3F0017E317 /* RTCRtpParameters.mm in Sources */,
986649DD1C986B7D008EC831 /* RTCMediaStreamTrack.mm in Sources */,
982C151C1C99083B00895DC2 /* RTCFileLogger.mm in Sources */,
986649D91C986B7D008EC831 /* RTCIceCandidate.mm in Sources */,
@ -825,7 +845,7 @@
INFOPLIST_FILE = WebRTC/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/lib";
LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/fat_libs";
OTHER_LDFLAGS = "-ObjC";
PRODUCT_BUNDLE_IDENTIFIER = com.google.WebRTC;
PRODUCT_NAME = "$(TARGET_NAME)";
@ -874,7 +894,7 @@
INFOPLIST_FILE = WebRTC/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/lib";
LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/fat_libs";
OTHER_LDFLAGS = "-ObjC";
PRODUCT_BUNDLE_IDENTIFIER = com.google.WebRTC;
PRODUCT_NAME = "$(TARGET_NAME)";

View File

@ -16,8 +16,8 @@ FOUNDATION_EXPORT double WebRTCVersionNumber;
//! Project version string for WebRTC.
FOUNDATION_EXPORT const unsigned char WebRTCVersionString[];
#import <WebRTC/RTCAudioTrack.h>
#import <WebRTC/RTCAVFoundationVideoSource.h>
#import <WebRTC/RTCAudioTrack.h>
#import <WebRTC/RTCCameraPreviewView.h>
#import <WebRTC/RTCConfiguration.h>
#import <WebRTC/RTCDataChannel.h>
@ -36,12 +36,14 @@ FOUNDATION_EXPORT const unsigned char WebRTCVersionString[];
#import <WebRTC/RTCOpenGLVideoRenderer.h>
#import <WebRTC/RTCPeerConnection.h>
#import <WebRTC/RTCPeerConnectionFactory.h>
#import <WebRTC/RTCSessionDescription.h>
#import <WebRTC/RTCRtpEncodingParameters.h>
#import <WebRTC/RTCRtpParameters.h>
#import <WebRTC/RTCRtpSender.h>
#import <WebRTC/RTCSSLAdapter.h>
#import <WebRTC/RTCSessionDescription.h>
#import <WebRTC/RTCStatsReport.h>
#import <WebRTC/RTCTracing.h>
#import <WebRTC/RTCVideoFrame.h>
#import <WebRTC/RTCVideoRenderer.h>
#import <WebRTC/RTCVideoRendererAdapter.h>
#import <WebRTC/RTCVideoSource.h>
#import <WebRTC/RTCVideoTrack.h>

View File

@ -10,43 +10,109 @@
# Generates dynamic FAT framework for iOS in out_ios_framework.
# Check for Darwin.
if [[ ! $(uname) = "Darwin" ]]; then
echo "OS X required." >&2
fi
# Exit on errors.
set -e
# Check for iOS library build script.
SCRIPT_DIR=$(dirname $0)
# Globals.
SCRIPT_DIR=$(cd $(dirname $0) && pwd)
WEBRTC_BASE_DIR=${SCRIPT_DIR}/../../..
BUILD_WEBRTC_SCRIPT=${WEBRTC_BASE_DIR}/webrtc/build/ios/build_ios_libs.sh
if [[ ! -x ${BUILD_WEBRTC_SCRIPT} ]]; then
echo "Failed to find iOS library build script." >&2
exit 1
fi
# Check for flatten iOS headers script.
FLATTEN_HEADERS_SCRIPT=${WEBRTC_BASE_DIR}/webrtc/build/ios/flatten_ios_headers
if [[ ! -x ${FLATTEN_HEADERS_SCRIPT} ]]; then
echo "Failed to find flatten iOS headers script." >&2
exit 1
fi
BUILD_WEBRTC_SCRIPT=${SCRIPT_DIR}/build_ios_libs.sh
FLATTEN_HEADERS_SCRIPT=${SCRIPT_DIR}/flatten_ios_headers.py
SDK_DIR=${SCRIPT_DIR}/SDK
FRAMEWORK_PROJECT_DIR=${SDK_DIR}/Framework
FRAMEWORK_PROJECT_PATH=${FRAMEWORK_PROJECT_DIR}/WebRTC.xcodeproj
pushd ${WEBRTC_BASE_DIR}
LIB_BASE_DIR=out_ios_libs
FRAMEWORK_BASE_DIR=out_ios_framework
function check_preconditions {
# Check for Darwin.
if [[ ! $(uname) = "Darwin" ]]; then
echo "OS X required." >&2
exit 1
fi
if [[ ! -x ${BUILD_WEBRTC_SCRIPT} ]]; then
echo "Failed to find iOS library build script." >&2
exit 1
fi
if [[ ! -x ${FLATTEN_HEADERS_SCRIPT} ]]; then
echo "Failed to find flatten iOS headers script." >&2
exit 1
fi
if [[ ! -x ${FRAMEWORK_PROJECT_PATH} ]]; then
echo "Failed to find framework XCode project." >&2
exit 1
fi
}
function clean_artifacts {
# Make XCode clean up after itself.
xcodebuild -project ${FRAMEWORK_PROJECT_PATH} -scheme WebRTC \
-configuration Release clean
xcodebuild -project ${FRAMEWORK_PROJECT_PATH} -scheme WebRTC \
-configuration Release clean \
-destination "platform=iOS Simulator,name=iPhone 6"
# Remove remaining directory that XCode doesn't delete.
XCODE_BUILD_DIR=${FRAMEWORK_PROJECT_DIR}/build
if [[ -d ${XCODE_BUILD_DIR} ]]; then
rm -r ${XCODE_BUILD_DIR}
fi
# Remove the temporary framework header dir.
if [[ -d ${FRAMEWORK_INCLUDE_DIR} ]]; then
rm -r ${FRAMEWORK_INCLUDE_DIR}
fi
# Remove the generated framework.
if [[ -d ${FRAMEWORK_OUTPUT_DIR} ]]; then
rm -r ${FRAMEWORK_OUTPUT_DIR}
fi
# Let the other script clean up after itself.
${BUILD_WEBRTC_SCRIPT} -c
}
function usage {
echo "WebRTC iOS Framework build script."
echo "Builds a dynamic Framework for the WebRTC APIs."
echo "Compiles various architectures and edits header paths as required."
echo "Usage: $0 [-h] [-c]"
echo " -h Print this help."
echo " -c Removes generated build output."
exit 0
}
check_preconditions
# Set the output directories for the various build artifacts.
# For convenience we'll output some generated files in the same directory
# as the one we used to output the generated statis libraries.
LIB_OUTPUT_DIR=${WEBRTC_BASE_DIR}/out_ios_libs
INCLUDE_OUTPUT_DIR=${LIB_OUTPUT_DIR}/include
FRAMEWORK_INCLUDE_DIR=${LIB_OUTPUT_DIR}/framework_include
FRAMEWORK_OUTPUT_DIR=${WEBRTC_BASE_DIR}/out_ios_framework
PERFORM_CLEAN=0
# Parse arguments.
while getopts "hc" opt; do
case "${opt}" in
h) usage;;
c) PERFORM_CLEAN=1;;
*)
usage
exit 1
;;
esac
done
if [[ ${PERFORM_CLEAN} -ne 0 ]]; then
clean_artifacts
exit 0
fi
# Build static libraries for iOS.
${BUILD_WEBRTC_SCRIPT}
if [ $? -ne 0 ]; then
echo "Failed to build iOS static libraries." >&2
exit 1
fi
${BUILD_WEBRTC_SCRIPT} -o ${LIB_OUTPUT_DIR}
# Flatten the directory structure for iOS headers.
${FLATTEN_HEADERS_SCRIPT} ${LIB_BASE_DIR} ${FRAMEWORK_BASE_DIR}
if [ $? -ne 0 ]; then
echo "Failed to flatten iOS headers." >&2
exit 1
fi
# Flatten the directory structure for iOS headers generated from building the
# static libraries.
${FLATTEN_HEADERS_SCRIPT} ${INCLUDE_OUTPUT_DIR} ${FRAMEWORK_INCLUDE_DIR}
# Replace full paths for headers with framework paths.
SED_PATTERN='
@ -54,32 +120,33 @@ SED_PATTERN='
s/(\#import )\"webrtc\/base\/objc\/(.*)\"/\1<WebRTC\/\2>/g;
s/(\#include )\"webrtc\/base\/objc\/(.*)\"/\1<WebRTC\/\2>/g;
'
sed -E -i '' "$SED_PATTERN" ${FRAMEWORK_BASE_DIR}/include/*.h
sed -E -i '' "$SED_PATTERN" ${FRAMEWORK_INCLUDE_DIR}/*.h
SDK_DIR=webrtc/build/ios/SDK
PROJECT_DIR=${SDK_DIR}/Framework
# Build the framework.
pushd ${PROJECT_DIR}
xcodebuild -project WebRTC.xcodeproj -scheme WebRTC -configuration Release \
build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
xcodebuild -project WebRTC.xcodeproj -scheme WebRTC -configuration Release \
build -destination 'platform=iOS Simulator,name=iPhone 6'
popd
xcodebuild -project ${FRAMEWORK_PROJECT_PATH} -scheme WebRTC \
-configuration Release build \
CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
xcodebuild -project ${FRAMEWORK_PROJECT_PATH} -scheme WebRTC \
-configuration Release build \
-destination "platform=iOS Simulator,name=iPhone 6"
# Copy podspec, framework, dSYM and LICENSE to FRAMEWORK_BASE_DIR
DEVICE_BUILD_DIR=${PROJECT_DIR}/build/Release-iphoneos
cp ${SDK_DIR}/WebRTC.podspec ${FRAMEWORK_BASE_DIR}/
cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework ${FRAMEWORK_BASE_DIR}/
cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework.dSYM ${FRAMEWORK_BASE_DIR}/
cp -R webrtc/LICENSE ${FRAMEWORK_BASE_DIR}/
# XCode should output the build artifacts to the following directories.
DEVICE_BUILD_DIR=${FRAMEWORK_PROJECT_DIR}/build/Release-iphoneos
SIMULATOR_BUILD_DIR=${FRAMEWORK_PROJECT_DIR}/build/Release-iphonesimulator
# Combine multiple architectures
SIMULATOR_BUILD_DIR=${PROJECT_DIR}/build/Release-iphonesimulator
# Copy podspec, framework, dSYM and LICENSE to FRAMEWORK_OUTPUT_DIR.
mkdir -p ${FRAMEWORK_OUTPUT_DIR}
cp ${SDK_DIR}/WebRTC.podspec ${FRAMEWORK_OUTPUT_DIR}/
cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework ${FRAMEWORK_OUTPUT_DIR}/
cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework.dSYM ${FRAMEWORK_OUTPUT_DIR}/
cp -R ${WEBRTC_BASE_DIR}/webrtc/LICENSE ${FRAMEWORK_OUTPUT_DIR}/
# Combine multiple architectures.
DYLIB_PATH=WebRTC.framework/WebRTC
DWARF_PATH=WebRTC.framework.dSYM/Contents/Resources/DWARF/WebRTC
lipo ${FRAMEWORK_BASE_DIR}/${DYLIB_PATH} ${SIMULATOR_BUILD_DIR}/${DYLIB_PATH} \
-create -output ${FRAMEWORK_BASE_DIR}/${DYLIB_PATH}
lipo ${FRAMEWORK_BASE_DIR}/${DWARF_PATH} ${SIMULATOR_BUILD_DIR}/${DWARF_PATH} \
-create -output ${FRAMEWORK_BASE_DIR}/${DWARF_PATH}
popd
lipo ${FRAMEWORK_OUTPUT_DIR}/${DYLIB_PATH} \
${SIMULATOR_BUILD_DIR}/${DYLIB_PATH} \
-create -output ${FRAMEWORK_OUTPUT_DIR}/${DYLIB_PATH}
lipo ${FRAMEWORK_OUTPUT_DIR}/${DWARF_PATH} \
${SIMULATOR_BUILD_DIR}/${DWARF_PATH} \
-create -output ${FRAMEWORK_OUTPUT_DIR}/${DWARF_PATH}

View File

@ -10,77 +10,138 @@
# Generates static FAT libraries for ios in out_ios_libs.
# Flag to build the new or legacy version of the API.
USE_LEGACY_API=0
# Exit on errors.
set -e
# Check for Darwin.
if [[ ! $(uname) = "Darwin" ]]; then
echo "OS/X required." >&2
fi
# Check for libtool.
if [[ -z $(which libtool) ]]; then
echo "Missing libtool binary." >&2
fi
# Check for GYP generator.
SCRIPT_DIR=$(dirname $0)
# Globals.
SCRIPT_DIR=$(cd $(dirname $0) && pwd)
WEBRTC_BASE_DIR=${SCRIPT_DIR}/../../..
GYP_WEBRTC_SCRIPT=${WEBRTC_BASE_DIR}/webrtc/build/gyp_webrtc
if [[ ! -x ${GYP_WEBRTC_SCRIPT} ]]; then
echo "Failed to find gyp generator." >&2
exit 1
fi
# Check for export headers script.
EXPORT_HEADERS_SCRIPT=${SCRIPT_DIR}/export_headers
if [[ ! -x ${EXPORT_HEADERS_SCRIPT} ]]; then
echo "Failed to find export headers script." >&2
exit 1
fi
# Check for merge script.
MERGE_SCRIPT=${SCRIPT_DIR}/merge_ios_libs
if [[ ! -x ${MERGE_SCRIPT} ]]; then
echo "Failed to find library merging script." >&2
exit 1
fi
EXPORT_HEADERS_SCRIPT=${SCRIPT_DIR}/export_headers.py
MERGE_SCRIPT=${SCRIPT_DIR}/merge_ios_libs.py
pushd ${WEBRTC_BASE_DIR}
LIBRARY_BASE_DIR="out_ios_libs"
function check_preconditions {
# Check for Darwin.
if [[ ! $(uname) = "Darwin" ]]; then
echo "OS/X required." >&2
exit 1
fi
function build_webrtc {
OUTPUT_DIR=$1
FLAVOR=$2
TARGET_ARCH=$3
if [[ ${TARGET_ARCH} = 'arm' || ${TARGET_ARCH} = 'arm64' ]]; then
FLAVOR="${FLAVOR}-iphoneos"
else
FLAVOR="${FLAVOR}-iphonesimulator"
# Check for libtool.
if [[ -z $(which libtool) ]]; then
echo "Missing libtool binary." >&2
exit 1
fi
export GYP_DEFINES="OS=ios target_arch=${TARGET_ARCH} use_objc_h264=1 \
clang_xcode=1 ios_override_visibility=1"
export GYP_GENERATORS="ninja"
export GYP_GENERATOR_FLAGS="output_dir=${OUTPUT_DIR}"
webrtc/build/gyp_webrtc webrtc/build/ios/merge_ios_libs.gyp
if [[ ${USE_LEGACY_API} -eq 1 ]]; then
ninja -C ${OUTPUT_DIR}/${FLAVOR} libjingle_peerconnection_objc_no_op
else
ninja -C ${OUTPUT_DIR}/${FLAVOR} webrtc_api_objc_no_op
# Check for GYP generator.
if [[ ! -x ${GYP_WEBRTC_SCRIPT} ]]; then
echo "Failed to find gyp generator." >&2
exit 1
fi
# Check for export headers script.
if [[ ! -x ${EXPORT_HEADERS_SCRIPT} ]]; then
echo "Failed to find export headers script." >&2
exit 1
fi
# Check for merge script.
if [[ ! -x ${MERGE_SCRIPT} ]]; then
echo "Failed to find library merging script." >&2
exit 1
fi
mkdir -p ${LIBRARY_BASE_DIR}/${TARGET_ARCH}
mv ${OUTPUT_DIR}/${FLAVOR}/*.a ${LIBRARY_BASE_DIR}/${TARGET_ARCH}
}
# Build all the common architectures.
build_webrtc "out_ios_arm" "Release" "arm"
build_webrtc "out_ios_arm64" "Release" "arm64"
build_webrtc "out_ios_ia32" "Release" "ia32"
build_webrtc "out_ios_x86_64" "Release" "x64"
function build_webrtc {
local base_output_dir=$1
local flavor=$2
local target_arch=$3
local ninja_output_dir=${base_output_dir}/${target_arch}_ninja
local library_output_dir=${base_output_dir}/${target_arch}_libs
if [[ ${target_arch} = 'arm' || ${target_arch} = 'arm64' ]]; then
flavor="${flavor}-iphoneos"
else
flavor="${flavor}-iphonesimulator"
fi
export GYP_DEFINES="OS=ios target_arch=${target_arch} use_objc_h264=1 \
clang_xcode=1 ios_override_visibility=1"
export GYP_GENERATORS="ninja"
export GYP_GENERATOR_FLAGS="output_dir=${ninja_output_dir}"
popd
# GYP generation requires relative path for some reason.
pushd ${WEBRTC_BASE_DIR}
webrtc/build/gyp_webrtc webrtc/build/ios/merge_ios_libs.gyp
popd
if [[ ${USE_LEGACY_API} -eq 1 ]]; then
ninja -C ${ninja_output_dir}/${flavor} libjingle_peerconnection_objc_no_op
else
ninja -C ${ninja_output_dir}/${flavor} webrtc_api_objc_no_op
fi
mkdir -p ${library_output_dir}
for f in ${ninja_output_dir}/${flavor}/*.a
do
ln -sf "${f}" "${library_output_dir}/$(basename ${f})"
done
}
function clean_artifacts {
local output_dir=$1
if [[ -d ${output_dir} ]]; then
rm -r ${output_dir}
fi
}
function usage {
echo "WebRTC iOS FAT libraries build script."
echo "Each architecture is compiled separately before being merged together."
echo "By default, the fat libraries will be created in out_ios_libs/fat_libs."
echo "The headers will be copied to out_ios_libs/include."
echo "Usage: $0 [-h] [-c] [-o]"
echo " -h Print this help."
echo " -c Removes generated build output."
echo " -o Specifies a directory to output build artifacts to."
echo " If specified together with -c, deletes the dir."
exit 0
}
check_preconditions
# Set default arguments.
# Output directory for build artifacts.
OUTPUT_DIR=${WEBRTC_BASE_DIR}/out_ios_libs
# Flag to build the new or legacy version of the API.
USE_LEGACY_API=0
PERFORM_CLEAN=0
# Parse arguments.
while getopts "hco:" opt; do
case "${opt}" in
h) usage;;
c) PERFORM_CLEAN=1;;
o) OUTPUT_DIR="${OPTARG}";;
*)
usage
exit 1
;;
esac
done
if [[ ${PERFORM_CLEAN} -ne 0 ]]; then
clean_artifacts ${OUTPUT_DIR}
exit 0
fi
# Build all the common architectures.
archs=( "arm" "arm64" "ia32" "x64" )
for arch in "${archs[@]}"
do
echo "Building WebRTC arch: ${arch}"
build_webrtc ${OUTPUT_DIR} "Profile" $arch
done
# Export header files.
${EXPORT_HEADERS_SCRIPT} ${WEBRTC_BASE_DIR}/${LIBRARY_BASE_DIR} \
${USE_LEGACY_API}
${EXPORT_HEADERS_SCRIPT} ${OUTPUT_DIR} ${USE_LEGACY_API}
# Merge the libraries together.
${MERGE_SCRIPT} ${WEBRTC_BASE_DIR}/${LIBRARY_BASE_DIR}
${MERGE_SCRIPT} ${OUTPUT_DIR}

View File

@ -11,12 +11,12 @@
"""Script for exporting iOS header files."""
import errno
import optparse
import os
import re
import shutil
import sys
import argparse
import os
import shutil
LEGACY_HEADER_DIRS = ['talk/app/webrtc/objc/public', 'webrtc/base/objc/']
HEADER_DIRS = ['webrtc/api/objc/', 'webrtc/base/objc/',
'webrtc/modules/audio_device/ios/objc']
@ -26,13 +26,15 @@ HEADER_INCLUDES = []
# Individual header files that should not be exported.
LEGACY_HEADER_EXCLUDES = ['talk/app/webrtc/objc/public/RTCNSGLVideoView.h']
HEADER_EXCLUDES = [
'webrtc/api/objc/avfoundationvideocapturer.h',
'webrtc/api/objc/RTCNSGLVideoView.h',
'webrtc/base/objc/NSString+StdString.h',
'webrtc/base/objc/RTCUIApplication.h',
'webrtc/modules/audio_device/ios/objc/RTCAudioSessionDelegateAdapter.h',
'webrtc/api/objc/avfoundationvideocapturer.h',
'webrtc/api/objc/RTCNSGLVideoView.h',
'webrtc/api/objc/RTCVideoRendererAdapter.h',
'webrtc/base/objc/NSString+StdString.h',
'webrtc/base/objc/RTCUIApplication.h',
'webrtc/modules/audio_device/ios/objc/RTCAudioSessionDelegateAdapter.h',
]
def ExportHeaders(include_base_dir, use_legacy_headers):
"""Exports iOS header files.
@ -41,12 +43,13 @@ def ExportHeaders(include_base_dir, use_legacy_headers):
Args:
include_base_dir: directory where the include directory should be created
use_legacy_headers: whether or not to export the old headers
"""
include_dir_name = 'include'
include_path = os.path.join(include_base_dir, include_dir_name)
# Remove existing directory first in case files change.
if (os.path.exists(include_path)):
if os.path.exists(include_path):
shutil.rmtree(include_path)
script_path = sys.path[0]
@ -82,14 +85,21 @@ def ExportHeaders(include_base_dir, use_legacy_headers):
new_path = os.path.join(include_path, header_path)
shutil.copy(current_path, new_path)
def Main():
parser = optparse.OptionParser()
_, args = parser.parse_args()
if len(args) != 2:
parser.error('Error: Exactly 2 arguments required.')
include_base_dir = args[0]
use_legacy_headers = False if int(args[1]) == 0 else True
ExportHeaders(include_base_dir, use_legacy_headers)
parser_description = 'Export WebRTC ObjC API headers.'
parser = argparse.ArgumentParser(description=parser_description)
parser.add_argument('output_dir',
help='Output directory to write headers to.',
type=str)
parser.add_argument('use_legacy_headers',
help='Reads the old headers instead of the current ones.',
type=int)
args = parser.parse_args()
use_legacy_headers = args.use_legacy_headers != 0
output_dir = args.output_dir
ExportHeaders(output_dir, use_legacy_headers)
if __name__ == '__main__':
sys.exit(Main())

View File

@ -1,46 +0,0 @@
#!/usr/bin/python
# Copyright 2016 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.
"""Script for flattening iOS header structure."""
import optparse
import os
import shutil
import sys
def FlattenHeaders(lib_base_dir, framework_base_dir):
"""Flattens iOS header file directory structure."""
include_dir = 'include'
unflattened_include_dir_path = os.path.join(lib_base_dir, include_dir)
flattened_include_dir_path = os.path.join(framework_base_dir, include_dir)
# Create output directories.
if not os.path.exists(framework_base_dir):
os.mkdir(framework_base_dir)
if not os.path.exists(flattened_include_dir_path):
os.mkdir(flattened_include_dir_path)
for dirpath, _, filenames in os.walk(unflattened_include_dir_path):
for filename in filenames:
current_path = os.path.join(dirpath, filename)
new_path = os.path.join(flattened_include_dir_path, filename)
shutil.copy(current_path, new_path)
def Main():
parser = optparse.OptionParser()
_, args = parser.parse_args()
if len(args) != 2:
parser.error('Error: Exactly 2 arguments required.')
lib_base_dir = args[0]
framework_base_dir = args[1]
FlattenHeaders(lib_base_dir, framework_base_dir)
if __name__ == '__main__':
sys.exit(Main())

View File

@ -0,0 +1,49 @@
#!/usr/bin/python
# Copyright 2016 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.
"""Script for flattening iOS header structure."""
import sys
import argparse
import os
import shutil
def FlattenHeaders(input_dir, output_dir):
"""Flattens iOS header file directory structure."""
# Create output directories.
if not os.path.exists(output_dir):
os.mkdir(output_dir)
for dirpath, _, filenames in os.walk(input_dir):
for filename in filenames:
current_path = os.path.join(dirpath, filename)
new_path = os.path.join(output_dir, filename)
shutil.copy(current_path, new_path)
def Main():
parser_description = 'Flatten WebRTC ObjC API headers.'
parser = argparse.ArgumentParser(description=parser_description)
parser.add_argument('input_dir',
help='Output directory to write headers to.',
type=str)
parser.add_argument('output_dir',
help='Input directory to read headers from.',
type=str)
args = parser.parse_args()
input_dir = args.input_dir
output_dir = args.output_dir
FlattenHeaders(input_dir, output_dir)
if __name__ == '__main__':
sys.exit(Main())

View File

@ -10,11 +10,15 @@
"""Script for merging generated iOS libraries."""
import optparse
import sys
import argparse
import os
import re
import subprocess
import sys
# Valid arch subdir names.
VALID_ARCHS = ['arm_libs', 'arm64_libs', 'ia32_libs', 'x64_libs']
def MergeLibs(lib_base_dir):
@ -29,24 +33,22 @@ def MergeLibs(lib_base_dir):
Returns:
Exit code of libtool.
"""
include_dir_name = 'include'
output_dir_name = 'lib'
output_dir_name = 'fat_libs'
archs = [arch for arch in os.listdir(lib_base_dir)
if arch[:1] != '.' and arch != output_dir_name
and arch != include_dir_name]
if arch in VALID_ARCHS]
# For each arch, find (library name, libary path) for arch. We will merge
# all libraries with the same name.
libs = {}
for dirpath, _, filenames in os.walk(lib_base_dir):
if dirpath.endswith(output_dir_name):
for lib_dir in [os.path.join(lib_base_dir, arch) for arch in VALID_ARCHS]:
if not os.path.exists(lib_dir):
continue
for filename in filenames:
if not filename.endswith('.a'):
continue
entry = libs.get(filename, [])
entry.append(os.path.join(dirpath, filename))
libs[filename] = entry
for dirpath, _, filenames in os.walk(lib_dir):
for filename in filenames:
if not filename.endswith('.a'):
continue
entry = libs.get(filename, [])
entry.append(os.path.join(dirpath, filename))
libs[filename] = entry
orphaned_libs = {}
valid_libs = {}
for library, paths in libs.items():
@ -69,7 +71,6 @@ def MergeLibs(lib_base_dir):
if not found:
base_prefix = library[:-2].split('_')[0]
for valid_lib, valid_paths in valid_libs.items():
prefix = '_'.join(components)
if valid_lib[:len(base_prefix)] == base_prefix:
valid_paths.extend(paths)
found = True
@ -89,6 +90,7 @@ def MergeLibs(lib_base_dir):
libtool_re = re.compile(r'^.*libtool:.*file: .* has no symbols$')
# Merge libraries using libtool.
libtool_returncode = 0
for library, paths in valid_libs.items():
cmd_list = ['libtool', '-static', '-v', '-o',
os.path.join(output_dir_path, library)] + paths
@ -99,22 +101,23 @@ def MergeLibs(lib_base_dir):
print >>sys.stderr, line
# Unconditionally touch the output .a file on the command line if present
# and the command succeeded. A bit hacky.
if not libtoolout.returncode:
libtool_returncode = libtoolout.returncode
if not libtool_returncode:
for i in range(len(cmd_list) - 1):
if cmd_list[i] == '-o' and cmd_list[i+1].endswith('.a'):
os.utime(cmd_list[i+1], None)
break
else:
return libtoolout.returncode
return libtoolout.returncode
return libtool_returncode
def Main():
parser = optparse.OptionParser()
_, args = parser.parse_args()
if len(args) != 1:
parser.error('Error: Exactly 1 argument required.')
lib_base_dir = args[0]
parser_description = 'Merge WebRTC libraries.'
parser = argparse.ArgumentParser(description=parser_description)
parser.add_argument('lib_base_dir',
help='Directory with built libraries. ',
type=str)
args = parser.parse_args()
lib_base_dir = args.lib_base_dir
MergeLibs(lib_base_dir)
if __name__ == '__main__':