I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera

Kusukela ezinsukwini zokuqala zokusebenza ohlelweni lokubhekwa kwevidiyo yefu, sasibhekene nenkinga, ngaphandle kwesixazululo esingasiyeka i-Ivideon - lena kwakuyi-Everest yethu, ukukhuphuka okuthatha amandla amaningi, kodwa manje ekugcineni unamathisele imbazo yeqhwa phezulu kwephazili yenkundla.

Uhlelo lokudlulisa umsindo nevidiyo nge-inthanethi akumele luncike ezintweni ezisetshenziswayo, amaklayenti eWebhu kanye namazinga awasekelayo, futhi luphinde lusebenze ngendlela efanele lapho kukhona Abahumushi Bekheli Lenethiwekhi kanye nezindonga zomlilo. Umsebenzisi oqapha ividiyo yefu ufuna ukufinyelela isevisi, ngisho noma esebenzisa amakhamera e-analog, futhi ukhetha ukubuka ukusakazwa kwevidiyo bukhoma kudivayisi yesimanjemanje.

Kubaluleke kakhulu ukuthi umsebenzisi ufuna ukubuka amavidiyo ngokubambezeleka okuncane. Cishe ukuphela kwendlela yokubonisa ividiyo ngokubambezeleka okuphansi esipheqululini ukusebenzisa i-WebRTC (ukuxhumana kwewebhu kwesikhathi sangempela). I-WebRTC iyisethi yobuchwepheshe bokudluliswa kontanga kuya kontanga kwevidiyo nomsindo ezipheqululini, ekuqaleni eziklanyelwe ukudlulisela kanye nokudlalwa kokusakaza kwevidiyo ngokubambezeleka okuphansi. Ngale njongo, phakathi kwezinye izinto, iphrothokholi ye-UDP isetshenziswa.

Ngaphambi kokuthi sikutshele ukuthi injini entsha inikeza ini umsebenzisi, sizokukhumbuza ukuthi kungani futhi kungani sisekela ubuchwepheshe be-HLS, nokuthi kungani sinqume ukuqhubeka.

Injini ye-HLS: okuhle nokubi

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera
(c)

Ubuchwepheshe be-HLS (HTTP Live Streaming) bathuthukiswa yi-Apple, ngakho-ke akumangazi ukuthi basekelwa okokuqala kumadivayisi e-Apple. Namuhla, ividiyo ye-HLS isekelwa cishe yiwo wonke amabhokisi asethelwe phezulu namadivayisi amaningi asebenzisa i-OS. Android.

Injini ye-HLS isebenzisa i-codec yevidiyo eyaziwa kakhulu ye-H264 ihlanganiswe ne-AAC noma ukusakazwa komsindo we-MP3 ukuze isakaze idatha yevidiyo. Wonke ukusakazwa kwedatha yomsindo nevidiyo kupakishwe esitsheni sokuthutha se-MPEG-TS. Ukuze idluliselwe ngephrothokholi ye-HTTP, imininingwane equkethwe ekusakazeni ihlukaniswe izingcezu ezichazwe ohlwini lwadlalwayo lwe-m3u8. Kulapho kuphela lezi zingcezu, kanye nezinhla zokudlalayo, zisakazwa nge-HTTP. I-Chunking isho ngokuzenzakalelayo ukubambezeleka ngemizuzwana. Lesi isici sesitsha se-MPEG-TS.

Injini ye-HLS iphinde isekele ukusakazwa kwe-multibitrate, Live/VOD.

Izinzuzo eziyinhloko ze-HLS:

  • usekelo olwakhelwe ngaphakathi kuzo zonke iziphequluli ezinkulu;
  • ukusebenziseka kalula (uma kuqhathaniswa neWebRTC);
  • Kulula kakhulu futhi kusebenza kahle ukuhlela zonke izinhlobo zokusakaza ezithamelini eziningi ngenxa yokuthi amasegimenti angalayishwa ku-CDN kanye.

Naphezu kokulula kwenjini, akuzona zonke izinto ezibushelelezi njengoba kubonakala. Inkinga enkulu ukuthi abathuthukisi beqembu lesithathu basuke ezincomweni ze-Apple, ngokwesibonelo mayelana namafomethi omsindo asekelwe. Ikakhulukazi, abathuthukisi abaningi baqala ukwengeza amandla okusebenza ngemifudlana yomsindo edumile: ividiyo ye-mpeg2, i-MPEG2 yomsindo, njll. Ngenxa yalokho, kwakudingeka bakhe amafomethi ahlukene ohlu lwadlalwayo kubadlali abahlukene.

