我有VLC streming服务器,我开始使用两个流:
vlc -vvv -d http://*camera_adress* --sout '#transcode{vcodec=theo,vb=800,acodec=vorb,ab=128}:standard{access=http,mux=ogg,dst=*server_name*:20000}'
vlc -vvv -d http://*camera_adress* --sout '#standard{access=http,mux=mpjpeg,dst=*server_name*:21000}'
1)带有HTML5的Ogg工作正常,我从视频标签接收流。
2)Mjpg在手机上工作正常,但我不知道如何在html5中获取MJPG帧。我尝试使用http://wiki.ros.org/mjpegcanvasjs/Tutorials/CreatingASingleStreamCanvas中的JavaScript,但它不起作用。 VLC Media Player接收流,因此这不是服务器或流问题。
任何帮助?
答案 0 :(得分:3)
好的,我明白了。最好像这样开始流:
vlc -d -vvv http://camera_ip/mjpg/video.mjpg --no-audio --sout '#transcode{vcodec=MJPG,venc=ffmpeg{strict=1}}:standard{access=http{mime=multipart/x-mixed-replace;boundary=--7b3cc56e5f51db803f790dad720ed50a},mux=mpjpeg,dst=server_name:port}' &
然后你可以使用简单的标签
将此流作为HTML5中的普通jpg<img src>
答案 1 :(得分:0)
可接受的答案仍然可以,但是今天,如果输出文件名的扩展名为mpjpeg
,则不再需要手动进行MIME类型规范:
vlc -I dummy "file.mp4" --no-audio --sout=#transcode{vcodec=MJPG,height=720,fps=4,vb=800}:http{mux=mpjpeg,dst=:8080/video.mpjpeg}