Palvelimeton videonkäsittelyputki AWS MediaConvertilla
Videoalusta tarvitsi skaalautuvan, kustannustehokkaan tavan käsitellä vaihtelevia koodaustyömääriä, vähäisen latausliikenteen hiljaisista jaksoista satojen samanaikaisten töiden huippuaikoihin.
Keskustele Projektistasi
Haaste
Kiinteäkapasiteettinen koodausinfrastruktuuri oli joko yliresursoitu (kallista) tai aliresursoitu (hidasta):
- Koodaustyökuormat olivat erittäin vaihtelevia ja ennustamattomia
- Huippujaksojen aikana sisällön julkaisut saattoivat aiheuttaa 100-kertaisen volyymin normaaliin verrattuna
- Omien koodauspalvelimien jatkuva ylläpito 24/7 oli kallista hiljaisina aikoina
- Työtehtävien epäonnistumiset vaativat automaattisen tunnistuksen ja uudelleenyrityksen ilman manuaalista puuttumista
Meidän Ratkaisumme
Toteutimme palvelimettoman koodausputken käyttäen AWS Lambda -triggereitä ja AWS MediaConvertia joustavaan, maksu per käyttö -videonkäsittelyyn.
Arkkitehtuuri
- Laukaisin: AWS Lambda -funktio, joka valvoo S3-lataustapahtumia
- Koodaus: AWS MediaConvert kumppanikohtaisilla työmalleilla
- Viestinvälitys: ActiveMQ/STOMP asynkronisia työn tilapäivityksiä varten
- Valvonta: NestJS-koodaajapääte, joka seuraa työn edistymistä
- Tallennus: AWS S3 syöttö-/tulostusresursseille
Putkilinjan kulku
- S3-tapahtuma - Videon lataus laukaisee Lambda-funktion
- Työn määritys - Lambda lukee kumppaniprofiilin ja rakentaa MediaConvert-työn
- Lähetys - MediaConvert-työ lähetetään sopivilla tulostusasetuksilla
- Edistymisen seuranta - STOMP-viestit välittävät tilan koodaajan taustaohjelmalle
- Valmistuminen - Tulostusresurssit tallennetaan S3:een, metatiedot päivitetään MongoDB:hen
- Virheenkäsittely - Epäonnistuneet työt jonotetaan uudelleenyritykseen eksponentiaalisella viiveellä
Tärkeimmät ominaisuudet
- Nolla käyttämättömän ajan kustannus - Lambda ja MediaConvert veloittavat vain todellisesta käytöstä
- Joustava skaalaus - Käsittelee 1 – 1000+ samanaikaista koodaustyötä
- Kumppanimallit - Esikonfiguroidut MediaConvert-työmallit kumppanikohtaisesti
- Tapahtumapohjainen - S3-tapahtumat laukaisevat automaattisesti koodauskulkujen käynnistyksen
- Kattava valvonta - Työn tila, kesto ja virheiden seuranta
Tulokset
Teknologiapino
caseStudyDetail.more Tapaustutkimukset
Tutustu lisää teknisiin toteutuksiimme
Asiakaspuolen mainosten upotus (CSAI) SCTE-35-merkkien jäsennyksellä ja monialustaisen soittimen integroinnilla
Videoiden suoratoistoalustan piti toteuttaa Client-Side Ad Insertion (CSAI) verkko-, mobiili- ja Connected TV -sovellusten yli — mahdollistaen personoidut, laitekohtaiset mainoskokemukset täydellä mainosinteraktion tuella (klikkaavat peittokuvat, kumppanibannerit, ohituspainikkeet), joita server-side insertion ei voi tarjota.
SCTE-35-mainosmerkkisignalointi ja mediasisältöjen trailerien lisäysputki
Suoratoistomedian yritys tarvitsi vankan, automatisoidun putken SCTE-35-mainosmerkkien lisäämiseen live- ja VOD-streameihin, sekä kyvyn lisätä mainostrailereita (pre-roll, mid-roll ja post-roll) tarkasti ajoitettuihin kohtiin – mahdollistaen kaupallistamisen FAST-kanavilla, live-tapahtumissa ja tilaussisältökirjastoissa.
Usein kysytyt kysymykset
MicrocosmWorks suunnitteli segmentoidun käsittelyarkkitehtuurin, jossa Step Functions orkestroi putkea: Lambda-funktiot jakavat lähdevideot segmenteiksi, AWS MediaConvert hoitaa varsinaisen transkoodauksen ilman Lambdan aikarajoituksia, ja lopullinen Lambda yhdistää tulosteen. Tämä hybridimenetelmä säilyttää palvelimettoman kustannusmallin samalla kun se tukee minkä tahansa pituisten videoiden käsittelyä.
MicrocosmWorks mittasi 70-85 %:n kustannussäästöt ruuhkautuville videonkäsittelytyökuormille verrattuna dedikoitujen EC2-koodausinstanssien käyttöön. Palvelimeton putki ei aiheuta kustannuksia joutokäynnillä ja skaalautuu satoihin samanaikaisiin töihin ruuhka-aikoina, AWS MediaConvertin minuuttikohtaisen hinnoittelun poistaessa tarpeen varautua huippukapasiteettiin.
MicrocosmWorks konfiguroi AWS Step Functions -palvelun vaihekohtaisilla uudelleenyrityskäytännöillä ja eksponentiaalisella takaisinvedolla, mikä varmistaa, että epäonnistunut transkoodausvaihe yrittää uudelleen automaattisesti käynnistämättä koko pipelineä uudelleen. Jokainen vaihe kirjoittaa välitulosteet S3:een, joten palautuminen jatkuu viimeisestä onnistuneesta tarkistuspisteestä sen sijaan, että käsittely aloitettaisiin alusta lähdetiedostosta.
MicrocosmWorks optimoi putkiston lähes reaaliaikaisiin käyttötapauksiin kylmäkäynnistyksen lievennyksellä käyttäen varattua samanaikaisuutta kriittisissä Lambda functions -komponenteissa ja MediaConvertin varatuilla transkoodauspaikoilla. Reaaliaikaisissa työnkuluissa putkisto saavuttaa 2-5 minuutin päästä päähän -viiveen latauksesta jakeluun, mikä soveltuu klippien poimintaan ja kohokohtien jakeluun.
MicrocosmWorks rakentaa palvelimetonta videoinfrastruktuuria tuntihintaan $25-$45/tunti. Täydellinen MediaConvertiin perustuva putki, sisältäen Step Functions -orkestroinnin, S3:n elinkaarihallinnan ja monitoroinnin, vaatii tyypillisesti 250-400 kehitystuntia. Arkkitehtuurin käyttöperusteinen malli tarkoittaa, että asiakkaat maksavat vain AWS-kustannuksia suhteessa heidän todelliseen käsittelyvolyymiinsä.
Valmis Muuttamaan Liiketoimintaasi?
Keskustellaan siitä, miten voimme soveltaa vastaavia ratkaisuja haasteisiisi.