Kodwa enye yezinkinga ezinkulu ngenjini ye-HLS ukubambezeleka okuphezulu ekudluliselweni kwedatha.

Imvelaphi ye "brakes"

Isizathu esikhulu sokubambezeleka okuphezulu kwe-HLS siwukuthi abahleli bezinhlelo badale injini ukuze bathole izithombe ezisezingeni eliphezulu kakhulu. Ngakho-ke, amapharamitha wesikhawu sozimele asetshenzisiwe kanye nosayizi webhafa yokudlala awakulungele ukusakazwa bukhoma kwevidiyo. Ngenxa yalokhu, kukhona ukubambezeleka okuphezulu kakhulu ekudlulisweni kwevidiyo, okungaba imizuzwana engu-5-7.

Ngakolunye uhlangothi, lokhu akukuningi, isibonelo, kulabo ababuka i-movie kusuka kuseva yokubamba ividiyo. Kodwa ezinhlelweni zokubhekwa kwevidiyo, ukubambezeleka kokudlulisa ividiyo kungaba kubaluleke kakhulu.

Uma ubukele ihhovisi lapho abasebenzi bebheka phezulu kubaqaphi babo kanye ngehora, khona-ke ukubambezeleka kwamasekhondi angu-5 akunandaba nhlobo. Kodwa abantu baqala ukukhononda ngokuthi, isibonelo, lapho besakaza umdlalo webhola, sebevele babhala i-GOOOOL engxoxweni, kodwa lokhu akukabi kuvidiyo :). Sesivele sinenani lamacala abasebenzisi lapho i-Ivideon kufanele ingene esikhundleni seSkype.

Ingabe kungenzeka ukushaya ukubambezeleka ku-HLS? Impendulo yalo mbuzo izwakala njengenkulumo yombulali wamagundane ongumakadebona enkulumweni eya kochwepheshe abasafufusa bokulawula izinambuzane: “Amagundane awakwazi ukuqothulwa, kodwa amanani awo angancishiswa abe inani eliphansi elinengqondo.” Ngokufanayo nokulibaziseka kwe-HLS, ngeke kwenzeke ukuyehliselwa ku-zero, kodwa kunezixazululo emakethe ezinganciphisa kakhulu ukubambezeleka.

Ukusikeka okuhle

Okunye okungalungile kwenjini ukusetshenziswa kwamafayela amancane okudlulisa idatha. Kubonakala sengathi yini engalungile ngalokhu?

Noma ubani oye wazama ukukopisha inombolo enkulu yamafayela amancane kusuka kwesinye isikhungo kuya kwesinye cishe uye waqaphela ukuthi isivinini sokubhala sesethi esinjalo siphansi kakhulu kunefayela elilodwa elikhulu losayizi ofanayo. Futhi ukuqina kokufinyelela ku-hard drive kukhula kakhulu, okuthinta kabi ukusebenza kwayo yonke ikhompyutha. Ngakho-ke, ukudlulisa idatha yevidiyo ngezingxenye ezincane zesekhondi eziyi-10 nakho kunomthelela ekwandeni kokubambezeleka kwenjini.

Ake sifingqe kafushane bonke ubuhle nobubi bobuchwepheshe be-HLS.

Izinzuzo ze-HLS:

  1. Ikhono lokusebenza nanoma iyiphi idivayisi. Ungabuka amavidiyo kunoma iyiphi idivayisi yesimanje, kungaba i-smartphone, ithebhulethi, ikhompuyutha ephathekayo noma i-desktop PC. Into esemqoka ukuthi isiphequluli sewebhu sisesikhathini samanje futhi siyahambisana ne-HTML5 kanye nezandiso zomthombo wemidiya.
  2. Ikhwalithi yesithombe enhle kakhulu. Umsebenzi wokudlulisa idatha oguquguqukayo osetshenzisiwe ukuvumela ukuthi uguqule ngokushintshashintshayo ikhwalithi yevidiyo edluliswayo kuye ngomkhawulokudonsa woxhumano lwe-inthanethi, kuyilapho i-algorithm ilwela ukugcina ikhwalithi ephezulu.
  3. Asikho isidingo sokucushwa okuyinkimbinkimbi kwempahla yomsebenzisi.

