【发布时间】:2019-05-01 14:30:34
【问题描述】:
我们正在使用 WebRTC 技术在 Android 和 iOS 应用程序上实现视频通话。
我们也在网页浏览器上实现,成功从chrome调用android,chrome调用iOS。
但是,当我们从 iOS 本地调用到 Android 本地时,视频通话总是在大约 2 分钟后冻结。音频仍在工作,但视频流冻结。
我们非常努力地研究了这个问题,甚至我们尝试按照本文所述 (https://medium.com/@fippo/when-a-browser-update-breaks-your-native-app-for-a-change-3845b30ea185) 修改 Offer & Answer 的 SDP 内容。
我们也认为问题的原因可能是 iOS 的 H264 编解码器,因此我们尝试将 SDP 内容中的 VP9 替换为 H264,如下面的代码,但没有成功。
private String modifySdp(String sdp) {
return sdp.replace("VP9/90000", "H264/90000\r\n"
+ "a=fmtp:101 profile-level-id=42e01f;packetization-mode=1")
.replace("a=rtpmap:100 VP8/90000", "a=rtpmap:100 VP8/90000\r\n"
+"a=fmtp:100 profile-level-id=42e01f;packetization-mode=1");
}
我们需要实现这个视频通话功能,让应用业务可以从iOS调用Android,反之亦然。
我们认为 WebRTC 是非常好的技术,但可能我们对它的规范了解不够。
所以如果您知道任何信息,请帮助我们。
非常感谢您的帮助。
【问题讨论】:
-
这方面有什么更新吗?
标签: android ios webrtc h.264 vp9