Ki jan nou akselere kodaj videyo pa uit fwa

Ki jan nou akselere kodaj videyo pa uit fwa

Chak jou, dè milyon de telespektatè gade videyo sou entènèt la. Men, pou videyo a vin disponib, li pa dwe sèlman telechaje sou sèvè a, men tou, li dwe trete. Pi vit sa rive, se pi bon pou sèvis la ak itilizatè li yo.

Non mwen se Askar Kamalov, yon ane de sa mwen te rantre nan ekip teknoloji videyo Yandex la. Jodi a mwen pral yon ti tan di lektè Habr sou fason, pa paralelize pwosesis la kodaj, nou jere siyifikativman akselere livrezon videyo a itilizatè a.

Pòs sa a pral prensipalman nan enterè moun ki pa te deja panse sou sa k ap pase anba kapo a nan sèvis videyo. Nan kòmantè yo ou ka poze kesyon epi sijere sijè pou pwochen pòs yo.

Kèk mo sou travay la li menm. Yandex pa sèlman ede w chèche videyo sou lòt sit, men tou, magazen videyo pou pwòp sèvis li yo. Kit se yon pwogram orijinal oswa yon match espò sou lè, yon fim sou KinoPoisk oswa videyo sou Zen ak Nouvèl - tout bagay sa yo telechaje sou sèvè nou yo. Nan lòd pou itilizatè yo gade videyo a, li bezwen yo dwe prepare: konvèti nan fòma ki nesesè yo, kreye yon aperçu, oswa menm kouri atravè teknoloji. DeepHD. Yon dosye ki pa prepare jis pran espas. Anplis, nou ap pale pa sèlman sou itilizasyon pi bon pyès ki nan konpitè, men tou, sou vitès livrezon kontni bay itilizatè yo. Egzanp: yo ka chèche yon anrejistreman moman desizif yon match Hockey nan yon minit apre evènman an li menm.

Sekans kodaj

Se konsa, kontantman itilizatè a depann lajman de konbyen vit videyo a vin disponib. Ak sa a se sitou detèmine pa vitès la transkodaj. Lè pa gen okenn kondisyon strik pou vitès téléchargement videyo, lè sa a pa gen pwoblèm. Ou pran yon sèl, fichye endivizib, konvèti li, epi telechaje li. Nan kòmansman vwayaj nou an, men ki jan nou te travay:

Ki jan nou akselere kodaj videyo pa uit fwa

Kliyan an telechaje videyo a nan depo a, eleman analizeur a kolekte enfòmasyon meta epi transfere videyo a nan eleman Travayè a pou konvèsyon. Tout etap yo fèt an sekans. Nan ka sa a, ka gen anpil serveurs kodaj, men se sèlman youn ki okipe trete yon videyo espesifik. Senp, dyagram transparan. Sa a se kote avantaj li yo fini. Konplo sa a ka sèlman echèl vètikal (akòz acha a nan sèvè ki pi pwisan).

Sekans kodaj ak rezilta entèmedyè

Pou yon jan kanmenm lis soti tann nan douloure, endistri a te vini ak yon opsyon kodaj rapid. Non an se twonpe, paske an reyalite, kodaj konplè rive sekans epi li pran menm tan. Men, ak yon rezilta entèmedyè. Lide a se sa a: prepare epi pibliye yon vèsyon ki ba rezolisyon nan videyo a pi vit ke posib, epi sèlman Lè sa a, vèsyon ki pi wo rezolisyon yo.

Sou yon bò, videyo vin disponib pi vit. Epi li itil pou evènman enpòtan. Men, nan lòt men an, foto a vire soti twoub, ak sa a anbete telespektatè yo.

Li sanble ke ou bezwen pa sèlman byen vit trete videyo a, men tou, kenbe bon jan kalite li yo. Sa a se sa itilizatè yo atann de yon sèvis videyo kounye a. Li ka sanble ke li se ase yo achte serveurs yo ki pi pwodiktif (ak regilyèman ajou yo tout nan yon fwa). Men, sa a se yon bout mouri, paske toujou gen yon videyo ki pral fè menm pyès ki nan konpitè ki pi pwisan ralanti.

Kodaj paralèl

