AppRTCMobile iOS: Use video encoder factory to manage codec preference.

List codecs from factory in settings, select by changing order in factory.

Bug: webrtc:7925
Change-Id: If3c45e56713104c88705c67560325d002e6d6700
Reviewed-on: https://webrtc-review.googlesource.com/3720
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20312}
diff --git a/examples/objc/AppRTCMobile/ARDSettingsModel.h b/examples/objc/AppRTCMobile/ARDSettingsModel.h
index 8b2679f..625b533 100644
--- a/examples/objc/AppRTCMobile/ARDSettingsModel.h
+++ b/examples/objc/AppRTCMobile/ARDSettingsModel.h
@@ -10,6 +10,8 @@
 
 #import <Foundation/Foundation.h>
 
+#import "WebRTC/RTCVideoCodec.h"
+
 NS_ASSUME_NONNULL_BEGIN
 
 /**
@@ -51,12 +53,12 @@
 /**
  * Returns array of available video codecs.
  */
-- (NSArray<NSString *> *)availableVideoCodecs;
+- (NSArray<RTCVideoCodecInfo *> *)availableVideoCodecs;
 
 /**
  * Returns current video codec setting from store if present or default (H264) otherwise.
  */
-- (NSString *)currentVideoCodecSettingFromStore;
+- (RTCVideoCodecInfo *)currentVideoCodecSettingFromStore;
 
 /**
  * Stores the provided video codec setting into the store.
@@ -66,7 +68,7 @@
  * @param video codec settings the string to be stored.
  * @return YES/NO depending on success.
  */
-- (BOOL)storeVideoCodecSetting:(NSString *)videoCodec;
+- (BOOL)storeVideoCodecSetting:(RTCVideoCodecInfo *)videoCodec;
 
 /**
  * Returns current max bitrate setting from store if present.