WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan

Bho na ciad làithean de bhith ag obair air siostam sgrùdaidh bhidio sgòthan, bha duilgheadas againn, às aonais fuasgladh a dh ’fhaodadh sinn a leigeil seachad air Ivideon - b’ e seo an Everest againn, sreap a thug tòrr lùth, ach a-nis tha sinn mu dheireadh thall. steigeil tuagh-deighe a-steach do mhullach an tòimhseachan tar-àrd-ùrlar.

Cha bu chòir don t-siostam airson claisneachd is bhidio a chuir thairis air an eadar-lìn a bhith an urra ri uidheamachd, teachdaichean lìn agus na h-inbhean a tha iad a’ toirt taic, agus cuideachd obrachadh gu ceart an làthair Eadar-theangairean Seòladh Lìonra agus ballachan teine. Tha neach-cleachdaidh sgrùdaidh bhidio sgòthan airson faighinn chun t-seirbheis, eadhon ged a chleachdas e camarathan analog, agus is fheàrr leis a bhith a’ coimhead bhidio beò air a chraoladh air an inneal as ùire.

Tha e glè chudromach gu bheil an neach-cleachdaidh airson coimhead air bhideothan le glè bheag de dhàil. Is e cha mhòr an aon dòigh air bhidio a shealltainn le latency ìosal ann am brobhsair a bhith a’ cleachdadh WebRTC (conaltradh fìor-ùine lìn). Tha WebRTC na sheata de theicneòlasan airson tar-chuir bhidio is claisneachd ann am brobhsairean, a chaidh a dhealbhadh an toiseach airson sruthan bhidio a chuir air ais agus a chluich le latency ìosal. Airson an adhbhair seo, am measg rudan eile, tha am protocol UDP air a chleachdadh.

Mus innis sinn dhut dè a bheir an einnsean ùr don neach-cleachdaidh, cuiridh sinn nad chuimhne carson agus carson a tha sinn a’ toirt taic do theicneòlasan HLS, agus carson a chuir sinn romhainn gluasad air adhart.

Einnsean HLS: buannachdan agus eas-bhuannachdan

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan
(c)

Chaidh teicneòlas HLS (HTTP Live Streaming) a leasachadh le Apple, agus mar sin chan eil e na iongnadh gun deach taic a thoirt dha an toiseach air innealan Apple. An-diugh, tha bhidio HLS cuideachd a’ faighinn taic bho cha mhòr a h-uile bogsa seata-mhullaich agus mòran innealan a tha a’ ruith an OS. Android.

Bidh an einnsean HLS a’ cleachdadh an codec bhidio H264 ainmeil ann an co-bhonn ri sruthan claisneachd AAC no MP3 gus dàta bhidio a shruthladh. Tha an sruth dàta claisneachd is bhidio gu lèir air a phacaigeadh a-steach do shoitheach còmhdhail MPEG-TS. Airson a chraoladh tro phròtacal HTTP, tha am fiosrachadh a tha san t-sruth air a roinn ann am pìosan a tha air am mìneachadh ann an liostaichean-cluiche m3u8. Agus dìreach an uairsin tha na criomagan sin, còmhla ri clàran-cluiche, air an gluasad tro HTTP. Tha suathadh gu fèin-ghluasadach a’ ciallachadh dàil ann an diogan. 'S e seo feart de na MPEG-TS container.

Bidh an einnsean HLS cuideachd a’ toirt taic do shruthan multibitrate, Live/VOD.

PrĂŹomh bhuannachdan HLS:

  • taic stèidhichte anns a h-uile prĂŹomh bhrobhsair;
  • furasta a chuir an gnĂŹomh (an coimeas ri WebRTC);
  • Tha e gu math goireasach agus èifeachdach a h-uile seòrsa de chraoladh a chuir air dòigh gu luchd-èisteachd mòr leis gum faodar earrannan a luchdachadh suas gu CDN aon uair.

A dh'aindeoin cho sÏmplidh 'sa tha an einnsean, chan eil a h-uile dad cho rèidh' sa tha e coltach. Is e am prÏomh dhuilgheadas gu bheil luchd-leasachaidh cluicheadair treas-phàrtaidh air gluasad air falbh bho mholaidhean Apple, mar eisimpleir a thaobh cruthan claisneachd le taic. Gu sònraichte, thòisich mòran de luchd-leasachaidh air an comas a bhith ag obair le sruthan claisneachd mòr-chòrdte: mpeg2 bhidio, mpeg2 claisneachd, msaa Mar thoradh air an sin, bha aca ri diofar chruthan playlist a chruthachadh airson diofar chluicheadairean.

