diff --git a/WebRTCiOSSDK/api/AntMediaClient.swift b/WebRTCiOSSDK/api/AntMediaClient.swift index c72c934..77e606a 100644 --- a/WebRTCiOSSDK/api/AntMediaClient.swift +++ b/WebRTCiOSSDK/api/AntMediaClient.swift @@ -508,10 +508,10 @@ open class AntMediaClient: NSObject, AntMediaClientProtocol { if (self.webRTCClientMap[id] == nil) { AntMediaClient.printf("Has wsClient? (start) : \(String(describing: self.webRTCClientMap[id]))") - self.webRTCClientMap[id] = WebRTCClient.init(remoteVideoView: remoteView, localVideoView: localView, delegate: self, mode: mode != .unspecified ? mode : self.mode , cameraPosition: self.cameraPosition, targetWidth: self.targetWidth, targetHeight: self.targetHeight, videoEnabled: self.videoEnable, enableDataChannel: self.enableDataChannel, useExternalCameraSource: self.useExternalCameraSource, externalAudio: self.externalAudioEnabled, externalVideoCapture: self.externalVideoCapture, cameraSourceFPS: self.cameraSourceFPS, streamId:id); + self.webRTCClientMap[id] = WebRTCClient.init(remoteVideoView: remoteView, localVideoView: localView, delegate: self, mode: mode != .unspecified ? mode : self.mode , cameraPosition: self.cameraPosition, targetWidth: self.targetWidth, targetHeight: self.targetHeight, videoEnabled: self.videoEnable, enableDataChannel: self.enableDataChannel, useExternalCameraSource: self.useExternalCameraSource, externalAudio: self.externalAudioEnabled, externalVideoCapture: self.externalVideoCapture, cameraSourceFPS: self.cameraSourceFPS, streamId:id, + degradationPreference: self.degradationPreference); self.webRTCClientMap[id]?.setToken(token) - self.webRTCClientMap[id]?.setDegradationPreference(degradationPreference: self.degradationPreference); AntMediaClient.rtcAudioSession.add(self); } diff --git a/WebRTCiOSSDK/api/webrtc/WebRTCClient.swift b/WebRTCiOSSDK/api/webrtc/WebRTCClient.swift index 689783a..a866a1c 100644 --- a/WebRTCiOSSDK/api/webrtc/WebRTCClient.swift +++ b/WebRTCiOSSDK/api/webrtc/WebRTCClient.swift @@ -94,7 +94,8 @@ class WebRTCClient: NSObject { mode: mode, cameraPosition: cameraPosition, targetWidth: targetWidth, targetHeight: targetHeight, videoEnabled: true, enableDataChannel:false, useExternalCameraSource: false, streamId: streamId) } - public convenience init(remoteVideoView: RTCVideoRenderer?, localVideoView: RTCVideoRenderer?, delegate: WebRTCClientDelegate, mode: AntMediaClientMode, cameraPosition: AVCaptureDevice.Position, targetWidth: Int, targetHeight: Int, videoEnabled: Bool, enableDataChannel: Bool, useExternalCameraSource: Bool, externalAudio: Bool = false, externalVideoCapture: Bool = false, cameraSourceFPS: Int = 30, streamId: String) { + public convenience init(remoteVideoView: RTCVideoRenderer?, localVideoView: RTCVideoRenderer?, delegate: WebRTCClientDelegate, mode: AntMediaClientMode, cameraPosition: AVCaptureDevice.Position, targetWidth: Int, targetHeight: Int, videoEnabled: Bool, enableDataChannel: Bool, useExternalCameraSource: Bool, externalAudio: Bool = false, externalVideoCapture: Bool = false, cameraSourceFPS: Int = 30, streamId: String, + degradationPreference: RTCDegradationPreference = RTCDegradationPreference.maintainResolution) { self.init(remoteVideoView: remoteVideoView, localVideoView: localVideoView, delegate: delegate, externalAudio: externalAudio) self.cameraPosition = cameraPosition self.targetWidth = targetWidth @@ -105,6 +106,7 @@ class WebRTCClient: NSObject { self.externalVideoCapture = externalVideoCapture; self.cameraSourceFPS = cameraSourceFPS; self.streamId = streamId; + self.degradationPreference = degradationPreference if (mode != .play) { self.addLocalMediaStream()