WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras

Mill-ewwel jiem ta’ ħidma fuq sistema ta’ sorveljanza bil-vidjo tal-cloud, konna ffaċċjati bi problema, mingħajr soluzzjoni li stajna nċedu għaliha fuq Ivideon - dan kien l-Everest tagħna, tixbit li ħa ħafna enerġija, iżda issa fl-aħħar għandna waħħal mannara tas-silġ fil-quċċata tal-puzzle cross-platform.

Is-sistema għat-trażmissjoni ta 'awdjo u vidjo fuq l-Internet m'għandhiex tiddependi fuq tagħmir, klijenti tal-Web u l-istandards li jappoġġjaw, u taħdem ukoll b'mod korrett fil-preżenza ta' Tradutturi ta 'Indirizzi tan-Netwerk u firewalls. Utent tas-sorveljanza bil-vidjo tas-sħab irid jaċċessa s-servizz, anki jekk juża kameras analogi, u jippreferi jara xandir tal-vidjow dirett fuq l-aktar apparat modern.

Huwa sinifikanti ħafna li l-utent irid jaraw vidjows b'dewmien minimu. Kważi l-uniku mod kif turi vidjo b'latenza baxxa f'browser huwa li tuża WebRTC (komunikazzjonijiet tal-web f'ħin reali). WebRTC huwa sett ta 'teknoloġiji għat-trażmissjoni peer-to-peer ta' vidjo u awdjo fil-browsers, inizjalment iddisinjati għat-trażmissjoni u l-daqq ta 'streams tal-vidjo b'latenza baxxa. Għal dan il-għan, fost affarijiet oħra, jintuża l-protokoll UDP.

Qabel ma ngħidulek x'tagħti l-magna l-ġdida lill-utent, infakkruk għaliex u għaliex nappoġġjaw it-teknoloġiji HLS, u għaliex iddeċidejna li nimxu 'l quddiem.

Magna HLS: vantaġġi u liżvantaġġi

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras
(c)

It-teknoloġija HLS (HTTP Live Streaming) ġiet żviluppata minn Apple, għalhekk mhix sorpriża li l-ewwel ġiet appoġġjata fuq apparati Apple. Illum, il-vidjo HLS huwa appoġġjat ukoll minn kważi s-set-top boxes kollha u ħafna apparati li jħaddmu l-OS. Android.

Il-magna HLS tuża l-codec tal-vidjo H264 magħruf flimkien ma 'flussi tal-awdjo AAC jew MP3 biex tistrimja data tal-vidjo. Il-fluss tad-dejta tal-awdjo u tal-vidjo kollu huwa ppakkjat f'kontenitur tat-trasport MPEG-TS. Għat-trażmissjoni permezz tal-protokoll HTTP, l-informazzjoni li tinsab fin-nixxiegħa hija maqsuma fi frammenti deskritti fil-playlists m3u8. U allura biss dawn il-frammenti, flimkien mal-playlists, jiġu trażmessi permezz HTTP. Chunking awtomatikament ifisser dewmien f'sekondi. Din hija karatteristika tal-kontenitur MPEG-TS.

Il-magna HLS tappoġġja wkoll flussi multibitrate, Live/VOD.

Vantaġġi ewlenin ta 'HLS:

  • appoġġ integrat fil-brawżers ewlenin kollha;
  • faċilità ta 'implimentazzjoni (meta mqabbla ma' WebRTC);
  • Huwa konvenjenti u effiċjenti ħafna li torganizza kull tip ta 'xandiriet għal udjenza kbira minħabba l-fatt li s-segmenti jistgħu jittellgħu fuq CDN darba.

Minkejja s-sempliċità tal-magna, mhux kollox huwa bla xkiel kif jidher. Il-problema ewlenija hija li l-iżviluppaturi tal-plejers ta 'parti terza tbiegħdu mir-rakkomandazzjonijiet ta' Apple, pereżempju f'termini ta 'formati awdjo appoġġjati. B'mod partikolari, ħafna żviluppaturi bdew iżidu l-abbiltà li jaħdmu ma 'streams awdjo popolari: mpeg2 video, mpeg2 audio, eċċ Bħala riżultat, kellhom joħolqu formati ta' playlist differenti għal plejers differenti.

