Palvelimeton videonkäsittelyputki AWS MediaConvertin avulla
Videoalusta tarvitsi skaalautuvan, kustannustehokkaan tavan käsitellä vaihtelevia koodaustyömääriä, hiljaisista jaksoista, joilla oli vähän latauksia, huippuaikoihin, joilla oli satoja samanaikaisia töitä.
Keskustele Projektistasi
Haaste
Kiinteäkapasiteettinen koodausinfrastruktuuri oli joko ylisuunniteltu (kallis) tai alisuunniteltu (hidas):
- Koodaustyömäärät olivat erittäin vaihtelevia ja ennustamattomia
- Huippujaksoina saattoi esiintyä 100-kertainen normaaliin verrattuna sisällön julkaisun aikana
- Omien koodauspalvelimien pyörittäminen 24/7 oli kallista hiljaisina aikoina
- Työn epäonnistumiset vaativat automaattisen tunnistuksen ja uudelleenyrityksen ilman manuaalista puuttumista
Meidän Ratkaisumme
Toteutimme palvelimettoman koodausputken käyttäen AWS Lambda -triggeriä ja AWS MediaConvertia joustavaan, käytön mukaan laskutettavaan videonkäsittelyyn.
Arkkitehtuuri
- Triggeri: 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-koodaustausta, joka seuraa työn edistymistä
- Tallennus: AWS S3 tulo-/lähtöresursseille
Putkilinjan kulku
- S3-tapahtuma – Videon lataus käynnistää Lambda-funktion
- Työn konfigurointi – 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 koodaustaustajärjestelmään
- Valmistuminen – Tulostusresurssit tallennetaan S3:een, metatiedot päivitetään MongoDB:ssä
- Virheenkäsittely – Epäonnistuneet työt jonotetaan uudelleenyritystä varten eksponentiaalisella viiveellä
Tärkeimmät ominaisuudet
- Nolla käyttämätöntä kustannusta – Lambda ja MediaConvert veloittavat vain todellisesta käytöstä
- Joustava skaalaus – Käsittelee 1–1000+ samanaikaista koodaustyötä
- Kumppanimallit – Esikonfiguroidut MediaConvert-työmallit kumppanikohtaisesti
- Tapahtumalähtöinen – S3-tapahtumat käynnistävät automaattisesti koodaustyönkulut
- 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 segmentoituun käsittelyyn perustuvan arkkitehtuurin, jossa Step Functions orkestroi putkilinjaa: Lambda-funktiot jakavat lähdevideot segmenteiksi, AWS MediaConvert hoitaa varsinaisen transkoodauksen ilman Lambdan aikakatkaisurajoituksia, ja lopullinen Lambda yhdistää tuloksen. Tämä hybridi lähestymistapa säilyttää palvelimettoman kustannusmallin ja tukee samalla minkä tahansa pituisia videoita.
MicrocosmWorks mittasi 70-85 %:n kustannussäästön purkausmaisille videonkäsittelykuormille verrattuna omistettujen EC2-koodausinstanssien ylläpitoon. Palvelimetton putkilinja ei aiheuta kustannuksia ollessaan joutokäynnillä ja skaalautuu satoihin samanaikaisiin töihin huippujaksoina, AWS MediaConvertin minuuttikohtaisen hinnoittelun ansiosta huippukapasiteetin ennakkovarausta ei tarvita.
MicrocosmWorks konfiguroi AWS Step Functionsin vaihekohtaisilla uudelleenyrityskäytännöillä ja eksponentiaalisella viiveellä, varmistaen, että epäonnistunut transkoodausvaihe yrittää uudelleen automaattisesti käynnistämättä koko putkilinjaa uudelleen. Jokainen vaihe kirjoittaa väliaikaiset tulosteet S3:een, joten palautus jatkuu viimeisestä onnistuneesta tarkistuspisteestä sen sijaan, että tiedostoa käsiteltäisiin uudelleen alusta.
MicrocosmWorks optimoi putkilinjan lähes reaaliaikaisiin käyttötapauksiin kylmäkäynnistysten lieventämiseksi käyttämällä varattua samanaikaisuutta kriittisissä Lambda-funktioissa ja MediaConvertin varatuilla transkoodauspaikoilla. Live-työnkuluissa putkilinja saavuttaa 2-5 minuutin päästä päähän -viiveen latauksesta toimitukseen, mikä sopii leikkeen poimintaan ja kohokohtien jakeluun.
MicrocosmWorks rakentaa palvelimetonta videoinfrastruktuuria hintaan 25-45 $/tunti, ja täydellinen MediaConvert-pohjainen putkilinja, mukaan lukien Step Functions -orkestrointi, S3-elinkaaren hallinta ja valvonta, vaatii tyypillisesti 250-400 kehitystuntia. Arkkitehtuurin käytön mukaan maksava malli tarkoittaa, että asiakkaat maksavat AWS-kustannuksia vain todellisen käsittelyvolyyminsa mukaisesti.
Valmis Muuttamaan Liiketoimintaasi?
Keskustellaan siitä, miten voimme soveltaa vastaavia ratkaisuja haasteisiisi.