WebRT C Swift RemoteStream не отображает - PullRequest
0 голосов
/ 16 июня 2020

Я создал RTCMTLVideoView через Outlet.

@IBOutlet weak var otherEndVideoHolderView : RTCMTLVideoView!

И собрал RTCMediaStream из делегата RTCPeerConnectionDelegate

    func peerConnection(_ peerConnection: RTCPeerConnection, didAdd stream: RTCMediaStream) {
    debugPrint("peerConnection did add stream")

    if let video = stream.videoTracks.first{
        self.remoteVideoTrack = video
        self.delegate?.webRTCClient(self, didReceiveRemoteRender: video)
    }
}

После предложения -> Ответ -> и статус однорангового узла к подключен . Рендерится только локальное видео. Удаленное видео не отображается. enter image description here

Ответы [ 2 ]

1 голос
/ 16 июня 2020

Недавно я работал над Webrt c и добавлял удаленный поток в ячейку коллекции. Вы можете использовать мой код. Если у вас возникнут другие проблемы, дайте мне знать, я тоже помогу.

let stream = VideoCallViewController.arrRemoteStreams[indexPath.row]


    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "RmoteVideoCollectionViewCell", for: indexPath) as! RmoteVideoCollectionViewCell

    cell.contentView.subviews.forEach({ $0.removeFromSuperview() })

    #if arch(arm64)
    // Using metal (arm64 only)
    let remoteRenderer = RTCMTLVideoView(frame:  CGRect.init(x: 0, y: 0, width: 150, height: 150))
    remoteRenderer.videoContentMode = .scaleAspectFit

    #else
    // Using OpenGLES for the rest
    let remoteRenderer = RTCEAGLVideoView(frame:  CGRect.init(x: 0, y: 0, width: 150, height: 150))
    #endif



     //set stream to cell
    stream.videoTracks.first?.add(remoteRenderer)

    //adding stream to cellview
    cell.contentView.addSubview(remoteRenderer)
0 голосов
/ 29 июня 2020

Я думаю, что есть проблема с WEBRT C для iPhone X и 11s. Я отправил отчет об ошибке сюда . Если в отчете об ошибке описывается ваша проблема, обязательно запустите ее, чтобы Google мог ее решить. Спасибо!

...