Videoformater til internettet, en kort guide til at hjælpe dig med at vælge

Video på nettet vil stige i lang tid. Mens indlejring af Instagram- og Youtube-videoer er simpelt, er der flere og flere situationer - ligesom mange e-handelsbrugssager - kræver en brugerdefineret tilgang til videoudlevering.

Når det kommer til at indstille en videobehandlings- og leveringsrørledning, handler den første beslutning om de videoformater, der skal betjenes. Aspekter som UX, support (browsere og systemer), komprimeringseffektivitet eller kodningshastighed er sandsynligvis relevante for dette valg.

Baseret på min erfaring med medieoptimering til webvirksomheder prøver jeg her at fremhæve de vigtigste aspekter, der skal overvejes. Hvis du er på udkig efter en simpel omkodning og optimeringsmulighed ved hjælp af ffmpeg, kan du også tjekke denne artikel.

Beholdere og codecs

I modsætning til sædvanlige billedformater er det virkelig vigtigt at være opmærksom på forskellen mellem container og kodningsstandard. Filudvidelsen fortæller os, hvilken container, men ikke hvilken codec der bruges. Og den standard, der følges for at kode klippet, bestemmer, om det understøttes af browseren eller systemet.

For eksempel, mens det universelt understøttede videoformat til internettet bruger en mp4-beholder og H264-standarden til kodning, understøttes ikke hver mp4-fil universelt, da den kan være kodet under en anden standard, som H265.

Det bliver endda lidt mere komplekst med adaptiv bithastighed (ABR), som giver den bedste måde at være lydhør over for brugerens netværk og enhedsfunktioner.

Lad os se de vigtigste kombinationer af containere og kodning og levere standarder og forskellene mellem dem med hensyn til support, komprimeringseffektivitet, kodningshastighed og brugeroplevelse.

Progressiv video

H264 / AVC

King-formatet til video har en mp4-container med H264 / AVC-kodning. Nogle gange finder du det i en m4v-container (standardformat i håndbremse), et mp4-derivat udviklet af Apple til H264-videoer med DRM-beskyttelse.

Alle browsere og systemer - også oprindelige applikationer i både iOS og Android - understøtter dette format. Det er det sikre valg at undgå kompatibilitetsproblemer.

Desuden har næsten enhver enhed fra desktop til mobil understøttelse af hardwareacceleration til H264. Det er hurtigt at kode og afkode.

Alt i alt er kodning og levering af dette format virkelig let. Ligesom for billeder kan du blot indsætte linket til videoen ved hjælp af HTML5, og det fungerer med enhver browser derude.

Problemerne kan forekomme ved opløsninger over VGA, god visuel kvalitet -rater omkring 2000 kbps og over- og varer i flere sekunder. Når det ses gennem et mobilnetværk - i mange regioner også i hjemmeforbindelser i spidsbelastningstider - kan det lide båse og ombygning. Alternativet med at reducere kvaliteten vil producere artefakter som sløring, myg eller blokering.

H265 / HEVC

Ved hjælp af den samme beholder og H265 / HEVC-kodning finder vi et kraftigt videoformat, der giver meget højere komprimeringseffektivitet (ca. 50% lettere) og meget mindre risiko for artefakter end sløring. Problemet med dette format er, at support er begrænset til Apple-enheder, som inkluderer de store royalties i deres pris. Næsten kun Safari- og iOS-apps kan bruge det. Hvis du har mange iPhone- eller Mac-brugere, kan du medtage det med et tilbagefald til H264. Oplevelsen for dem bliver bedre.

Selv med hardwareacceleration - næsten kun tilgængelig på Apple-enheder - betyder det højere kompleksitet af dette format, at kodning er betydeligt langsommere, så det tager mere computing og mere tid at producere varianterne til levering.

VP9

Dette er open source royaltyfrit svar fra Google. I stedet for mp4 bruger den webm-containere, dybest set en mkv-container, men indstiller kodningsstandarden til VP8 eller VP9. In bringer lignende fordele til H265, måske lidt mindre effektiv, men stadig meget mere sammenlignet med H264. Igen tillader det at reducere vægten med langt mindre risiko for andre artefakter end sløring. Kodningshastigheden svarer til H265, som er langsom. Kodningshastigheden kan være noget at huske på, specielt i en intern kodning pipeline.

Bemærk, at mens en tidligere version (VP8) findes med samme support, anbefaler vi det slet ikke, da det ikke tilføjer nogen fordele til H264, som allerede er universelt understøttet. Brug af webm er kun berettiget med VP9-kodning.

Selvfølgelig er support til webm begrænset til Google-verdenen. Det betyder Chrome og Android. Igen har vi brug for et tilbagefald til H264.

AV1

En første stabile version af denne standard blev udgivet i marts 2018 med tilknytninger til både MP4- og MKV-containere. Det leverer lignende eller lidt højere gevinster i kompressionseffektivitet sammenlignet med H265, mens det er licensfrit. De sidste implementeringer har også forbedret dekodningshastigheden sammenlignet med H265, hvilket gør AV1-videoer til et overbevisende alternativ til weblevering.