Ach is e aon de na duilgheadasan as motha leis an einnsean HLS an ĂŹre Ă rd de ghluasad dĂ ta.

Cò às a thàinig “breicichean”

Is e am prìomh adhbhar airson latency àrd HLS gu bheil luchd-prògramaidh air an einnsean a chruthachadh gus ìomhaighean den chàileachd as àirde fhaighinn. Mar sin, chan eil paramadairean an eadar-ama frèam a thathar a’ cleachdadh agus meud a’ bhufair ath-chluich dìreach freagarrach airson craolaidhean bhidio beò. Air sgàth seo, tha dàil gu math àrd ann an sgaoileadh fiolm bhidio, a dh'fhaodas a bhith 5-7 diogan.

Air an aon làimh, chan eil seo mòran, mar eisimpleir, dhaibhsan a bhios a 'coimhead film bho fhrithealaiche aoigheachd bhidio. Ach airson siostaman sgrùdaidh bhidio, faodaidh an dàil ann a bhith a’ sgaoileadh fiolm bhidio a bhith glè chudromach.

Ma tha thu a 'coimhead oifis far am bi luchd-obrach a' coimhead suas bho na sgrÚdairean aca uair san uair, chan eil dàil de 5 diogan gu diofar. Ach thòisich daoine a 'gearan, mar eisimpleir, nuair a bha iad a' craoladh geama ball-coise, gu robh iad mar-thà a 'sgrÏobhadh GOOOOL anns a' chat, ach chan eil seo air a 'bhidio fhathast :). Tha grunn chÚisean luchd-cleachdaidh againn mu thràth far am bu chòir do Ivideon a dhol an àite Skype gu practaigeach.

A bheil e comasach faighinn seachad air latency ann an HLS? Tha freagairt na ceiste seo coltach ri òraid neach-sgrios radain eòlach aig òraid do eòlaichean smachd air plàighean ùra: “Chan urrainnear radain a chuir às, ach faodar na h-àireamhan aca a lughdachadh gu ìre reusanta.” Mar an ceudna leis an dàil ann an HLS, cha bhith e comasach a lughdachadh gu neoni, ach tha fuasglaidhean air a’ mhargaidh a dh’ fhaodadh an dàil a lughdachadh gu mòr.

Gearraidhean breagha

Is e eas-bhuannachd eile den einnsean cleachdadh faidhlichean beaga airson gluasad dàta. Bhiodh e coltach dè tha ceàrr air seo?

Is dòcha gu bheil neach sam bith a tha air feuchainn ri àireamh mhòr de fhaidhlichean beaga a chopaigeadh bho aon mheadhan gu meadhan eile air mothachadh gu bheil astar sgrìobhaidh seata mar seo mòran nas ìsle na aon fhaidhle mòr den aon mheud. Agus tha an dian ruigsinneachd air a 'chlàr-chruaidh a' meudachadh gu mòr, a tha sa chumantas a 'toirt droch bhuaidh air coileanadh a' choimpiutair gu lèir. Mar sin, bidh tar-chuir dàta bhidio ann am pìosan beaga 10 diog cuideachd a’ cur ri barrachd latency einnsean.

Bheir sinn geàrr-chunntas goirid air na buannachdan agus na h-eas-bhuannachdan a tha an lÚib teicneòlas HLS.

Buannachdan HLS:

  1. Comas a bhith ag obair le inneal sam bith. Faodaidh tu coimhead air bhideothan air inneal ùr-nodha sam bith, ge bith an e fòn cliste, clàr, laptop no PC deasg a th’ ann. Is e am prìomh rud gu bheil am brabhsair lìn ùraichte agus co-chòrdail ri HTML5 agus Media Source Extensions.
  2. Càileachd ìomhaigh sàr-mhath. Leigidh an gnìomh tar-chuir dàta atharrachail a thèid a chleachdadh leat càileachd a’ bhidio a chaidh a ghluasad atharrachadh gu dinamach a rèir leud bann a ’cheangail eadar-lìn, fhad‘ s a tha an algairim a ’feuchainn ris a’ chàileachd as àirde a chumail suas.
  3. Chan eil feum air rèiteachadh iom-fhillte de uidheamachd an neach-cleachdaidh.

