如何解决WebRTC音频仅在语音上激活
我正在通过WebRTC MediaStream从getUserMedia发送音频。我想发送所有类型的音频数据,而不仅仅是声音。我的问题是,即使麦克风拾取了一些背景噪音,如果没有声音,音频也会中断。我认为问题出在创建商品时与voiceActivityDetection参数有关,但是即使禁用它,问题仍然存在。我应该如何在不进行语音处理的情况下通过MediaStream发送本质上原始的音频数据?
解决方法
不幸的是,在设计这些API时,默认情况下它们是在启用了许多处理的情况下构建的。幸运的是,可以根据您的getUserMedia
音频限制将其禁用:
autoGainControl: false,echoCancellation: false,noiseSuppression: false
这将大大改善您的音频质量。但是请注意,整个WebRTC堆栈仍会影响您的音频。 WebRTC呼叫针对实时语音通信进行了优化。音频的速度会不断调整,以保持尽可能实时。经常会添加舒适噪音(可以通过调整SDP来禁用)。音频比特率通常设置得很低(也可以通过SDP进行调整)。如果音频质量对您来说很重要(例如音乐),则WebRTC可能不是最佳选择。请考虑使用MediaRecorder。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。