nemibi:

  1. Ukwesekwa okulinganiselwe kokusebenza nenjini kwamanye amadivaysi.
  2. Ukubambezeleka okuphezulu ekudlulisweni kwesithombe.
  3. Ukwenyuka okuphawulekayo kwe-overhead nokuba yinkimbinkimbi kokwenza kahle ngenxa yokusetshenziswa kwamafayela amancane. Ngenxa yemvelo yesiqukathi, asisoze sakwazi ukuthola ukubambezeleka okungaphansi kunosayizi wesegimenti.

Ububi be-HLS budlule izinzuzo zayo kithi futhi kwasiphoqa ukuthi sibheke ezinye izinketho.

Yini i-WebRTC

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera
(c)

Inkundla ye-WebRTC yathuthukiswa yi-Google ngo-2011 ukuze idlulisele ividiyo esakazwayo kanye nedatha yomsindo phakathi kweziphequluli nezinhlelo zokusebenza zeselula ezinokubambezeleka okuncane. Kulokhu, iphrothokholi ye-UDP ejwayelekile kanye nama-algorithms okulawula ukugeleza akhethekile asetshenziswa. Namuhla iphrojekthi yomthombo ovulekile, igcinwa ngokugcwele yi-Google futhi iyathuthukiswa.

I-WebRTC isethi yobuchwepheshe bokudluliswa kwevidiyo kontanga kuya kontanga nomsindo. Okusho ukuthi, isibonelo, iziphequluli zabasebenzisi ezisebenzisa i-WebRTC zingadlulisela idatha komunye nomunye ngokuqondile, ngaphandle kokusebenzisa amaseva akude ukugcina nokucubungula idatha. Lonke ulwazi luphinde lucutshungulwe iziphequluli zabasebenzisi bokugcina nezinhlelo zokusebenza zeselula.

Ubulula kanye namakhono amakhulu alobu buchwepheshe kuye kwaziswa ngabathuthukisi bazo zonke iziphequluli ezidumile. Ukusekelwa kwe-WebRTC okwamanje kuyatholakala ku-Mozilla Firefox, Opera, Google Chrome (kanye nazo zonke iziphequluli ezisekelwe ku-Chromium), kanye nakuzinhlelo zokusebenza zeselula ezisebenza. Android kanye ne-iOS.

Kuzo zonke izinzuzo zayo ezingangabazeki, i-WebRTC inezinkinga ezimbalwa ezibalulekile.

Izinkinga zokuzikhethela

Ubuchwepheshe be-WebRTC buyinkimbinkimbi kakhulu mayelana nokusebenzisana kwenethiwekhi ngenxa yokuthi imayelana ne-P2P. Kunzima ukulungisa iphutha, ukuhlola, futhi ungaziphatha ngendlela engalindelekile. Ngesikhathi esifanayo, sidinga ukunqoba i-NAT kanye ne-firewall, sidinga ukuqinisekisa ukusebenza kumanethiwekhi lapho i-UDP ivinjiwe.

Ukusebenzisa i-WebRTC ye-Google kunzima kakhulu ukukusebenzisa. Kukhona ngisho nenkampani yonke ehlinzeka ngezinsizakalo zomhlangano we-SDK. Futhi, ukusebenzisa kwe-Google bekunzima kakhulu ukukuhlanganisa nesistimu yethu ngaphandle kokufaka ikhodi kabusha yonke ividiyo.

Nokho, kudala sifuna ukunikeza abasebenzisi ithuba lokusebenza ngevidiyo “bukhoma” egcwele ngokugcwele futhi sinciphise ukunensa phakathi kwesithombe esikusikrini kanye nemicimbi ngokwayo. Futhi, besinesifiso sokwenza ukusetshenziswa kwamakhamera we-PTZ, lapho ukubambezeleka kubaluleke kakhulu, kukhululeke kakhudlwana.

Uma kucatshangelwa ukuthi okunye ukuqaliswa kokulwa nokulibaziseka kusenomkhawulo wokusebenza futhi kusebenza kubi kakhulu, sinqume ukusebenzisa i-WebRTC.

Senzeni

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera

