Fix WebRTC API framework build.

BUG=webrtc:5737

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

Cr-Original-Commit-Position: refs/heads/master@{#12391}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: 5209d671f2597e88004ad7acd097294d9460ce7f
diff --git a/api/objc/RTCAVFoundationVideoSource.h b/api/objc/RTCAVFoundationVideoSource.h
index 6d224d3..8c0232a 100644
--- a/api/objc/RTCAVFoundationVideoSource.h
+++ b/api/objc/RTCAVFoundationVideoSource.h
@@ -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;
diff --git a/api/objc/RTCAudioTrack.h b/api/objc/RTCAudioTrack.h
index c33a7b4..b5ea649 100644
--- a/api/objc/RTCAudioTrack.h
+++ b/api/objc/RTCAudioTrack.h
@@ -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
 
diff --git a/api/objc/RTCEAGLVideoView.h b/api/objc/RTCEAGLVideoView.h
index 1a57df7..cd39881 100644
--- a/api/objc/RTCEAGLVideoView.h
+++ b/api/objc/RTCEAGLVideoView.h
@@ -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
 
diff --git a/api/objc/RTCRtpSender.h b/api/objc/RTCRtpSender.h
index c7108fa..20d1db9 100644
--- a/api/objc/RTCRtpSender.h
+++ b/api/objc/RTCRtpSender.h
@@ -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
 
diff --git a/api/objc/RTCVideoTrack.h b/api/objc/RTCVideoTrack.h
index 1d88376..a7b6f0c 100644
--- a/api/objc/RTCVideoTrack.h
+++ b/api/objc/RTCVideoTrack.h
@@ -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
 
diff --git a/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj b/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj
index 209dbe5..dcc09c1 100644
--- a/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj
+++ b/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj
@@ -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)";
diff --git a/build/ios/SDK/Framework/WebRTC/WebRTC.h b/build/ios/SDK/Framework/WebRTC/WebRTC.h
index 9f2d845..df0e00c 100644
--- a/build/ios/SDK/Framework/WebRTC/WebRTC.h
+++ b/build/ios/SDK/Framework/WebRTC/WebRTC.h
@@ -16,8 +16,8 @@
 //! 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 @@
 #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>
diff --git a/build/ios/build_ios_framework.sh b/build/ios/build_ios_framework.sh
index 35ec552..b5bb76e 100755
--- a/build/ios/build_ios_framework.sh
+++ b/build/ios/build_ios_framework.sh
@@ -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 @@
   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}
diff --git a/build/ios/build_ios_libs.sh b/build/ios/build_ios_libs.sh
index 5d6157a..a01d128 100755
--- a/build/ios/build_ios_libs.sh
+++ b/build/ios/build_ios_libs.sh
@@ -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
-  mkdir -p ${LIBRARY_BASE_DIR}/${TARGET_ARCH}
-  mv ${OUTPUT_DIR}/${FLAVOR}/*.a ${LIBRARY_BASE_DIR}/${TARGET_ARCH}
+
+  # 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
 }
 
-# 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}
diff --git a/build/ios/export_headers b/build/ios/export_headers.py
similarity index 72%
rename from build/ios/export_headers
rename to build/ios/export_headers.py
index 84e738c..4be39fb 100755
--- a/build/ios/export_headers
+++ b/build/ios/export_headers.py
@@ -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 @@
 # 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 @@
 
   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 @@
     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())
diff --git a/build/ios/flatten_ios_headers b/build/ios/flatten_ios_headers
deleted file mode 100755
index 67c06ac..0000000
--- a/build/ios/flatten_ios_headers
+++ /dev/null
@@ -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())
diff --git a/build/ios/flatten_ios_headers.py b/build/ios/flatten_ios_headers.py
new file mode 100755
index 0000000..ae58fc8
--- /dev/null
+++ b/build/ios/flatten_ios_headers.py
@@ -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())
diff --git a/build/ios/merge_ios_libs b/build/ios/merge_ios_libs.py
similarity index 75%
rename from build/ios/merge_ios_libs
rename to build/ios/merge_ios_libs.py
index d96d5e3..651024e 100755
--- a/build/ios/merge_ios_libs
+++ b/build/ios/merge_ios_libs.py
@@ -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 @@
   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 @@
     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 @@
   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 @@
         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__':