Þjónusta fyrir umbrotið á miðlum
Yfirlit máls
Þetta er skýjatengd miðlaumbreytingarþjónusta sem tekur vídeó- og hljóðskrár og breytir þeim í HLS streymisform með aðlögun á bitahraða. Kerfið hlustar á SQS biðröð eftir nýjum skrám, keyrir Kubernetes verk fyrir hverja skrá og framleiðir heildstakt safn af m3u8 spilalistum og .ts hlutum tilbúnum fyrir hvaða nútímaviðspilara sem er.
Það styður margar upplausnir fyrir vídeó, marga bitahraða fyrir hljóð, og sér um vídeó með mörgum hljóðrásum - þar á meðal mismunandi tungumál eða athugasemdir. Þjónustan vinnur með mörgum verkefnum samtímis og raðar niðurstöðum í sér möppur á S3 eftir verkefni eða útgefanda.
Markmið: Að byggja upp fullkomlega sjálfvirka þjónustu sem umbreytir hvaða vídeó- eða hljóðskrá sem er í HLS form án handvirkrar íhlutunar - með vinnslu yfir mörg verkefni, umsjón yfir fjölbreyttum efnisgerðum og stigstærð niður í núll þegar hún er ónotuð.
Lykilupplýsingar um verkefnið
Iðnaðir
Miðlar og skemmtun, vídeóstreymisvettvangar, OTT og útsendingarþjónustur, stafrænt útgáfustarf, efnisdreifingarnet — hver fyrirtæki sem þarf að dreifa vídeó- eða hljóðefni til enda notenda á mörgum tækjum og mismunandi nettengingum.
Þjónustur
SQS biðraðarvinnsla með löngu upplýsingaöflun og stjórnun á sýnileikatímum, FFmpeg og FFprobe miðla umbreytingu og straumgreiningu, Kubernetes verkefnastjórnun með tímabundnum gámum og hnútahentleika, samhliða S3 upphleðslu með hreinsun fyrir forhleðslu.
Lausnir
Fjölupplausnar HLS vídeó — 1080p, 720p, 480p, 360p, 240p með aðlögun bitahraða, fjölumfjöllunar hljóð HLS — 32, 64, 96, 128, 192 kbps fyrir hverja hljóðrás, sjálfvirk uppgötvun allra hljóðstrauma með tungumálalýsingu, smámyndir við 2 sekúndna tímamörk, lággæði MP4 forskoðun, MP3 og WAV eintök.
Tækni
AWS SQS, S3, Kubernetes, FFmpeg, FFprobe, H.264, AAC/HE-AAC, HLS/m3u8, NVIDIA NVENC, Intel Quick Sync, EC2 sjálfvirk stigstjórnun, Docker, Helm
Vandamál
Ferlið
Allur ferillinn fer fram án mannlegrar íhlutunar - frá því skrá lendir á S3 þar til endanlegt HLS úttak er tilbúið til spilunar. Hver skref hleypur snyrtilega af stað til næsta, með innbyggðum öryggisráðstöfunum fyrir bilanir, afrit og samkeppni um auðlindir. Hér fyrir neðan sést hvernig kerfið vinnur skrá í gegnum heildar umbreytingarferlið.
Biðraðarupplýsingar
Verkefnastjórinn keyrir á Kubernetes og les SQS biðröðina með löngu upplýsingaöflun. Þegar skilaboð berast greinir hann S3 karfa og hlutalykil til að þekkja upprunaröskrá.
Forvörn gegn afriti
Áður en nýtt verkefni er skapað athugar stjórnandi hvort Kubernetes verkefni fyrir sömu skrá sé þegar til. Ef svo er, er skilaboðum bætt aftur inn í biðröð með töf til að forðast tvöfalda vinnslu.
Sköpun Kubernetes verkefnis
Nýr gámi er búinn til úr sniðmáti með réttri auðlindamörk, hnútahentleika fyrir ARM-grunnkelda og tímabundnum gámum fyrir tímabundnar skrár, inngöngu, úttak og skrásetningar.
Vídéo- og hljóðumbreyting
FFmpeg umbreytir vídeó í fimm HLS upplausnir (1080p→240p) með 4 sekúndna hlutum. Hver hljóðrás er uppgötvuð og umbreytt í fimm bitahraðaflokka — 32 til 192 kbps.
Búið til meistaraspilunarlista
Ein meistaraskrá m3u8 vísar í allar vídeóupplausnir og hljóðrásir með tungumálalýsingu - sem gerir kleift að aðlaga streymi og skipta um tungumál í hvaða nútímaviðspilara sem er.
Hleðsla, hreinsun og sjálfvirk stigstjórnun
Allar skrár hlaðast upp á S3 samhliða í gegnum 500 þrepa þráðapökk. Gamlar HLS einingar eru hreinsaðar áður en nýtt safn lendir. Sjálfvirka stigstjórnunin lætur hnútana verða núll þegar biðröðin tæmist.
Lausnir
Lykilatriði lausnarinnar
Aðlögunarhæfur Bitahraði Vídeó - 5 stig — 240p (300 kbps) → 1080p (5000 kbps) í einni spilalista. Sjálfvirk gæðaval miðað við tengihraða.
Fjölrásahljóð með tungumálamerkjum — Greinir og umbreytir öllum hljóðsporum, þar á meðal athugasemdum og lýsingum, á meðan tungumálaupplýsingar eru varðveittar.
Sjálfvirk köðkunargreining — Notar NVIDIA / Intel / AMD örvun eða hugbúnaðarvarapróf ef engin GPU er til staðar.
Sjálfvirk stigstærðun án biðkostnaðar — EC2 hnútarnir minnka niður í núll þegar biðröðin er tóm. Virk verkefni eru varin gegn ótímabærum lokunum.
Fjölverkefna S3 einangrun — Hvert verkefni hefur sína eigin S3 útflutningsslóð. Styður bæði útgáfu- og þáttaröðarskrártrjár.
Niðurstöður í tölum
1080p
Fimm aðlögunarhæfir bitahraðaflokkar frá 240p við 300 kbps upp í fullan HD 1080p við 5000 kbps — spilarinn skiptir sjálfkrafa um gæði eftir tengihraða.
500x
Hundruð afurða skráa — köflum, spilunarlistum, forsíðumyndum, forsýningum — eru hlaðin upp til S3 samtímis með þræðapúli, sem heldur sendingartíma í lágmarki.
4sek
4 sekúndna HLS kaflar jafnvægi aðlögunarhraða við biðminnkunarárangur — spilari bregst við netbreytingum innan eins kaflaloka.
5x
Hvert hljóðspor — þar með talið athugasemdir og lýsingar — fær allt að fimm gæðastig frá 32 kbps (HE-AAC) upp í 192 kbps (LC-AAC) með hljóðstyrksjafnvæginu.