Ukusebenzisa kahle inkundla ye-WebRTC akuwona umsebenzi olula. Noma yikuphi ukubala kabi noma ukunemba kungaholela ekubambezelekeni ekudlulisweni kwevidiyo hhayi nje kuphela ekuncipheni uma kuqhathaniswa nezinye izinkundla, kodwa nokukhula.

Ukuze i-WebRTC isebenze kahle, okokuqala, kuyadingeka ukwenza ukuthuthukiswa kobuchwepheshe besitaki sokusebenza ngevidiyo yewebhu. Yilokho esakwenza.

Okokuqala, sisebenzise iseva yephrothokholi esayinayo ye-WebRTC phezu kwe-Websocket, saphinde safaka iseva yontanga ye-WebRTC emafini ngokusekelwe ku-webrtc.org SDK. Umsebenzi wayo ukusabalalisa ukusakazwa kwevidiyo kontanga be-WebRTC beklayenti ngefomethi ye-H.264 + Opus/G.711 ngaphandle kokudlulisela ikhodi ngevidiyo.

Sikhethe i-Websocket njengephrothokholi yokusayinda ngoba isivele inosekelo lwekhwalithi ephezulu kuzo zonke iziphequluli zewebhu ezidumile. Ngenxa yalokhu, awukwazi ukunciphisa kakhulu ukuthuthukiswa kuphela phezulu, kodwa futhi ugweme ukuchitha isikhathi nezinsiza ngokuxhawula okuphindaphindiwe kwe-TCP ne-TLS uma kuqhathaniswa ne-AJAX.

Iqiniso liwukuthi, ngokuzenzakalelayo, i-WebRTC ayinikezi iphrothokholi yokusayina edingekayo ukuze kumiswe kahle, kugcinwe, futhi kumiswe ukuxhumana kwevidiyo kwesikhathi sangempela phakathi komthombo nezinhlelo zokusebenza zeklayenti.

Futhi ukuze sisebenzise ubuchwepheshe bokusayina ngokuzimela, besidinga ukuthuthukisa iseva yethu yokusayina ngokusekelwa kwezivumelwano ezimbalwa zewebhu (Websocet, WebRTC). Futhi nekhono lokuphatha ngokuphephile izikhathi nezaziso ngesikhathi sangempela, ukuphathwa kwevidiyo nokunye okuningi.

Sinqobe imikhawulo ye-P2P ngokunciphisa ukubambezeleka hhayi nge-P2P, kodwa nge-UDP nokulawula ukugeleza ukuze kuncishiswe ukubambezeleka. Lokhu futhi kwakhelwe ku-WebRTC, njengoba ukusetshenziswa okuyinhloko kuyizingxoxo ze-p2p ngesiphequluli.

Eklayentini leselula, sisebenzise isidlali sisebenzisa i-webrtc.org SDK, njengoba kuphela isebenzisa ngendlela efanele ukulawula ukugeleza, inazo zonke izikimu ezaziwayo Zokulungisa Iphutha Langaphambili (i-FEC), futhi isebenzisa ngendlela efanele indlela yokuthumela kabusha amaphakethe kuzo zonke iziphequluli. Kubalulekile futhi ukuthi i-webrtc.org SDK ithuthukiswe i-Google.

Uyini umphumela wokusebenzisa i-WebRTC?


Ukubuka ividiyo ebukhoma kumakhamera, sengeze isidlali esisha esithuthukisiwe esisuselwe ku-WebRTC ku-akhawunti yakho yomuntu siqu. Ihlinzeka ngesivinini sokulayisha ividiyo esheshayo futhi iqeda ngokuphelele inkinga yokuqoqwa kwe-latency njengoba isikhathi sokubuka sikhula.

Ngemva kokwethula ukwesekwa kwe-WebRTC kusevisi yefu ye-Ivideon, singasho ngokuqiniseka okuphelele ukuthi amakhasimende ethu angakwazi manje ukubuka ividiyo ebukhoma egcwele. Manje ukubambezeleka uma kusakazwa ukulandelana kwevidiyo akudluli umzuzwana owodwa! Uma kuqhathaniswa, injini ye-HLS yangaphambilini inikeze ukulethwa kwevidiyo ngokulibaziseka kwamasekhondi angu-5-7. Umehluko wesivinini sokuboniswa kwevidiyo ubaluleke kakhulu, futhi umsebenzisi uzokubona ngokushesha ngemva kokuqala ukusebenza nensizakalo yethu yevidiyo.