Iżda waħda mill-akbar problemi bil-magna HLS hija l-latenza għolja fit-trasferiment tad-dejta.

L-oriġini tal-"brejkijiet"

Ir-raġuni ewlenija għall-latency għolja ta 'HLS tinsab fil-fatt li l-programmaturi ħolqu l-magna biex jiksbu l-immaġni ta' l-ogħla kwalità. Għalhekk, il-parametri tal-intervall tal-frejms użati u d-daqs tal-buffer tal-plejbek sempliċement mhumiex adattati għal xandiriet tal-vidjo ħajjin. Minħabba dan, hemm dewmien pjuttost għoli fit-trażmissjoni ta 'filmati tal-vidjo, li jista' jkun ta '5-7 sekondi.

Min-naħa waħda, dan mhux ħafna, pereżempju, għal dawk li jaraw film minn server ta 'hosting tal-vidjow. Iżda għal sistemi ta 'sorveljanza bil-vidjo, id-dewmien fit-trażmissjoni ta' filmati tal-vidjo jista 'jkun importanti ħafna.

Jekk qed tara uffiċċju fejn l-impjegati jħarsu 'l fuq mill-moniters tagħhom darba fis-siegħa, allura dewmien ta' 5 sekondi ma jimpurtax xejn. Iżda n-nies bdew jilmentaw li, pereżempju, meta xandru partita tal-futbol, ​​diġà kitbu GOOOOL fiċ-chat, iżda dan għadu mhux fuq il-video :). Diġà għandna numru ta' każijiet ta' utenti fejn Ivideon għandu prattikament jissostitwixxi Skype.

Huwa possibbli li tegħleb il-latency fl-HLS? It-tweġiba għal din il-mistoqsija tinstema’ bħad-diskors ta’ sterminatur tal-firien b’esperjenza waqt taħdita lil speċjalisti novizzi fil-kontroll tal-pesti: “Il-firien ma jistgħux jiġu sterminati, iżda n-numru tagħhom jista’ jitnaqqas għal minimu raġonevoli.” L-istess mad-dewmien fl-HLS, mhux se jkun possibbli li jitnaqqas għal żero, iżda hemm soluzzjonijiet fis-suq li jistgħu jnaqqsu b'mod sinifikanti d-dewmien.

Qatgħat fini

Żvantaġġ ieħor tal-magna huwa l-użu ta 'fajls żgħar għat-trasferiment tad-data. Jidher li x'hemm ħażin f'dan?

Kull min ipprova jikkopja numru kbir ta 'fajls żgħar minn mezz għal ieħor probabbilment innota li l-veloċità tal-kitba ta' sett bħal dan hija ħafna inqas minn fajl wieħed kbir tal-istess daqs. U l-intensità tal-aċċess għall-hard drive tiżdied b'mod sinifikanti, li ġeneralment taffettwa b'mod negattiv il-prestazzjoni tal-kompjuter kollu. Għalhekk, it-trażmissjoni tad-dejta tal-vidjo f'biċċiet żgħar ta '10 sekondi tikkontribwixxi wkoll għal żieda fil-latenza tal-magna.

Ejja nġabru fil-qosor il-vantaġġi u l-iżvantaġġi kollha tat-teknoloġija HLS.

Vantaġġi ta 'HLS:

  1. Kapaċità li taħdem ma 'kwalunkwe apparat. Tista' tara vidjows fuq kwalunkwe apparat modern, kemm jekk ikun smartphone, tablet, laptop jew desktop PC. Il-ħaġa prinċipali hija li l-web browser huwa aġġornat u kompatibbli mal-HTML5 u l-Estensjonijiet tas-Sors tal-Midja.
  2. Kwalità ta 'immaġni eċċellenti. Il-funzjoni tat-trasmissjoni tad-data adattiva użata tippermettilek tibdel b'mod dinamiku l-kwalità tal-vidjo trażmess skont il-bandwidth tal-konnessjoni tal-Internet, filwaqt li l-algoritmu jistinka biex iżomm il-kwalità massima.
  3. M'hemmx bżonn ta 'konfigurazzjoni kumplessa tat-tagħmir tal-utent.