-eas-bhuannachdan:

  1. Taic cuibhrichte airson a bhith ag obair leis an einnsean air cuid de dh’ innealan.
  2. DĂ il Ă rd ann an sgaoileadh ĂŹomhaighean.
  3. Meudachadh mòr ann an os cionn agus iom-fhillteachd optimization mar thoradh air cleachdadh fhaidhlichean beaga. Air sgàth nàdar an t-soithich, cha bhith e comasach dhuinn gu bràth latency fhaighinn nas Ïsle na meud na h-earrainn.

Bha eas-bhuannachdan HLS nas Ă irde na na buannachdan aige dhuinne agus thug e oirnn coimhead airson roghainnean eile.

Dè a th’ ann an WebRTC

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan
(c)

Chaidh an àrd-ùrlar WebRTC a leasachadh le Google ann an 2011 gus dàta sruthadh bhidio is claisneachd a chuir eadar brobhsairean agus tagraidhean gluasadach le glè bheag de dh’ ùine. Airson seo, thathas a’ cleachdadh protocol àbhaisteach UDP agus algorithms smachd sruthadh sònraichte. An-diugh is e pròiseact stòr fosgailte a th’ ann, tha e air a chumail suas gu gnìomhach le Google agus ga leasachadh.

Tha WebRTC na sheata de theicneòlasan airson sgaoileadh bhidio is claisneachd bho cho-aoisean. Is e sin, mar eisimpleir, faodaidh brobhsairean luchd-cleachdaidh a ’cleachdadh WebRTC dàta a ghluasad gu chèile gu dìreach, gun a bhith a’ cleachdadh frithealaichean iomallach airson dàta a stòradh agus a ghiullachd. Bidh a h-uile fiosrachadh cuideachd air a phròiseasadh le brobhsairean luchd-cleachdaidh deireannach agus tagraidhean gluasadach.

Tha luchd-leasachaidh a h-uile brabhsair mòr-chòrdte air meas a thoirt air goireasachd agus comasan farsaing na teicneòlais seo. Tha taic WebRTC ri fhaighinn an-dràsta ann am Mozilla Firefox, Opera, Google Chrome (agus a h-uile brabhsair stèidhichte air Chromium), a bharrachd air ann an aplacaidean gluasadach a tha a’ ruith Android agus iOS.

Airson a bhuannachdan gun teagamh, tha grunn eas-bhuannachdan cudromach aig WebRTC.

Duilgheadasan roghainn

Tha teicneòlas WebRTC tòrr nas iom-fhillte a thaobh eadar-obrachadh lÏonra leis gu bheil e mu dheidhinn P2P. Tha e duilich dÏ-bhugachadh, deuchainn, agus faodaidh e giÚlan fhèin gun dÚil. Aig an aon àm, feumaidh sinn faighinn seachad air NAT agus balla-teine, feumaidh sinn dèanamh cinnteach obrachadh ann an lÏonraidhean far a bheil UDP bacadh.

Tha buileachadh WebRTC Google gu math duilich a chleachdadh. Tha eadhon companaidh slàn ann a bheir seachad seirbheisean cruinneachaidh SDK. A bharrachd air an sin, bha e gu math duilich buileachadh Google fhilleadh a-steach leis an t-siostam againn gun a bhith ag ath-chòdachadh a’ bhidio gu lèir.

Ach, tha sinn air a bhith ag iarraidh o chionn fhada cothrom a thoirt do luchd-cleachdaidh a bhith ag obair le bhidio “beò” làn-chuimseach agus a ’lughdachadh an dàil eadar an ìomhaigh air an sgrion agus na tachartasan fhèin. A bharrachd air an sin, bha miann againn camarathan PTZ a chleachdadh, far a bheil dàil deatamach, nas comhfhurtail.

Leis gu bheil gnĂŹomhachd cuibhrichte fhathast aig gnĂŹomhachd an-aghaidh lag eile agus gu bheil iad ag obair gu math nas miosa, chuir sinn romhainn WebRTC a chleachdadh.

Dè a rinn sinn

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan

