我正在使用webrtc开发android音频/视频通话客户端 . 客户端支持从纯音频呼叫升级到音频 - 视频呼叫,反之亦然(降级) . 我已经实现了该功能,并想确认我是否遵循正确的路径来执行此操作 . 以下是我要遵循的步骤 . 有人可以验证它们是否正确吗?

  • 从纯音频呼叫升级到音频 - 视频呼叫 .

  • A(提供)呼叫B(应答)以设置纯音频呼叫 .

  • 启动升级 . 停止视频源 .

  • A从PeerConnection中删除以前的媒体流 .

  • A从mediastream中删除了audiotrack .

  • A添加音轨 .

  • 初始化视频约束 .

  • A添加了强制性sdp约束("OfferToReceiveVideo","true") . 以前这被设置为假 .

  • A启用视频 .

  • 将视频轨道添加到媒体流

  • 启动视频源 .

  • A(报价)在冰采集完成后向B(回答)发送新的sdp .

  • B获取sdp作为报价 .

  • B在生成答案之前遵循与上述相同的步骤 .

  • 从音频 - 视频通话降级为仅音频通话 .

  • A(提供)呼叫B(应答)以设置音频 - 视频呼叫 .

  • A启动降级 . 停止视频源 .

  • A从PeerConnection中删除以前的媒体流 .

  • A从mediastream中删除了audiotrack .

  • A添加音轨 .

  • A添加强制性sdp约束("OfferToReceiveVideo","false") . 以前这是真的 .

  • A(报价)在冰采集完成后向B(回答)发送新的sdp .

  • B获取sdp作为报价 .

  • B在生成答案之前遵循与上述相同的步骤 .

如果我遗失某些东西或做一些不必要的事情,请告诉我!