如何使用 PhoneRTC 实现静音?
Posted
技术标签:
【中文标题】如何使用 PhoneRTC 实现静音?【英文标题】:How to implement mute with PhoneRTC? 【发布时间】:2014-12-10 23:59:08 【问题描述】:我设法在我的 Cordova 应用程序中使用 PhoneRTC 创建了一个视频聊天。现在,我想添加一个在本地麦克风输出上切换静音的按钮。
我该怎么做?
【问题讨论】:
【参考方案1】:使用Session.renegotiate。
例如:
session.streams.audio = false;
session.renegotiate();
【讨论】:
【参考方案2】:您不想重新协商以实施静音。
您想要获取音频(可能还有视频)媒体流轨道,并执行 track.enabled = false。这使其静音(音频)或黑色(视频)。
重新协商至少需要几个 RTT 才能完成并且可能会失败(Firefox 还不支持它,需要创建一个新的 PeerConnection 来替换旧的)。
【讨论】:
PhoneRTC(和本机 Java/Objective C WebRTC API)不支持MediaTrack.enabled
属性。
这很不幸,因为这是让它“现在”静音的唯一方法。重新协商不是一种可接受的静音方式;它可以用来(虽然我一般不推荐它)来减少静音期间的带宽使用,或者实现延迟,也许它会静音失败。以上是关于如何使用 PhoneRTC 实现静音?的主要内容,如果未能解决你的问题,请参考以下文章
在 PhoneRTC 中,如何将现有的语音聊天变成视频聊天?
如何在 ionic 平台的 APIRTC 上静音和取消静音视频/音频?