Я выполняю функцию видеовызова в Swift с модулем GoogleWebRT C (1.1.27828). Код работает на iPhone 7 Plus с iOS 13.4, а также на iPad Air 3 с iPad OS 13.4, та же проблема. XCode является версией 11.4 (11E146). ma c ОС - 10.15.4 (19E266).
Все выглядит хорошо, и с удаленным звуком тоже все в порядке; но удаленный вид все еще черный. ниже рассматривается обработчик событий:
func peerConnection(_ peerConnection: RTCPeerConnection, didAdd stream: RTCMediaStream) {
let ac = stream.audioTracks.count
let vc = stream.videoTracks.count
print("\(#function) peer.onaddstream(): # of tracks: A=\(ac) V=\(vc)")
self.remoteVideoTrack = stream.videoTracks.first
print("track: \(String(describing: self.remoteVideoTrack)), view: \(self.remoteVideoView)")
DispatchQueue.main.async {
self.remoteVideoTrack!.add(self.remoteVideoView)
}
}
журнал консоли, как показано ниже.
peerConnection(_:didAdd:) peer.onaddstream(): # of tracks: A=1 V=1
track: Optional(RTCMediaStreamTrack:
video
7879E59A-6313-497B-821F-7D22AC5EF35A
enabled
Live), view: <RTCEAGLVideoView: 0x105d74fc0; frame = (138.667 0; 67.3333 100); autoresize = RM+BM; layer = <CALayer: 0x28023a220>>
И исключений не возникает.
Так почему же вид остается черным, а звук в порядке? Кто-нибудь может помочь? Большое спасибо!