Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Mkparịta ụka vidiyo bụ ụzọ bụ isi nkwurịta okwu n'etiti onye nkuzi na nwa akwụkwọ na ikpo okwu Vimbox. Anyị kwụsịrị Skype ogologo oge gara aga, nwalere ọtụtụ ngwọta ndị ọzọ ma mesịa biri na WebRTC - Janus-gateway. Ruo oge ụfọdụ, anyị nwere obi ụtọ na ihe niile, ma ka ụfọdụ akụkụ ọjọọ nọgidere na-apụta. N'ihi ya, e mepụtara ntụzịaka vidiyo dị iche.

Ajụrụ m Kirill Rogovoy, onye isi nke ntụziaka ọhụrụ ahụ, ka m kwuo banyere mmalite nke nkwurịta okwu vidiyo na Skyeng, nsogbu ndị a chọpụtara, ngwọta na crutches nke anyị na-emecha jiri mee ihe. Anyị na-atụ anya na isiokwu ahụ ga-aba uru maka ụlọ ọrụ ndị na-emepụtakwa vidiyo n'onwe ha site na ngwa weebụ.

A bit nke akụkọ ihe mere eme

N'oge okpomọkụ nke 2017, onye isi nke Skyeng Development, Sergey Safonov, kwuru na Backend Conf na akụkọ banyere otú anyị si "gbahapụ Skype na mejuputa WebRTC." Ndị nwere mmasị nwere ike lelee ndekọ okwu na njikọ (~ 45 min), na ebe a ka m ga-akọwapụta nkenke isi ihe ya.

Maka ụlọ akwụkwọ Skyeng, nkwurịta okwu vidiyo na-abụkarị ụzọ izizi nke nzikọrịta ozi-ụmụ akwụkwọ. Na mbụ, a na-eji Skype eme ihe, mana ọ bụghị afọ ojuju maka ọtụtụ ihe kpatara ya, nke bụ isi n'ihi enweghị ndekọ na enweghị ike ịbanye ozugbo na ngwa weebụ. Ya mere, anyị mere ụdị nnwale niile.

N'ezie, ihe anyị chọrọ maka nkwukọrịta vidiyo bụ ihe ndị a:
- nkwụsi ike;
- ọnụ ala dị ala kwa nkuzi;
- nkuzi ndekọ;
- nsochi onye na-ekwu ole (ọ dị anyị mkpa na ụmụ akwụkwọ na-ekwu okwu karịa onye nkụzi n'oge nkuzi);
- linear scaling;
- ike iji ma UDP na TCP.

Onye mbụ nwara bụ itinye Tokbox na 2013. Ihe niile dị mma, ma ọ tụgharịrị dị oke ọnụ - 113 rubles kwa nkuzi - wee rie uru ahụ.

Mgbe ahụ na 2015, Voximplant jikọtara. Nke a bụ ọrụ anyị chọrọ iji soro onye kwuru ole, ma n'otu oge ahụ ihe ngwọta dị ọnụ ala karịa: ọ bụrụ na edere ụda naanị, ọ na-efu 20 rubles kwa nkuzi. Agbanyeghị, ọ na-arụ ọrụ naanị site na UDP ma enweghị ike ịgbanwe gaa na TCP. Agbanyeghị, ihe dị ka 40% nke ụmụ akwụkwọ kwụsịrị iji ya.

Otu afọ mgbe e mesịrị, anyị malitere inwe ụlọ ọrụ ahịa na ha onwe ha kpọmkwem chọrọ. Dịka ọmụmaatụ, ihe niile kwesịrị ịrụ ọrụ site na ihe nchọgharị; ụlọ ọrụ na-emepe naanị http na https; Ya bụ enweghị Skype ma ọ bụ UDP. Ndị ahịa ụlọ ọrụ = ego, ya mere ha laghachiri na Tokbox, mana nsogbu nke ọnụahịa akwụsịghị.

Ngwọta - WebRTC na Janus

Ekpebiri iji ikpo okwu ihe nchọgharị maka nzikọrịta vidiyo nke ndị ọgbọ na ndị ọgbọ WebRTC. Ọ bụ ya na-ahụ maka ịmepụta njikọ, itinye koodu na idezi iyi, ịmekọrịta egwu na njikwa mma na ijikwa glitches netwọkụ. Maka akụkụ anyị, anyị ga-ahụrịrị na-agụ iyi site na igwefoto na igwe okwu, ịse vidiyo, ijikwa njikọ ahụ, guzobe njikọ WebRTC na ịnyefe iyi na ya, yana iziga ozi nrịbama n'etiti ndị ahịa iji guzobe njikọ (WebRTC n'onwe ya na-akọwa naanị usoro data, ma ọ bụghị usoro ya na-enyefe). Ọ bụrụ na ndị ahịa nọ n'azụ NAT, WebRTC na-ejikọ sava STUN; ọ bụrụ na nke a anaghị enyere aka, tụgharịa sava.

