javascript - 如何在 WebRTC 流中显示每个接收到的帧?
问题描述
我正在研究移动无人机和远程设备之间的 WebRTC 视频流。有时,视频会冻结。我看了一些 webrtc 和视频的统计数据,注意到在冻结期间,收到了一些帧,但视频上没有显示帧。
为了解释,我比较了:
- 关于
video
元素的,webkitdecodedframecount
最后一秒的差异 - 关于Inbound Stream (using
RTCInboundRtpStreamStats
)framesReceived
上一秒的差异
在我录制屏幕的大约 4 秒冻结期间,解码了 0 帧,但收到了大约16帧。
所以我的问题是:
- 为什么接收的帧和显示的帧之间会有这样的差异?
- 如何立即显示收到的帧?
编辑:
- 在冻结开始时,丢失了 4 个数据包。
- 在freeze结束时,流再次运行良好,分辨率较低
解决方案
推荐阅读
- listview - 列表项作为页面对象
- javascript - 无法从 Angular 4 中的 viewChild 元素调用函数
- traefik - 为什么 PathPrefixStrip 在 PathPrefix 不起作用时起作用?
- swift - 扩展 Encodable(或 Codable)的协议不符合它
- django - 如何将 Android Web 应用程序连接到 Android USB 设备上的 Django 开发服务器
- php - Zend setData 方法阻止 Collection::setCount 工作
- python - 向 Django 外键添加多个值
- javascript - 通过 Javascript 收集图层边界数据
- vim - Vim:切换选项卡时显示文件名
- android - Android 应用使用时长和时间戳