Chan e obair fhurasta a th’ ann a bhith a’ buileachadh àrd-ùrlar WebRTC gu ceart. Faodaidh mearachd no mearachd sam bith leantainn gu dàil ann an sgaoileadh bhidio chan ann a-mhàin gun a bhith a’ lughdachadh an taca ri àrd-ùrlaran eile, ach eadhon a ’dol am meud.

Gus an obraich WebRTC gu ceart, an toiseach, feumar ùrachadh teicneòlach a dhèanamh air a ’chruach airson a bhith ag obair le bhidio lìn. Sin a rinn sinn.

An toiseach, chuir sinn an gnÏomh frithealaiche protocol comharran WebRTC thairis air Websocket, agus chuir sinn cuideachd frithealaiche co-aoisean WebRTC san sgòth stèidhichte air an webrtc.org SDK. Is e an obair aige sruthan bhidio a sgaoileadh gu co-aoisean WebRTC teachdaiche ann an cruth H.264 + Opus/G.711 gun transcoding bhidio.

Thagh sinn Websocket mar am pròtacal comharran oir tha taic àrd-inbhe aige mu thràth anns a h-uile brobhsair lÏn mòr-chòrdte. Mar thoradh air an seo, faodaidh tu chan e a-mhàin leasachadh os cionn a lughdachadh gu mòr, ach cuideachd seachain Úine agus goireasan air crathadh làimhe TCP agus TLS a-rithist an coimeas ri AJAX.

Is e an fhìrinn, gu gnàthach, nach eil WebRTC a’ toirt seachad am protocol comharran a tha riatanach gus conaltradh bhidio fìor-ùine a rèiteachadh, a chumail suas agus a thoirt gu crìch eadar an stòr agus tagraidhean teachdaiche.

Agus gus teicneòlas comharran a chuir an gnìomh gu neo-eisimeileach, dh'fheumadh sinn ar frithealaiche comharran fhèin a leasachadh le taic airson grunn phròtacalan lìn (Websocet, WebRTC). Agus leis a’ chomas air seiseanan agus fiosan a riaghladh gu tèarainte ann an àm fìor, riaghladh bhidio agus mòran a bharrachd.

Fhuair sinn thairis air crìochan P2P le bhith a’ lughdachadh latency chan ann tro P2P, ach tro UDP agus smachd sruthadh gus latency a lughdachadh. Tha seo cuideachd air a thogail a-steach do WebRTC, leis gur e am prìomh chùis cleachdaidh còmhraidhean p2p tro bhrobhsair.

Anns a ’chliant gluasadach, chuir sinn an cluicheadair an gnìomh a’ cleachdadh an webrtc.org SDK, leis nach eil ann ach gu bheil e a ’cur an gnìomh smachd sruthadh gu ceart, gu bheil na sgeamaichean aithnichte airson Ceartachadh Mearachd air adhart (FEC), agus gu ceart a’ cur an gnìomh an uidheamachd airson pacaidean a chuir air ais airson a h-uile brobhsair. Tha e cuideachd cudromach gu bheil an webrtc.org SDK ga leasachadh gu gnìomhach le Google.

Dè an toradh a th’ ann a bhith a’ buileachadh WebRTC?


Gus coimhead air bhidio beò bho chamarathan, tha sinn air cluicheadair làn-leasaichte ùr stèidhichte air WebRTC a chuir ris a’ chunntas pearsanta agad. Bidh e a ’toirt seachad astar luchdachadh bhidio luath agus a’ cuir às gu tur an duilgheadas a thaobh latency a ’cruinneachadh mar a bhios an ùine seallaidh a’ dol am meud.

Às deidh dhuinn taic WebRTC a thoirt a-steach ann an seirbheis sgòthan Ivideon, faodaidh sinn a ràdh le làn mhisneachd gum faod ar teachdaichean a-nis coimhead air bhidio beò làn-chuimseach. A-nis chan eil an dàil ann a bhith a’ craoladh sreathan bhidio nas fhaide na aon diog! Airson coimeas a dhèanamh, thug an einnsean HLS roimhe seachad lìbhrigeadh bhidio le dàil de 5-7 diogan. Tha an eadar-dhealachadh ann an astar taisbeanaidh bhidio glè chudromach, agus mothaichidh an neach-cleachdaidh e sa bhad às deidh dha tòiseachadh ag obair leis an t-seirbheis bhidio againn.