Njengoba besilindele, ukuqaliswa komdlali omusha kuthuthukise ukusabela kwe-PTZ kanye nokuxhumana ngezwi ngekhamera.

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera

Kunephuzu elilodwa kuphela elicashile esifuna ukudonsela ukunaka kulo. Isidlali esisha se-WebRTC sisebenza kumodi yokuhlola okwamanje. Futhi yingakho singakuniki amandla kuwo wonke amakhasimende ethu ngokuzenzakalela. Kodwa ungayivula ngokwakho ngokunika amandla into ehambisanayo kuzilungiselelo zekhamera (ukwenza lokhu, yiya ku akhawunti yomuntu siqu).

Izici zokusetshenziswa kwe-WebRTC kusevisi ye-Ivideon

I-WebRTC nokubhekwa kwevidiyo: sikunqobe kanjani ukubambezeleka kwevidiyo kumakhamera

I-WebRTC isewubuchwepheshe bokuhlola okwamanje. Ukusekelwa kwayo akukenziwa kahle kuzo zonke iziphequluli namadivayisi abasebenzisi, futhi hhayi kuwo wonke amakhamera.

Yingakho nje singakenzi isidlali se-WebRTC sibe esimisiwe kubo bonke abasebenzisi.

Okwamanje, sincoma ukusebenzisa i-WebRTC kuphela kuziphequluli ze-Google Chrome. Izinguqulo zakamuva zeFirefox neSafari nazo zisekela lobu buchwepheshe, kodwa, ngeshwa, abukazinzi.

Okwamanje asikasebenzisi ukwesekwa kwe-WebRTC kweziphequluli kumadivayisi eselula. Okwamanje, uma ungena usebenzisa iselula futhi wenze i-WebRTC isebenze, le modi ngeke isebenze. Kodwa-ke, i-WebRTC iyatholakala ezinhlelweni zethu zokusebenza zeselula Android и iOS.

Futhi siphetha indaba mayelana nezici zokusetshenziswa kwe-WebRTC enkonzweni yethu, ake siphawule amaphuzu amabili acashile.

Okokuqala, ubuchwepheshe bugxile ekusakazeni ividiyo ebukhoma ngesikhathi sangempela. Ngakho-ke, uma isiteshi sakho singenawo umkhawulokudonsa owanele wokudlulisa ividiyo, uzobona ukwehla kohlaka (nge-HLS uzobona ukuthi ividiyo iyafiphala kanye nokubambezeleka okwandisiwe, kodwa ngeke kube khona ukwehla kohlaka), kodwa ividiyo isazosakazwa ngokoqobo. isikhathi.

Okwesibili, njengoba ubuchwepheshe buklanyelwe ukusebenza ngokuqondile nevidiyo ebukhoma ngesikhathi sangempela, asiyisebenzisi ukuze sisebenze nedatha yevidiyo egcinwe kungobo yomlando.

Ezinye izinguquko kusevisi

Ngalesi sikhathi, i-Flash ayisabandakanyi endleleni yokukhetha injini ezenzakalelayo. Usengasebenzisa isidlali esinjalo, kodwa ukwenza lokhu udinga ukusikhetha mathupha ku-akhawunti noma kuzilungiselelo zekhamera. Lokhu akukona ukuhlonishwa kwemfashini, ukuthi nje ngokwezibalo zesevisi yethu, cishe abekho abasebenzisi abasele besebenza neFlash. Nokuzama ukunquma ukuthi isiphequluli somsebenzisi siyasisekela yini, silahlekelwa cishe amasekhondi angu-2 esikhathi esiyigugu.

Nasi isifinyezo esifushane sezinguquko ezikulindele ohlelweni lwethu lokubhekwa kwevidiyo yamafu kanye ne-akhawunti yomuntu siqu. Hlala nathi futhi ulandele izindaba!

Source: www.habr.com

Thenga ukusingathwa okuthembekile kwamasayithi anokuvikelwa kwe-DDoS, amaseva e-VPS VDS 🔥 Thenga ukusingathwa kwewebhusayithi okuthembekile ngokuvikelwa kwe-DDoS, amaseva e-VPS VDS | ProHoster