2کسی ویب پیج میں براہ راست آر ٹی ایس پی اسٹریم شامل کریں

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, بہت سے لوگوں کی طرح, صرف آر ٹی ایس پی اسٹریم فراہم کرتا ہے. 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 requirements…

  • 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 جے ایس فائلیں

  • 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 website.

ایک حتمی نوٹ, incase it mat­ters — I used the win64 stat­ic build of ffm­peg 4.2.2

جواب چھوڑیں

2 Comments

JSJack Straw

FYI, کروم (only chrome to date) can dir­ectly read .m3u8 files and play the video just like it would an mp4 etc.

جواب دیں
Tتھامس

ہیلو,
im try­ing to do the same, but I cant seem to get it to work properly
I fol­lowed your instruc­tions, and the linked one, but i still seem to get 20–30 seconds of delay between the live feed and the pub­lished feed
any ideas what could be caus­ing it?

جواب دیں