Żvantaġġi:

  1. Appoġġ limitat għax-xogħol mal-magna fuq xi apparati.
  2. Dewmien għoli fit-trażmissjoni tal-immaġni.
  3. Żieda sinifikanti fl-overhead u l-kumplessità tal-ottimizzazzjoni minħabba l-użu ta 'fajls żgħar. Minħabba n-natura tal-kontenitur, qatt ma nkunu nistgħu niksbu latenza inqas mid-daqs tas-segment.

L-iżvantaġġi tal-HLS għelbu l-vantaġġi tiegħu għalina u ġiegħluna nfittxu għażliet alternattivi.

X'inhu WebRTC

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras
(c)

Il-pjattaforma WebRTC ġiet żviluppata minn Google fl-2011 biex tittrażmetti streaming ta' vidjow u dejta awdjo bejn browsers u applikazzjonijiet mobbli b'latenza minima. Għal dan, jintużaw il-protokoll standard UDP u algoritmi speċjali ta 'kontroll tal-fluss. Illum huwa proġett ta' sors miftuħ, miżmum u żviluppat b'mod attiv minn Google.

WebRTC huwa sett ta' teknoloġiji għal trażmissjoni ta' vidjo u awdjo peer-to-peer. Jiġifieri, pereżempju, il-browsers tal-utenti li jużaw WebRTC jistgħu jittrasferixxu data lil xulxin direttament, mingħajr ma jużaw servers remoti għall-ħażna u l-ipproċessar tad-data. L-informazzjoni kollha tiġi pproċessata wkoll mill-browsers tal-utenti finali u mill-applikazzjonijiet mobbli.

Il-konvenjenza u l-kapaċitajiet estensivi ta’ din it-teknoloġija ġew apprezzati mill-iżviluppaturi tal-browsers popolari kollha. L-appoġġ għall-WebRTC bħalissa huwa disponibbli f’Mozilla Firefox, Opera, Google Chrome (u l-browsers kollha bbażati fuq Chromium), kif ukoll f’apps mobbli li jaħdmu Android u l-iOS.

Għall-vantaġġi kollha bla dubju tiegħu, WebRTC għandu diversi żvantaġġi sinifikanti.

Diffikultajiet ta 'għażla

It-teknoloġija WebRTC hija ħafna aktar kumplessa f'termini ta 'interazzjonijiet tan-netwerk minħabba l-fatt li hija dwar P2P. Huwa diffiċli li tiddibaggja, tittestja, u tista 'taġixxi b'mod imprevedibbli. Fl-istess ħin, irridu negħlbu n-NAT u l-firewall, irridu niżguraw l-operat f'netwerks fejn l-UDP huwa mblukkat.

L-implimentazzjoni tal-WebRTC ta 'Google hija diffiċli ħafna biex tużah. Hemm anke kumpanija sħiħa li tipprovdi servizzi ta 'assemblaġġ SDK. Barra minn hekk, l-implimentazzjoni ta 'Google kienet diffiċli ħafna biex tintegra mas-sistema tagħna mingħajr ma terġa' tikkodifika l-video kollu.

Madankollu, ilna ridna nagħtu lill-utenti l-opportunità li jaħdmu b'video "live" sħiħ u jimminimizzaw id-dewmien bejn l-immaġni fuq l-iskrin u l-avvenimenti nfushom. Barra minn hekk, kellna x-xewqa li nagħmlu l-użu ta 'kameras PTZ, fejn id-dewmien huwa kritiku, aktar komdu.

Meta wieħed iqis li implimentazzjonijiet oħra kontra d-dewmien għad għandhom funzjonalità limitata u jaħdmu notevolment agħar, iddeċidejna li nużaw WebRTC.

X’għamilna

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras

L-implimentazzjoni sew tal-pjattaforma WebRTC mhijiex ħidma faċli. Kwalunkwe kalkolu ħażin jew ineżattezza jista 'jwassal għal dewmien fit-trażmissjoni tal-vidjo mhux biss ma jonqosx meta mqabbel ma' pjattaformi oħra, iżda saħansitra jiżdied.

Biex WebRTC jaħdem b'mod korrett, l-ewwelnett, huwa meħtieġ li jitwettaq aġġornament teknoloġiku tal-munzell biex jaħdem bil-vidjo tal-web. Dak għamilna.

L-ewwel, implimentajna server ta 'protokoll ta' sinjalar WebRTC fuq Websocket, u skjerajna wkoll server peer WebRTC fis-sħab ibbażat fuq l-SDK webrtc.org. Il-kompitu tiegħu huwa li jqassam flussi tal-vidjo lill-klijenti WebRTC pari fil-format H.264 + Opus/G.711 mingħajr transcoding tal-vidjo.

Aħna għażilna Websocket bħala l-protokoll tas-sinjalar għax diġà għandu appoġġ ta 'kwalità għolja fil-web browsers popolari kollha. Minħabba dan, tista 'tnaqqas b'mod sinifikanti mhux biss l-ispejjeż ġenerali tal-iżvilupp, iżda wkoll tevita li taħli ħin u riżorsi fuq handshake ripetut TCP u TLS meta mqabbel ma' AJAX.

Il-fatt hu li, b'mod awtomatiku, WebRTC ma jipprovdix il-protokoll ta' sinjalar meħtieġ biex jiġi kkonfigurat, iżomm u jtemm kif suppost il-komunikazzjoni bil-vidjo f'ħin reali bejn is-sors u l-applikazzjonijiet tal-klijent.

U sabiex nimplimentaw b'mod indipendenti t-teknoloġija tas-sinjalar, kellna niżviluppaw is-server tas-sinjalar tagħna stess b'appoġġ għal diversi protokolli tal-web (Websocet, WebRTC). U bil-kapaċità li timmaniġġja b'mod sigur sessjonijiet u notifiki f'ħin reali, ġestjoni tal-vidjow u ħafna aktar.

Aħna għelbu l-limitazzjonijiet tal-P2P billi nnaqqsu l-latenza mhux permezz tal-P2P, iżda permezz tal-UDP u l-kontroll tal-fluss biex innaqqsu l-latenza. Dan huwa mibni wkoll fil-WebRTC, peress li l-każ ta 'użu ewlieni huwa konversazzjonijiet p2p permezz ta' browser.

Fil-klijent mobbli, aħna implimentajna l-plejer bl-użu tal-webrtc.org SDK, peress li huwa biss jimplimenta b'mod korrett il-kontroll tal-fluss, għandu l-iskemi kollha magħrufa ta 'Korezzjoni ta' Żbalji 'l quddiem (FEC), u jimplimenta b'mod korrett il-mekkaniżmu biex jibgħat mill-ġdid il-pakketti għall-browsers kollha. Huwa importanti wkoll li l-webrtc.org SDK qed jiġi żviluppat b'mod attiv minn Google.

X'inhu r-riżultat tal-implimentazzjoni tal-WebRTC?


Biex tara vidjow dirett mill-kameras, żidna player ottimizzat ġdid ibbażat fuq WebRTC fil-kont personali tiegħek. Jipprovdi veloċitajiet veloċi tat-tagħbija tal-vidjo u jelimina kompletament il-problema tal-latency li jakkumula hekk kif iżid il-ħin tal-vista.

Wara l-introduzzjoni ta 'appoġġ WebRTC fis-servizz cloud Ivideon, nistgħu ngħidu b'kunfidenza sħiħa li l-klijenti tagħna issa jistgħu jaraw vidjo live sħiħ. Issa d-dewmien meta xandir sekwenzi tal-vidjo ma jaqbiżx sekonda! Għal tqabbil, il-magna HLS preċedenti pprovdiet kunsinna ta 'vidjow b'dewmien ta' 5-7 sekondi. Id-differenza fil-veloċità tad-dimostrazzjoni tal-vidjo hija sinifikanti ħafna, u l-utent jinduna immedjatament wara li jibda jaħdem mas-servizz tal-vidjo tagħna.

