Webrtc 媒体流没有 SDP/TLS 也没有 DTLS

goa*_*erd 5 dtls webrtc

我有一个应用程序可以在 iOS 中通过 WebRTC 接听电话,当使用浏览器调用时工作正常,但是当使用 Android 应用程序调用时我无法设置远程 sdp,并出现错误:使用 SDP 调用而无需 DTLS 指纹。搜索后我发现从android发送的sdp没有DTLS参数:a = setup ...,a = Fingerprint ....并且流媒体只有RTP / AVPF,如下所示。你能帮我解决这个问题吗?谢谢!注意:Android与android之间的通话是正常的。

m=video 9 RTP/AVPF 96 97 98 99 100 101 127 123 125
Run Code Online (Sandbox Code Playgroud)

goa*_*erd 8

最后我找到了答案,因为在android应用程序中有一个设置禁用对等连接工厂选项中的加密会导致这个错误,所以我将disableEncryption更改为false并且一切正常。

.setOptions(PeerConnectionFactory.Options().apply {
                disableEncryption = false
                disableNetworkMonitor = true
            })
Run Code Online (Sandbox Code Playgroud)