Njikọ p2p oge niile ezughị anyị, n'ihi na anyị chọrọ ịdekọ nkuzi maka nyocha ọzọ ma ọ bụrụ na mkpesa. Ya mere, anyị na-eziga iyi WebRTC site na relay Ọnụ ụzọ Janus nke Meetecho. N'ihi ya, ndị ahịa amaghị adreesị ibe ha, na-ahụ naanị adreesị nkesa Janus; ọ na-arụkwa ọrụ nke ihe nkesa mgbaàmà. Janus nwere ọtụtụ njirimara anyị chọrọ: na-agbanwe na TCP na-akpaghị aka ma ọ bụrụ na onye ahịa ahụ egbochila UDP; nwere ike ịdekọ ma UDP na TCP iyi; scalable; Enwere ọbụna ngwa mgbakwunye arụnyere maka ule mgbago. Ọ bụrụ na ọ dị mkpa, STUN na TURN nkesa sitere na Twilio na-ejikọta ya na-akpaghị aka.

N'oge okpomọkụ nke 2017, anyị nwere sava Janus abụọ na-agba ọsọ, gbakwunyere ihe nkesa ọzọ maka nhazi faịlụ ọdịyo na vidiyo edere edekọ, ka ọ ghara iburu ndị nhazi nke ndị bụ isi. Mgbe ị na-ejikọta, a na-ahọrọ sava Janus na ndabere-ọbụna (nọmba njikọ). N'oge ahụ, nke a zuru ezu, dị ka mmetụta anyị si dị, o nyere ihe dị ka akụkụ nchekwa nchekwa anọ, pasent mmejuputa ihe dị ka 80. N'otu oge ahụ, a na-ebelata ọnụahịa ahụ ~ 2 rubles kwa nkuzi, gbakwunyere mmepe na nkwado.

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Ịlaghachi na isiokwu nke nkwurịta okwu vidiyo

Anyị na-enyocha nzaghachi sitere n'aka ụmụ akwụkwọ na ndị nkuzi mgbe niile iji chọpụta na dozie nsogbu n'oge. Ka ọ na-erule oge okpomọkụ nke 2018, ogo oku nọ n'ọnọdụ mbụ n'etiti mkpesa. N'otu aka ahụ, nke a pụtara na anyị emeriwo adịghị ike ndị ọzọ nke ọma. N'aka nke ọzọ, ọ dị mkpa ime ihe ngwa ngwa: ọ bụrụ na ihe mmụta ahụ mebiri emebi, anyị nwere ike ịla n'iyi na-efunahụ uru ya, mgbe ụfọdụ yana ọnụ ahịa ịzụta ngwugwu na-esote, ma ọ bụrụ na nkuzi mmeghe ahụ mebiri emebi, anyị nwere ike ịla n'iyi onye ahịa. kpam kpam.

N'oge ahụ, nkwurịta okwu vidiyo anyị ka nọ na ọnọdụ MVP. N'ikwu ya n'ụzọ dị mfe, ha malitere ya, ọ na-arụ ọrụ, ha na-ebuli ya otu ugboro, ha ghọtara otú e si eme ya - nke ọma, ọ dị mma. Ọ bụrụ na ọ na-arụ ọrụ, edozila ya. Ọ dịghị onye kpachaara anya lebara okwu banyere àgwà nzikọrịta ozi anya. Ka ọ na-erule August, ọ bịara doo anya na nke a enweghị ike ịga n'ihu, anyị wee malite ntụziaka dị iche iji chọpụta ihe na-ezighị ezi na WebRTC na Janus.

