Ошибка с входом микрофона Клиент ANTMedia iOS (2 клиента используются для publi sh и воспроизведения) - PullRequest
0 голосов
/ 08 мая 2020

При реализации ANTMediaSDK в приложении iOS я столкнулся с проблемой с входом микрофона. Я использую два клиента ANTMediaSDK в одном контроллере. Один клиент ANTMediaSDK принадлежит контроллеру, а другой принадлежит подклассу UIView изображение в картинке, используемому в контроллере.

Если это известная проблема, предложите альтернативу, с помощью которой я могу реализовать это поведение в моем применение. У info.plist есть необходимые права доступа для микрофона.

Я пробовал ту же реализацию в демонстрационном приложении ANTMediaSDK, где я использовал код демонстрационного проекта, чтобы реализовать такое поведение, но и там он не работает. "-> AntMediaSDK: Команда: takeConfiguration" "-> AntMediaSDK: ---> iceConnectionChanged: 1" "-> AntMediaSDK: Полученное сообщение: {\" кандидат \ ": \" кандидат: 488634219 1 udp 2122260223 10.0. 1.115 49588 typ host generation 0 ufrag YoTl network-id 1 network-cost 50 \ ", \" streamId \ ": \" SWAT \ ", \" label \ ": 0, \" id \ ": \" audio \ " , \ "command \": \ "takeCandidate \"} "" -> AntMediaSDK: Command: takeCandidate "" -> AntMediaSDK: Получите сообщение: {\ "кандидат \": \ "кандидат: 4265505159 1 udp 1686052607 34.229. 201.54 49588 typ srflx raddr 10.0.1.115 rport 49588 поколение 0 ufrag YoTl network-id 1 network-cost 50 \ ", \" streamId \ ": \" SWAT \ ", \" label \ ": 0, \" id \ " : \ "audio \", \ "command \": \ "takeCandidate \"} "" -> AntMediaSDK: Command: takeCandidate "" -> AntMediaSDK: Получите сообщение: {\ "кандидат \": \ "кандидат: 1402735515 1 tcp 1518280447 10.0.1.115 37880 typ host tcptype passive generation 0 ufrag YoTl network-id 1 network-cost 50 \ ", \" streamId \ ": \" SWAT \ ", \" label \ ": 0, \" id \ ": \" аудио \ ", \" команда \ ": \" takeCandidate \ "}" "-> AntMedi aSDK: Команда: takeCandidate "" -> AntMediaSDK: ---> iceConnectionChanged: 2 "" -> AntMediaSDK: Получение сообщения: {\ "streamId \": \ "SWAT \", \ "определение \": \ " publish_started \ ", \" command \ ": \" notification \ "}" "-> AntMediaSDK: Command: notification" "-> AntMediaSDK: Publi sh запущен: Пусть go" Это log, когда я пытаюсь опубликовать sh из своего приложения.

Код имеет минимальные изменения по сравнению с демонстрационным приложением для publi sh и play:

self.client = AntMediaClient.init()
self.client.delegate = self
self.client.setDebug(true)
self.client.setOptions(url: self.clientUrl, streamId: self.clientStreamId, token: self.clientToken, mode: AntMediaClientMode.play)
self.client.setRemoteView(remoteContainer: previewView)
self.client.start()

Код для публикации:

self.client?.delegate = self
self.client?.setDebug(true)
self.client?.setOptions(url: self.clientUrl, streamId: self.clientStreamId ?? "", token: "", mode: .publish)
self.client?.setCameraPosition(position: .front)
self.client?.speakerOn()
self.client?.setScaleMode(mode: .scaleAspectFit)
self.client?.setTargetResolution(width: 120, height: 200)
self.client?.setLocalView(container: self)
self.client?.configureAudioSession()

StreamId в обоих случаях разный.

...