Mar a bha sinn an dùil, tha buileachadh a’ chluicheadair ùr air freagairteachd PTZ agus conaltradh guth leis a’ chamara a leasachadh.

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan

Chan eil ann ach aon phuing seòlta air a bheil sinn airson aire a tharraing. Tha an cluicheadair WebRTC ùr ag obair ann am modh deuchainn an-dràsta. Agus is ann air sgàth sin nach eil sinn ga chomasachadh airson ar teachdaichean gu lèir gu bunaiteach. Ach faodaidh tu fhèin a chuir an gnìomh le bhith a ’comasachadh an rud co-fhreagarrach ann an roghainnean a’ chamara (airson seo a dhèanamh feumaidh tu a dhol gu cunntas pearsanta).

Feartan buileachadh WebRTC anns an t-seirbheis Ivideon

WebRTC agus sgrùdadh bhidio: mar a rinn sinn a’ chùis air latency bhidio bho chamarathan

Tha WebRTC fhathast na theicneòlas deuchainneach an-dràsta. Chan eil an taic aige fhathast air a chuir an gnÏomh gu ceart anns a h-uile brobhsair agus inneal cleachdaiche, agus cuideachd chan ann anns a h-uile camara.

Is e seo dÏreach carson nach eil sinn fhathast air an cluicheadair WebRTC a dhèanamh mar an àbhaist airson a h-uile neach-cleachdaidh.

Airson a-nis, tha sinn a’ moladh WebRTC a chleachdadh a-mhàin ann am brobhsairean Google Chrome. Tha na dreachan as ùire de Firefox agus Safari cuideachd a 'toirt taic don teicneòlas seo, ach, gu mì-fhortanach, tha e fhathast neo-sheasmhach.

Chan eil sinn fhathast air taic WebRTC a chuir an gnÏomh airson brobhsairean air innealan gluasadach. An-dràsta, ma logas tu a-steach bho inneal gluasadach agus ma chuireas tu WebRTC an gnÏomh, chan obraich am modh seo. Ach, tha WebRTC ri fhaighinn anns na tagraidhean gluasadach againn airson Android и iOS.

Agus a’ crìochnachadh na sgeòil mu fheartan buileachadh WebRTC nar seirbheis, bheir sinn fa-near dà phuing nas seòlta.

An toiseach, tha an teicneòlas ag amas air bhidio beò a chraoladh ann an àm fìor. Mar sin, mura h-eil leud-bann gu leòr aig an t-sianal agad airson a’ bhidio a chraoladh, chì thu tuiteaman frèam (le HLS chì thu crìonadh bhidio agus barrachd latency, ach cha bhi frèam ann), ach bidh a’ bhidio fhathast air a chraoladh ann am fìor uair.

San dàrna h-àite, leis gu bheil an teicneòlas air a dhealbhadh gus obrachadh gu sònraichte le bhidio beò ann an àm fÏor, cha bhith sinn ga chleachdadh gus obrachadh le dàta bhidio tasglann.

Atharraichean eile air an t-seirbheis

Aig an àm seo, chan eil Flash an sàs tuilleadh anns an inneal taghadh einnsean fèin-ghluasadach. Faodaidh tu fhathast cluicheadair mar seo a chleachdadh, ach airson seo a dhèanamh feumaidh tu a thaghadh le làimh ann an roghainnean a’ chunntais no a ’chamara. Chan eil seo na mholadh air fasan, is e dìreach a rèir staitistig ar seirbheis, cha mhòr nach eil luchd-cleachdaidh air fhàgail ag obair le Flash. Agus a 'feuchainn ri faighinn a-mach a bheil brabhsair an neach-cleachdaidh a' toirt taic dha, bidh sinn a 'call timcheall air 2 dhiog de ùine luachmhor.

Seo tar-shealladh goirid air na h-atharrachaidhean a tha a’ feitheamh riut anns an t-siostam sgrùdaidh bhidio sgòthan agus an cunntas pearsanta againn. Fuirich còmhla rinn agus lean na naidheachdan!

Source: www.habr.com

Ceannaich aoigheachd earbsach airson làraich le dìon DDoS, frithealaichean VPS VDS 🔥 Ceannaich aoigheachd làrach-lìn earbsach le dìon DDoS, frithealaichean VPS VDS | ProHoster