RTCMTLVideoView not supported in iPhone 11 series

1.6k Views Asked by At

I'm working on Video calls using WebRTC. I've used RTCMTLVideoView to render the remote's video in the app. Except iPhone 11 series devices, all other devices were working fine.

  #if arch(arm64) // Using metal (arm64 only)
    remoteRenderer = RTCMTLVideoView(frame: showInView.bounds)
  #endif

I'm checking the issue in iPhone 11 Pro 13.3.1 & iPhone XS 13.2.3 and iPhone 6 12.3. But iPhone 11 alone getting this issue. Do we have any solutions for this Remote Video rendering issue?

2

There are 2 best solutions below

6
On

Great to see I am not going crazy and this really is an issue! Not too sure why your and my posts were downvoted.

I have switched to using an RTCEAGLVideoView instead on my iPhone XS iOS 13.4. This works for local rendering. I cannot get remote rendering to work and am unsure if the problem is with WebRTC or with my implementation. However RTCMTLVideoView is clearly broken.

This week I am hoping to start diving into the WebRTC objective C source code to see if I can find anything.

EDIT: I have filed a bug report with google. Could you (and anyone else having this issue) upvote the bug report so we can get Google on this ASAP? Thanks!

EDIT: Ok so the issue was that the cocoapods version of webrtc has been deprecated and people need to manually build the framework. Then this issue disappears. Good luck everyone!

0
On

Finally, I was able to fix the issue by replacing GoogleWebRTC from Cocoapods and updated with Manual WebRTC.framework.

As per discussion in the WebRTC bug report, GoogleWebRTC from Cocoapods DEPRECATED and no longer updated with new changes.

Use this link to build the manual framework for WebRTC from the latest source and remove your GoogleWebRTC from Pods and add manual WebRTC.framework

Thanks John Paul for your timely help.