DIY Главная Медиа Logo

Конечная сайт для проектирования и создания вашей установке домашнего кинотеатра и Привет-Fi.

0Вставить живой RTSP-поток в веб-страницу

I have recently been work­ing on my smarthome setup and one of the things I’ve been mean­ing to get set up is a tab­let with a touch-screen web inter­face to man­age my smart home. One of the first prob­lems I had to crack was how to stream my cctv feed to a web browser…

Проблема

My CCTV cam­era, как и многие, только обеспечивает поток RTSP. No mod­ern web browsers sup­port RTSP.

Поиск и требования

Google just isn’t what it used to be and it took sev­er­al days of search­ing to find an accept­able solu­tion that met all of my require­ments…

  • I wanted some­thing that would work entirely off­line without any third party serv­ers involved.
  • I wanted some­thing that was com­pletely leg­ally free, идеально открытый исходный код
  • I wanted some­thing that would­n’t transcode the video or audio as this would waste pro­cessing resources

Решение

Я обнаружил, really use­ful guide which explained a way to do this with a bit of JavaS­cript and ffm­peg, both of which were read­ily avail­able for free.

To run ffm­peg I used the fol­low­ing com­mand, which I ran on win­dows as a ser­vice, cre­ated with nssm…
ffmpeg -i rtsp://your_rtsp_ip:port/path/to/file.stream -c:v copy -c:a copy -bufsize 1835k -pix_fmt yuv420p -flags -global_header -hls_time 10 -hls_list_size 6 -hls_wrap 10 -start_number 1 /var/www/html/video.m3u8

To embed the video I down­loaded the fol­low­ing css file and 2 JS файлы

  • HTTPS://vjs.zencdn.net/7.2.3/video-js.css
  • HTTPS://cdnjs.cloudflare.com/ajax/libs/videojs-contrib-hls/5.14.1/videojs-contrib-hls.js
  • HTTPS://vjs.zencdn.net/7.2.3/video.js

Затем я использовал код из руководства (with mod­i­fied paths to loc­al files) вставлять видео, которое работало сразу. ffm­peg is using around 0.2% cpu usage and a few mb of memory on the serv­er that hosts the web­site.

Последнее замечание, incase it mat­ters — I used the win64 stat­ic build of ffm­peg 4.2.2

Пожалуйста, отправьте нам свои мысли, комментируя ниже! Если вы хотите подписаться, пожалуйста, используйте ссылку подписаться на меню в верхнем правом углу. Вы также можете поделиться этим со своими друзьями с помощью социальных связей ниже. ура.

оставьте ответ