我正在尝试从连接到无头 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
然而,尽管尝试了各种 vsync 和 async 选项,我还是可以得到不同步的音频,或者 Benny Hill 风格的快进视频和匹配的快速音频。我也无法让这个实际与 ffserver 一起工作(通过用相关的提要文件名替换 test.webm 路径和文件名)。
目标是获得一个实时的音频+视频源,它可以在现代浏览器中查看,带宽很窄,只使用开源组件。(没有那种 MP3 格式的合法谷壳)
因此,我的问题是:您将如何通过 Linux 使用同步音频从网络摄像头流式传输 webm?你用什么软件?
您是否成功地通过 FFmpeg 从具有同步音频的网络摄像头编码 webm?如果是这样,您发出了什么命令?
是否值得坚持使用 FFmpeg + FFserver,或者是否有其他更合适的命令行工具(例如 VLC,它似乎不太适合编码)?
是否可以从命令行配置诸如 Gstreamer + Flumotion 之类的东西?如果是这样,我在哪里可以找到命令行文档,因为flumotion doc对命令行细节相当了解?
提前致谢!