Li pi efikas pou divize yon pwoblèm konplèks nan anpil pwoblèm mwens konplèks epi rezoud yo an paralèl sou diferan serveurs. Sa a se MapReduce pou videyo. Nan ka sa a, nou pa limite pa pèfòmans nan yon sèl sèvè epi yo ka echèl orizontal (nan ajoute nouvo machin).

By wout la, lide a nan divize videyo an ti moso, trete yo nan paralèl ak kole yo ansanm se pa kèk sekrè. Ou ka jwenn anpil referans sou apwòch sa a (pa egzanp, sou Habré mwen rekòmande yon pòs sou pwojè a DistVIDc). Men, sa a pa fè li pi fasil an jeneral, paske ou pa ka jis pran yon solisyon pare ak bati li nan kay ou. Nou bezwen adaptasyon ak enfrastrikti nou an, videyo nou an e menm chaj nou an. An jeneral, li pi fasil pou ekri pwòp ou a.

Se konsa, nan nouvo achitekti a, nou divize blòk travayè monolitik ak kodaj sekans nan mikwosèvis Segmenter, Tcoder, Combiner.

Ki jan nou akselere kodaj videyo pa uit fwa

  1. Segmenter kase videyo a an fragman apeprè 10 segonn. Fragman yo konpoze de youn oswa plis GOP (gwoup foto). Chak GOP se endepandan epi kode separeman pou li ka dekode san referans ak ankadreman ki soti nan lòt GOP. Sa vle di, fragman yo ka jwe poukont youn ak lòt. Sharding sa a diminye latansi, sa ki pèmèt pwosesis kòmanse pi bonè.
  2. Tcoder trete chak fragman. Li pran yon travay nan keu a, telechaje yon fragman nan depo a, kode li nan rezolisyon diferan (sonje ke jwè a ka chwazi yon vèsyon ki baze sou vitès koneksyon an), Lè sa a, mete rezilta a tounen nan depo a epi make fragman an kòm trete. nan baz done a. Lè w fin trete tout fragman yo, Tcoder voye travay la pou jenere rezilta pou pwochen eleman an.
  3. Combiner kolekte rezilta yo ansanm: telechaje tout fragman yo te fè pa Tcoder, jenere kouran pou rezolisyon diferan.

Kèk mo sou son. Codec odyo AAC ki pi popilè a gen yon karakteristik dezagreyab. Si ou kode fragman separeman, Lè sa a, ou tou senpleman pa yo pral kapab kole yo ansanm san pwoblèm. Tranzisyon yo pral aparan. Kodèk videyo pa gen pwoblèm sa a. Teyorikman, ou ka chèche yon solisyon teknik konplèks, men jwèt sa a tou senpleman pa vo chandèl la ankò (odyo peze siyifikativman mwens pase videyo). Se poutèt sa, se sèlman videyo a kode nan paralèl, epi yo trete tout tras odyo a.

Jwenn

Mèsi a pwosesis videyo paralèl, nou te siyifikativman redwi delè ki genyen ant yon videyo yo te Uploaded ba nou ak yo te disponib pou itilizatè yo. Pou egzanp, anvan li te kapab pran de zè de tan pou kreye plizyè vèsyon konplè nan kalite diferan pou yon fim FullHD ki dire yon èdtan ak yon mwatye. Koulye a, tout bagay sa yo pran 15 minit. Anplis, ak pwosesis paralèl, nou kreye yon vèsyon wo-rezolisyon menm pi vit pase yon vèsyon ki ba rezolisyon ak ansyen apwòch rezilta entèmedyè.

Ak yon lòt bagay ankò. Avèk apwòch la fin vye granmoun, swa pa te gen ase serveurs, oswa yo te san fè anyen konsa san travay. Kodaj paralèl pèmèt ou ogmante pati nan resiklaj fè. Koulye a, gwoup nou an ki gen plis pase yon mil serveurs toujou okipe ak yon bagay.

An reyalite, toujou gen plas pou amelyorasyon. Pou egzanp, nou ka ekonomize tan enpòtan si nou kòmanse trete fragman nan videyo a anvan li rive nan nou an antye. Jan yo di, gen plis k ap vini.

Ekri nan kòmantè yo ki travay nan domèn travay ak videyo ou ta renmen li sou.

Lyen itil nan eksperyans nan kòlèg endistri yo

Sous: www.habr.com

Add nouvo kòmantè