Na ntinye aka, ntụziaka a natara: ngwọta MVP, enweghị metrics, enweghị ihe mgbaru ọsọ, ọ dịghị usoro maka imeziwanye, ebe 7% nke ndị nkụzi na-eme mkpesa banyere àgwà nkwurịta okwu (enweghị data na ụmụ akwụkwọ).

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Ntuziaka ọhụrụ na-aga n'ihu

Iwu ahụ dị ka nke a:

  • Onye isi ngalaba, onye bụkwa onye nrụpụta isi.
  • QA na-enyere aka ịnwale mgbanwe, na-achọ ụzọ ọhụrụ iji mepụta ọnọdụ nkwurịta okwu na-adịghị akwụsi ike, na-akọkwa nsogbu site n'ahịrị ihu.
  • Onye nyocha ahụ na-achọkarị njikọ dị iche iche na data teknụzụ, na-emezi nyocha nke nzaghachi onye ọrụ, ma na-enyocha nsonaazụ nnwale.
  • Onye njikwa ngwaahịa na-enyere aka na ntụzịaka na oke nke akụrụngwa maka nnwale.
  • Onye nrụpụta nke abụọ na-enyekarị aka na mmemme yana ọrụ ndị metụtara ya.

Iji malite, anyị hibere metrik a pụrụ ịdabere na ya nke na-enyocha mgbanwe na nleba anya nzikọrịta ozi (nkezi karịa ụbọchị, izu, ọnwa). N'oge ahụ, ndị a bụ akara ule sitere n'aka ndị nkuzi; e mesịa, a na-agbakwụnye akara ule nke ụmụ akwụkwọ na ha. Mgbe ahụ, ha malitere ịmalite echiche banyere ihe na-adịghị mma, gbazie ya, na-eleba anya na mgbanwe mgbanwe. Anyị gara maka mkpụrụ osisi dị ala: dịka ọmụmaatụ, anyị dochie vp8 codec na vp9, arụmọrụ ahụ ka mma. Anyị gbalịrị igwu egwu na ntọala Janus ma mee nyocha ndị ọzọ - n'ọtụtụ ọnọdụ ha edugaghị n'ihe ọ bụla.

Na ọkwa nke abụọ, echiche pụtara: WebRTC bụ ngwọta ndị ọgbọ na ndị ọgbọ, anyị na-ejikwa sava n'etiti. Ikekwe nsogbu ahụ dị ebe a? Anyị malitere igwu ala wee chọta ọganihu kachasị mkpa ruo ugbu a.

N'oge ahụ, a na-ahọrọ ihe nkesa sitere na ọdọ mmiri site na iji algorithm nzuzu: onye ọ bụla nwere "ibu" nke ya, dabere na ọwa na ike, anyị gbalịrị iziga onye ọrụ na onye nwere "ibu" kasị ukwuu, na-enweghị. na-aṅa ntị na ebe onye ọrụ dị na mpaghara ala. N’ihi ya, onye nkụzi si St.

Emegharịrị algọridim: ugbu a, mgbe onye ọrụ mepere ikpo okwu anyị, anyị na-anakọta pings n'aka ya na sava niile na-eji Ajax. Mgbe ị na-emepụta njikọ, anyị na-ahọrọ otu ụzọ pings (onye nkuzi-ihe nkesa na nwa akwụkwọ-sava) na obere ego. Obere ping pụtara obere anya netwọkụ na ihe nkesa; mkpirisi anya pụtara obere ohere nke ịla n'iyi ngwugwu; Ọnwụ ngwugwu bụ nnukwu ihe na-adịghị mma na nkwurịta okwu vidiyo. The òkè nke negativity dara site na ọkara n'ime ọnwa atọ (iji mara mma, ndị ọzọ nnwale e rụrụ n'oge a, ma nke a fọrọ nke nta n'ezie nwere kasị mmetụta).

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

