5

我正在尝试将网络摄像头中的视频编码为 VP8 流。使用 Chrome 从我的网络摄像头发送 WebRTC 流看起来不错,并且不会使用大量 CPU 资源。当我尝试使用 FFMPEG 将我的网络摄像头流转码为 VP8 (webm) 时,它非常非常慢。

在 OS XI 上,使用以下 FFMPEG 选项生成 VP8 webm 文件。来源是 720p Facetime 网络摄像头。它耗尽了我的 CPU 使用率(2011 年末核心 i7 MBP)并且质量不是很好:

ffmpeg -f avfoundation -i 'default' -y -qmin 11 -qmax 45 -b:v 500k -cpu-used 0 -deadline realtime test.webm

WebRTC 使用哪种协议,Chrome 怎么能这么快?我的印象是 VP8 不能在硬件中完成。使用现代英特尔 CPU,您可以使用 QuickSync,但我猜这只是 H.264,FFMPEG 不支持。

4

1 回答 1

2

这其实很正常。目前WebM 项目仍然相对较小,唯一的主要采用者是谷歌的 YouTube 流媒体服务。

WebM 编码 [使用 VP8 编解码器]非常慢,但不知何故,较新的 VP9 编解码器在消费类机器上更加困难。对于 Google 的大型服务器来说,这似乎不是什么大问题,但 WebM 视频 [其高效压缩] 的主要好处是它对普通用户的影响。

从 WebM 项目网站:

编码 WebM 视频似乎真的很慢。你在做什么呢?

今天,以“最佳质量”模式编码 VP8 是最慢的配置。>使用速度参数设置在 0 和 5 之间的“优质”模式将 >提供一系列速度。我们相信我们可以大幅提升 VP8 的速度,尤其是在您的帮助下。在 2010 年 10 月的“Aylesbury”版本中,我们将整体 VP8 >解码器性能提高了约 28%,并且 >专注于我们下一个指定版本的编码器速度改进。

希望这可以帮助!

于 2015-02-25T03:07:43.667 回答