我正在尝试从连接到无头 Ubuntu 服务器(运行 Maverick 10.10)的网络摄像头传输视频和音频。我希望能够以 WebM 格式(VP8 视频 + OGG)进行流式传输。带宽有限,因此流必须低于 1Mbps。
我尝试过使用 FFmpeg。我可以使用以下命令从网络摄像头录制 WebM 视频:
ffmpeg -s 640x360 \
-f video4linux2 -i /dev/video0 -isync -vcodec libvpx -vb 768000 -r 10 -vsync 1 \
-f alsa -ac 1 -i hw:1,0 -acodec libvorbis -ab 32000 -ar 11025 \
-f webm /var/www/telemed/test.webm
然而,尽管尝试了各种方式的垂直同步和异步选项,我仍然可以得到不同步的音频,或者 Benny Hill 风格的快进视频和匹配的快速音频。我也无法让它实际与 ffserver 一起工作(通过用相关的提要文件名替换 test.webm 路径和文件名)。
目标是仅使用开源组件,在带宽紧张的情况下,获得可在现代浏览器中查看的实时音频+视频源。 (没有任何 MP3 格式的合法箔条)
因此我的问题是:
您将如何通过 Linux 从网络摄像头流式传输 webm 并使用同步音频?你用什么软件?
您是否成功通过 FFmpeg 从网络摄像头对 webm 进行编码并使用同步音频?如果是这样,您发出了什么命令?
是否值得坚持使用 FFmpeg + FFserver,或者是否还有其他更合适的命令行工具(例如 VLC,它似乎不太适合编码)?
可以从命令行配置类似 Gstreamer + Flumotion 的东西吗?如果是这样,我在哪里可以找到命令行文档,因为 Flumotion 文档对命令行细节的了解相当少?
提前致谢!