De partnere, der er involveret i Alliance for Open Media, der skabte formatet, gør det muligt for bred støtte i den nærmeste fremtid. Det lover at feje alle de andre formater derude.

Imidlertid bør den nuværende implementering stadig betragtes som eksperimentel, og dens flaskehals koder stadig for hastighed. Manglen på hardwareacceleration til denne operation er helt klart et problem med de første løsninger, der forventes i slutningen af ​​året.

VVC

Det udvalg, der er ansvarligt for H264 AVC og H265 HEVC, har hurtigt sporet en ny standard, med en frigivelse forventet i 2020. Foreløbige tests på de nuværende tilgange har vist bemærkelsesværdige gevinster sammenlignet med H265 og AV1. Jeg inkluderer det her som en futuristisk meddelelse, bare for at vise, at videokodningsløbet synes langt fra er slut.

Adaptiv bithastighed (ABR)

Dette er et meget interessant alternativ til ethvert progressivt format. Det bygger på en HTTP-baseret kommunikationsprotokol til mediestreaming. I denne tilgang leveres videoer som en master playliste. Afspilningslisten tilbyder en repræsentation eller stige med forskellige muligheder for opløsning og bithastighed, der imødekommer forskellige visningsstørrelser, netværksbåndbredder og enhedsfunktioner.

Desuden er videoer opdelt i stykker eller bidder, så klienten kan hoppe fra et kvalitetsniveau til et andet. Det er i stand til at tilpasse sig brugerens betingelser, nemlig til netværkshastigheden, men også til visningsstørrelsen - som at skifte til fuld skærm-.

ABR giver en stor fordel ved at optimere UX til mobile enheder, undgå boder eller re-buffere begivenheder under mobilnetværk. Hvis du søger en ægte lydhør opførsel, er det helt klart den tilgang, du skal tage. Der er to hovedstandarder, HLS og MPEG-DASH.

Selv om der er en udvidet overbevisning om, at ABR kun giver mening for ganske lange videoer, kan min erfaring mange situationer med ret korte klip også drage fordel af denne tilgang.

HLS

Denne ABR-protokol er udviklet af Apple og er afhængig af forskellige gengivelser opdelt i klumper i mp4-format. Oprindeligt med H264 understøtter det også H265 nu. Som et kompromis vil vi dog anbefale at holde os til H264-kodningen med HLS, da det giver meget bedre kompatibilitet på tværs af en række klientsager.

Et stort punkt i denne standard er support i nyere Apple-enheder. For andre klienter end Safari eller native iOS-applikationer skal du have en fremviser. Men dette er ikke et stort problem, da gode open source-muligheder som videojs er tilgængelige derude. Eller selvfølgelig har du brug for en vis indsats for at tilpasse det og sætte det i gang i din front-end. Der er også gode transkodnings- og leveringstjenester, der gør alt dette arbejde for dig.

Da hver gengivelse skal kodes ved konstant bithastighed, anbefaler jeg at kombinere HLS med kodning pr. Titel. Det vil sige at vælge gengivelsesbithastigheden baseret på indholdet af videoen.

MPEG-DASH

Dette er en codec-agnostisk protokol til ABR, så det er også i stand til at arbejde med VP9-kodning udover H264 og H265 eller endda nye alternativer som AV1. Ulempen er dens relative ungdom, hvilket betyder at nyde meget mindre støtte end HLS. Dette er grunden til, at vi ikke anbefaler det endnu for de fleste webvirksomheder - selv store e-handelsbutikker -.

Resumé

Efter år med overvejende H264 AVC-komprimering animerer nye tilgange scenen. Løbet om skærmstørrelser og opløsninger fremmer udviklingen af ​​nye formater, der er i stand til at levere større indhold inden for samme båndbredde.

VP9 i webm giver en betydelig gevinst i komprimeringseffektivitet (ca. 30%), er royaltyfri og understøttes af Google-løsninger (Chrome, Android). Når vi går meget længere, har H265 / HEVC opnået en sammenlignelig eller bedre subjektiv kvalitet ved halv bithastigheden sammenlignet med H264. Da ingen af ​​dem har universel understøttelse, vil H264 stadig være nødvendig, i det mindste som en reserve.

Adaptiv bithastighed er et overbevisende alternativ, der giver uovertruffen brugeroplevelse. I denne henseende har HLS bred støtte ved hjælp af open source-seere. Det er muligvis den bedste mulighed for et mellemstort web. Kompleksiteten, som tilføjes af en seers behov, mildnes retfærdigt af tilgængeligheden af ​​open source-initiativer som videojs til interne løsninger, men også af tredjeparts tjenester til at udføre jobbet til konkurrencedygtige priser. Hvis du går gennem denne sidste rute, skal du sørge for at bede om kodning pr. Titel.