N'oge na-adịbeghị anya, anyị chọpụtara ihe ọzọ na-abụghị nke doro anya, mana o doro anya na ihe dị mkpa: kama otu ihe nkesa Janus dị ike na ọwa siri ike, ọ ka mma ịnweta abụọ dị mfe nke nwere bandwit dị nro. Nke a bịara doo anya mgbe anyị zụtara igwe dị ike na-atụ anya ịkwanye ọtụtụ ọnụ ụlọ (mmekọrịta mkparịta ụka) n'ime ha n'otu oge. Sava nwere oke bandwit, nke anyị nwere ike ịtụgharị n'ụzọ ziri ezi n'ime ọnụ ọgụgụ ụlọ - anyị maara ole enwere ike imeghe, dịka ọmụmaatụ, na 300 Mbit/s. Ozugbo enwere ọtụtụ ọnụ ụlọ mepere emepe na sava, anyị na-akwụsị ịhọrọ ya maka mmemme ọhụrụ ruo mgbe ibu na-ebelata. Echiche bụ na, mgbe ịzụrụ igwe dị ike, anyị ga-ebufe ọwa ahụ na ya kachasị elu, nke mere na n'ikpeazụ ọ ga-ejedebe site na nhazi na ebe nchekwa, ọ bụghị site na bandwit. Ma, ọ tụgharịrị na mgbe a ụfọdụ ọnụ ọgụgụ nke oghe ụlọ (420), n'agbanyeghị eziokwu na ibu na processor, ebe nchekwa na disk ka dị nnọọ anya site na ókè, negativity na-amalite na-abata na oru nkwado. N'ụzọ doro anya, ihe na-akawanye njọ n'ime Janus, ikekwe e nwekwara ihe mgbochi ụfọdụ n'ebe ahụ. Anyị malitere ịnwale, wedata oke bandwidth site na 300 ruo 200 Mbit / s, nsogbu ahụ wee pụọ. Ugbu a, anyị zụtara sava ọhụrụ atọ n'otu oge na njedebe dị ala na njirimara, anyị na-eche na nke a ga-eduga n'ịdị mma n'ịdị mma nke nkwurịta okwu. N’ezie, anyị anwaghị ịchọpụta ihe na-eme n’ebe ahụ; crotches anyị bụ ihe niile. N'ịgbachitere anyị, ka anyị kwuo na n'oge ahụ ọ dị mkpa iji dozie nsogbu ahụ dị ngwa ngwa ngwa o kwere mee, ọ bụghịkwa ime ya nke ọma; E wezụga nke ahụ, Janus maka anyị bụ igbe ojii nke edere na C, ọ dị oke ọnụ iji tinker na ya.

Site na Skype ruo WebRTC: ka anyị si hazie nkwurịta okwu vidiyo site na webụ

Ọfọn, na usoro anyị:

  • emelitere ndabere niile enwere ike imelite, ma na sava ma na onye ahịa (ndị a bụkwa nnwale, anyị nyochara nsonaazụ ya);
  • doziri chinchi niile achọpụtara metụtara ikpe akọwapụtara, dịka ọmụmaatụ, mgbe njikọ ahụ kwụsịrị na eweghachighị ya na-akpaghị aka;
  • Anyị nwere ọtụtụ nzukọ na ụlọ ọrụ na-arụ ọrụ na ngalaba nke nkwukọrịta vidiyo ma mara nsogbu anyị: egwuregwu ịgbasa, ịhazi webinars; anyị nwara ihe niile dị ka ọ bara uru nye anyị;
  • Mere nyocha teknụzụ nke ngwaike na nzikọrịta ozi nke ndị nkuzi, bụ ndị kacha mkpesa sitere.

Nnwale na mgbanwe ndị sochirinụ mere ka o kwe omume ibelata enweghị afọ ojuju na nkwukọrịta n'etiti ndị nkuzi site na 7,1% na Jenụwarị 2018 ruo 2,5% na Jenụwarị 2019.

