菜鸟教程小白 发表于 2022-12-11 20:30:36

android - 了解如何在 android/Iphone 之间为 offer/answer (webrtc) 生成正确的 sdp


                                            <p><p>当信号在 Iphone 和 android 手机之间时,我很难理解正确的方法来做出正确的报价答案。由于不同的编解码器 Iphone setRemoteDescription 失败。众所周知,android 不接受 H264。 </p>

<blockquote>
<p>(Failed to set remote video description send parameters)</p>
</blockquote>

<p>android/android 之间都可以正常工作,因为两部手机都有相同的 VP8/9 编解码器。但在我的情况下,IOS 仅使用 H264 编解码器发送到 android sdp 报价。看来这就是问题所在。尽管 android 正在设置 remotedescription 并且在没有 VP8/9 编解码器信息的情况下使用 sdp 创建答案。这个答案 sdp 正在将 Iphone 设置为上述错误。所以我问为什么在 android answer sdp 不符合 VP8/9 或任何编解码器。
您可以在此问题中查看优惠和回答 sdps (
<a href="https://stackoverflow.com/questions/52019677/failed-to-set-remote-video-description-send-parameters-iphone-android" rel="noreferrer noopener nofollow">offer and answer sdp</a> )。
所以我尝试按照以下方式初始化 PeerconnectionFactory</p>

<pre><code>    let decoderFactory = RTCDefaultVideoDecoderFactory.init()
    let encoderFactory = RTCDefaultVideoEncoderFactory.init()
    let videoCodedInfo = RTCVideoCodecInfo.init(name: kRTCVideoCodecVp8Name )
    encoderFactory.preferredCodec = videoCodedInfo      
    let connectionFactory = RTCPeerConnectionFactory.init(encoderFactory: encoderFactory, decoderFactory: decoderFactory)
</code></pre>

<p>但即使我使用这样的初始化 sdp 提供和答案也不会改变。那么问题出在哪里以及如何为 android/Ios 创建正确的 sdp,这样 setremotedescription 就不会显示错误。</p>

<p>我从 2015 年开始使用 libjingle 的 android 应用,从 2018 年开始使用 IOS 应用 GoogleWebRTC pod。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>你可以试试</p>

<pre><code>let decoderFactory = RTCDefaultVideoDecoderFactory()
let encoderFactory = RTCDefaultVideoEncoderFactory()
factory = RTCPeerConnectionFactory(encoderFactory: encoderFactory, decoderFactory: decoderFactory)
</code></pre>

<p>我使用 <a href="https://cocoapods.org/pods/GoogleWebRTC" rel="noreferrer noopener nofollow">https://cocoapods.org/pods/GoogleWebRTC</a>在IOS中。
当使用 Android 4.x 通话时,这对我有用,视频类型为 VP8,而使用 IOS 视频通话时为 H264。
期待你</p></p>
                                   
                                                <p style="font-size: 20px;">关于android - 了解如何在 android/Iphone 之间为 offer/answer (webrtc) 生成正确的 sdp,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/52121715/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/52121715/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: android - 了解如何在 android/Iphone 之间为 offer/answer (webrtc) 生成正确的 sdp