Kif stennejna, l-implimentazzjoni tal-plejer il-ġdid tejbet ir-rispons tal-PTZ u l-komunikazzjoni bil-vuċi mal-kamera.

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras

Hemm punt sottili wieħed biss li rridu niġbdu l-attenzjoni għalih. Il-player il-ġdid tal-WebRTC bħalissa qed jaħdem fil-modalità tat-test. U hu għalhekk li aħna ma nippermettuhiex għall-klijenti kollha tagħna b'mod awtomatiku. Imma tista' tattivaha lilek innifsek billi tattiva l-oġġett korrispondenti fis-settings tal-kamera (biex tagħmel dan, mur fuq kont personali).

Karatteristiċi tal-implimentazzjoni tal-WebRTC fis-servizz Ivideon

WebRTC u sorveljanza bil-vidjo: kif għelbu l-latenza tal-vidjo mill-kameras

WebRTC għadu teknoloġija sperimentali bħalissa. L-appoġġ tiegħu għadu mhux implimentat b'mod korrett fil-brawżers u l-apparati tal-utent kollha, u wkoll mhux fil-kameras kollha.

Dan huwa preċiżament għaliex għadna ma għamilniex il-player WebRTC bħala default għall-utenti kollha.

Għalissa, nirrakkomandaw li tuża WebRTC biss fil-browsers Google Chrome. L-aħħar verżjonijiet ta' Firefox u Safari jappoġġjaw ukoll din it-teknoloġija, iżda, sfortunatament, għadha instabbli.

Għadna ma implimentajniex l-appoġġ WebRTC għall-browsers fuq apparat mobbli. Bħalissa, jekk tidħol minn apparat mobbli u tattiva WebRTC, din il-modalità ma taħdimx. Madankollu, WebRTC huwa disponibbli fl-applikazzjonijiet mobbli tagħna għal Android и IOS.

U nikkonkludu l-istorja dwar il-karatteristiċi tal-implimentazzjoni tal-WebRTC fis-servizz tagħna, ejja ninnota żewġ punti aktar sottili.

L-ewwelnett, it-teknoloġija hija ffukata fuq ix-xandir ta 'video live f'ħin reali. Għalhekk, jekk il-kanal tiegħek ma jkollux biżżejjed bandwidth biex jittrasmetti l-vidjo, tinnota qtar tal-frejms (bl-HLS tinnota fading tal-vidjo u latency miżjuda, iżda mhux se jkun hemm qtar tal-frejms), iżda l-video xorta se jixxandar b'mod reali ħin.

It-tieni nett, peress li t-teknoloġija hija ddisinjata biex taħdem speċifikament b'video live f'ħin reali, ma nużawhiex biex naħdmu b'dejta tal-vidjo arkivjata.

Bidliet oħra fis-servizz

F'dan iż-żmien, Flash m'għadux involut fil-mekkaniżmu awtomatiku tal-għażla tal-magna. Xorta tista' tuża player bħal dan, iżda biex tagħmel dan trid tagħżel manwalment fis-settings tal-kont jew tal-kamera. Dan mhuwiex ġieħ għall-moda, huwa biss li skont l-istatistika tas-servizz tagħna, prattikament ma fadal l-ebda utent jaħdem bil-Flash. U nippruvaw niddeterminaw jekk il-browser tal-utent jappoġġjahx, nitilfu madwar 2 sekondi ta 'ħin prezzjuż.

Hawnhekk hawn ħarsa ġenerali qasira lejn il-bidliet li jistennewk fis-sistema ta 'sorveljanza bil-vidjo tas-sħab u l-kont personali tagħna. Oqgħod magħna u segwi l-aħbarijiet!

Sors: www.habr.com

Ixtri hosting affidabbli għal siti bi protezzjoni DDoS, servers VPS VDS 🔥 Ixtri hosting ta' websajts affidabbli bi protezzjoni DDoS, servers VPS VDS | ProHoster