转码MJPEG为FLV或MP4

4
我希望能够在Linux操作系统下将来自IP摄像机(http://xx.yy.zz.tt:8080/video.cgi)的MJPEG流转换为FLV或MP4流,以便用户可以使用基于Web的Flash播放器(如Flowplayer)播放文件。 我发现了VLC,但我无法确定确切的命令行字符串。我还需要HTTP身份验证功能,因为IP摄像机访问是受密码保护的。 如果有任何非VLC解决方案也很感兴趣(例如ffmpeg)。
3个回答

2

看起来VLC可以进行HTTP身份验证。 http://www.videolan.org/doc/play-howto/en/ch04.html 我相信它可以输出到flv格式。 通常情况下,我会使用GUI查看参数,然后进行调整。没有什么魔法公式,伙计。

看起来你可以通过类似以下方式将其输出到flv格式:

:sout=#transcode{vcodec=h264,vb=0,scale=0,acodec=mp3,ab=128,channels=2,samplerate=44100}:http{mux=ffmpeg{mux=flv},dst=:8080/}

这里的内容提到,FFmpeg可以使用像http://user:password@host:port/address这样的URL。

参考:https://ffmpeg.zeranoe.com/forum/viewtopic.php?t=1139


2

在处理IP摄像头时,我以前使用过Xuggler,它们使用ffmpeg进行转码工作,因此这应该是可能的。如果我是你,我会使用以下命令行来检查是否支持。

ffmpeg -i http://xx.yy.zz.tt:8080/video.cgi -vcodec flv -qscale 1 -an output.flv

请注意保留HTML标记。


1

将用户名和密码嵌入同一个链接中,而不是使用 http://xx.yy.zz.tt:8080/video.cgi,请使用此链接:http://user:pass@xx.yy.zz.tt:8080/video.cgi


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接