使用vlc将mp4流式传输到html浏览器

问题描述 投票:18回答:4

我有问题将我的网络摄像头图片(没有声音)流式传输到HTML页面。我正在使用最新的(v2.0.2 vlc for windows)进行流式传输,这是命令行:

"c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" -I dummy  dshow:// --dshow-vdev="Logitech QuickCam Chat" --dshow-adev=none --dshow-caching=0 --sout=#transcode{vcodec=h264,vb=1024,channels=1,ab=128,samplerate=44100,width=320}:http{mux=ts,dst=:8080/webcam.mp4} 

当我在另一个vlc播放器(http://127.0.0.1:8080/webcam.mp4)中打开流时,我可以观看流,但是当我尝试将其嵌入网页时,我什么也看不见!这是代码:

<!DOCTYPE html>
<html>
  <head>
    <title>Video Test</title>
  </head>
  <body>
    <video id="video" class="projekktor" autoplay="autoplay" width="300px" preload="metadata">  
      <source src="http://127.0.0.1:8080/webcam.mp4" />
            Your browser doesn't appear to support the HTML5 <code>&lt;video&gt;</code> element.  
    </video>
  </body>
</html>

比我试图在浏览器中打开它:

file:///C:/videostreaming/video.html

我在chrome示例中看到的是,有网络流量,流正在下载,但没有显示。

video-streaming html5-video vlc
4个回答
17
投票

您不能使用VLC通过http协议传输mp4

点击此链接查看输出方法/ muxer矩阵http://www.videolan.org/streaming-features.html

但是,您可以尝试转码为ogg。

试试这个:

"c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" \
-I dummy  dshow:// --dshow-vdev="Logitech QuickCam Chat" \
--dshow-adev=none --dshow-caching=0 \
--sout=#transcode{vcodec=theo,vb=1024,channels=1,ab=128,samplerate=44100,width=320}:http{dst=:8080/webcam.ogg}

并在您的HTML视频标签中:

<source src="http://127.0.0.1:8080/webcam.ogg"/>

3
投票

尝试添加视频类型(type =“video / mp4”):

<video width="320" height="240" controls="controls">
      <source src="movie.mp4" type="video/mp4" />
      <source src="movie.ogg" type="video/ogg" />
      Your browser does not support the video tag.
    </video>

1
投票

你告诉VLC流式传输TS格式mux=ts这是你的问题,你需要在mp4中复用


1
投票

对于直播,您应该使用以下内容

<video id="video" src="http://localhost:8181/stream" type="video/ogg; codecs=theora" autoplay="autoplay"/>

更多在这里是a link

请注意:视频类型只有“ogg”!

© www.soinside.com 2019 - 2024. All rights reserved.