Kedu ihe na-esote

Ịkwụsị ikpo okwu Vimbox anyị bụ otu n'ime ọrụ ụlọ ọrụ na-arụ maka 2019. Anyị nwere olile anya dị elu na anyị ga-enwe ike ịnọgide na-aga n'ihu ma ghara ịhụ nkwurịta okwu vidiyo na mkpesa kachasị elu. Anyị ghọtara na akụkụ dị ịrịba ama nke mkpesa ndị a metụtara lags na kọmputa ndị ọrụ na ịntanetị, mana anyị ga-ekpebi akụkụ a wee dozie ndị ọzọ. Ihe ọ bụla ọzọ bụ nsogbu teknụzụ, ọ dị ka anyị ga-enwe ike ịnagide ya.

Isi ihe isi ike bụ na anyị amaghị ruo ọkwa ọ ga-ekwe omume imeziwanye ogo. Ịchọta ụlọ a bụ isi ọrụ. Ya mere, a haziri nnwale abụọ:

  1. tụnyere vidiyo site na Janus na p2p oge niile na ọnọdụ ọgụ. Emeela nnwale a, ọ nweghị ọdịiche dị ịrịba ama dị n'etiti ihe ngwọta anyị na p2p;
  2. Ka anyị weta ọrụ (dị ọnụ) sitere na ụlọ ọrụ ndị na-enweta ego naanị na ngwọta nkwurịta okwu vidiyo, ma tụnyere ọnụọgụ nke negativity site na ha na nke dị ugbu a.

Nnwale abụọ a ga-eme ka anyị mata ihe mgbaru ọsọ a ga-enweta ma lekwasị anya na ya.

Tụkwasị na nke ahụ, e nwere ọtụtụ ọrụ ndị a pụrụ ịrụzi kwa mgbe:

  • Anyị na-emepụta metric teknuzu nke nzikọrịta ozi kama nyocha nke onwe;
  • Anyị na-eme ndekọ nnọkọ zuru ezu karị iji nyochaa n'ụzọ ziri ezi nke ọdịda ndị na-eme, ghọta mgbe na ebe kpọmkwem ha mere, na ihe ndị yiri ihe na-enweghị njikọ mere n'oge ahụ;
  • Anyị na-akwadebe ule njirimara njikọ akpaka tupu ọmụmụ ihe, ma na-enyekwa onye ahịa ohere iji aka ya nwalee njikọ ahụ iji belata ọnụ ọgụgụ nke negativity kpatara ngwaike ya na ọwa;
  • anyị ga-azụlite ma na-eduzi ọtụtụ ule nkwurịta okwu vidiyo na ọnọdụ adịghị mma, na mfu ngwugwu na-agbanwe agbanwe, wdg;
  • anyị na-agbanwe omume nke sava ma ọ bụrụ na enwere nsogbu iji mee ka ntachi obi dị njọ;
  • Anyị ga-adọ onye ọrụ aka na ntị ma ọ bụrụ na enwere ihe na-ezighị ezi na njikọ ya ma ọlị, dị ka Skype na-eme, ka ọ ghọta na nsogbu ahụ dị n'akụkụ ya.

Kemgbe Eprel, ntuziaka nkwurịta okwu vidiyo aghọwo ọrụ dị iche iche zuru oke n'ime Skyeng, na-emeso ngwaahịa nke ya, ọ bụghị naanị akụkụ nke Vimbox. Nke a pụtara na anyị na-amalite ịchọ ndị mmadụ na na-arụ ọrụ na vidiyo na ọnọdụ oge niile. Ọfọn, dị ka mgbe niile Anyị na-achọ ọtụtụ ezigbo mmadụ.

Ma, n'ezie, anyị na-anọgide na-arụsi ọrụ ike na ndị mmadụ na ụlọ ọrụ na-arụ ọrụ na video nkwukọrịta. Ọ bụrụ na ị chọrọ ịgbanwe ahụmahụ na anyị, anyị ga-enwe obi ụtọ! Kwuo okwu, kpọtụrụ - anyị ga-aza onye ọ bụla.

isi: www.habr.com