1

我有几个 1080p 视频流。我希望能够将这些流中的任何一个流式传输到浏览器。这要求我转码为更小的分辨率和 flv 格式或 ogg/webm 格式。我使用以下命令行在 beagle bone black 上使用 vlc 进行了尝试。

cvlc 00080.MTS --sout "#transcode{vcodec=FLV1,acodec=mp3,vb=200,deinterlace,ab=32,width=720,height=480}:std{access=http,mux=ffmpeg{mux=flv},dst=/stream.flv,caching=3000}"

这给了我以下错误

[h264 @ 0xb547c3e0] reference picture missing during reorder
[h264 @ 0xb547c3e0] Missing reference picture

我相信这是因为处理器太慢且无法处理 1080p。因为我用 480p 视频尝试了同样的事情,我没有得到这样的错误。

我的问题是 - 有没有其他方法可以即时转码为更小的分辨率,以便可以流式传输或通过 HTML5 视频查看。我尝试对所有流进行预转码,但我花了 4 天时间,它仍然没有完成对我拥有的所有视频的转码 :) 所以这可能不是一个选择。在此先感谢您的时间。

4

1 回答 1

1

为了使用 html5 播放器,您唯一的选择是ogg 和 webm(或 mp4,但 vlc 不支持)

流式传输到 WEBM

cvlc \
v4l2:///dev/video0 \
--sout '#transcode{vcodec=VP80,vb=1000}:std{access=http{mime=video/webm},mux=webm,dst=:8080/cam1}' \
-vvv

笔记:

180% - 250% CPU 使用率(在 4 核 / 8 线程 i7-4770 上)

流式传输到 OGG

cvlc \
v4l2:///dev/video0 \
--sout '#transcode{vcodec=theo,vb=2000}:std{access=http{mime=video/ogg},mux=ogg,dst=:8080/cam1}' \
-vvv

笔记

  • 30% 的 CPU 使用率
  • 质量比 webm 差(即使比特率是 2xWebM 比特率)
于 2014-03-19T18:44:43.573 回答