Потоковая передача mp4 с vlc в html-браузер

У меня возникли проблемы с потоковой передачей изображения веб-камеры (без звука) на страницу html. Я использую последнюю версию (v2.0.2 vlc для 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), я могу посмотреть поток, но когда я пытаюсь внедрить его на веб-страницу, я могу видеть ничего! здесь код:

<title>Video Test</title>
 
 
 <video id="video" autoplay="autoplay" width="300px" preload="metadata"> 
 
 Your browser doesn't appear to support the HTML5  element. 
 </video>

Чем я пытаюсь открыть его в браузере, например:

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

Что я вижу в примере на chrome, так это то, что сетевой трафик, поток загружается, но ничего не отображается.

3 ответа

Вы не можете передавать протокол mp4 по протоколу HTTP с помощью VLC

Следуйте этой ссылке, чтобы увидеть матрицу Output/muxer matrix 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:


попробуйте добавить тип видео (type = "video/mp4" ):

<video width="320" height="240" controls="controls">
 
 
 Your browser does not support the video tag.
 </video>


вы сообщаете VLC о потоке в формате TS mux=ts, это ваша проблема, вам нужно mux в mp4

licensed under cc by-sa 3.0 with attribution.