我想保持最低 20 FPS 的帧速率。如果网络速度很慢,图像质量就会降低,始终保持 20fps。我不想在分辨率和 FPS 之间进行权衡,我只想要 FPS 恒定或高于 20。我正在尝试为此使用自适应比特率流,但我找不到任何文档或示例。我
我尝试使用 a=quality:1 修改两侧的 SDP 并更改编解码器,但没有成功。视频质量始终恒定,当网络速度较慢时,帧速率会受到影响。我想把它改成相反的,但我不知道该怎么做。
我需要在 SDP 中使用特殊的编码/编解码器或不同的设置吗?
您无法确保最低帧速率。比如网络连接中断,那么帧率自然会降为零。
您可以做的是鼓励发送者降低图像质量,而不是在网络条件变得困难时降低帧速率。在 JavaScript API 中,您可以通过设置轨道的 contentHint 属性来做到这一点:
stream.getVideoTracks().forEach(t => {
t.contentHint = 'motion';
});
请注意,这在 Firefox 上不会做任何有用的事情,但它确实可以在基于 Chromium 的浏览器和 Safari 上可靠地工作。