23

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

"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 示例中可以看到,有网络流量,正在下载流,但没有显示任何内容。

4

4 回答 4

18

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

按照此链接查看输出方法/复用器矩阵 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"/>
于 2014-03-19T19:04:52.570 回答
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>
于 2012-07-02T15:36:29.817 回答
1

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

于 2013-06-25T17:11:23.387 回答
1

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

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

更多在这里是一个链接

请注意:仅限视频类型“ogg”!

于 2018-08-11T19:07:59.803 回答