4

我想在 Linux 操作系统下将来自 IP 摄像机 ( http://xx.yy.zz.tt:8080/video.cgi ) 的 MJPEG 流转码为 FLV 或 MP4 流,以便用户可以使用基于 Web 的 Flash 播放文件Flowplayer等播放器。

我为此目的发现了 VLC,但我无法弄清楚确切的命令行字符串。我还需要 HTTP 身份验证功能,因为 IP 摄像机访问受密码保护。

我也对任何非 VLC 解决方案(如果有的话)感兴趣(ffmpeg?)。

4

3 回答 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/}

http://forum.videolan.org/viewtopic.php?f=14&t=80722

也可以使用 FFmpeg 与http://user:password@host:port/address之类的 url

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

于 2010-08-01T02:43:57.897 回答
2

我过去在使用 IP 摄像机时使用过 Xuggler,他们使用 ffmpeg 进行转码工作,所以这应该是可能的。如果我是你,我会使用这样的命令行来检查它是否受支持。

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

于 2011-08-25T14:28:23.880 回答
1

把用户和通行证嵌入到同一个链接中,而不是http://xx.yy.zz.tt:8080/video.cgi使用这个http://user:pass@xx.yy.zz.tt:8080/video.cgi

于 2013-03-14T21:09:55.073 回答