OTT Vodič za kodeke, formate spremnika i transkodiranje
Ako naslov ovog članka ne povrijedi vašu glavu, onda će ostatak definitivno biti. Pa, nadam se da to mogu objasniti na način koji ima smisla za ne-tehničku osobu. Pišem ovaj članak o video / audio kodecima jer sam se jednog dana zbunio kada sam to pokušao objasniti prijatelju.
Što je točno kodek? Znam da ih trebate igrati filmove tu i tamo, ali što je, do vraga, doista? Ono što me zbunilo su svi pojmovi koje sam čuo, ali nikada nisam shvatio: H.264, DivX, MP4, AVI, MPEG-2, AVCHD, AAC, OGG, MKV, itd. Jesu li svi ti kodeci? Nakon mnogo čitanja i učenja, shvatio sam da je svijet audio i video kodeka i formata spremnika vrlo zbunjujući. Zapravo, ja zapravo nisam ni znao razliku između kodeka i formata spremnika dok nisam počeo istraživati.
Neću ulaziti u detalje, samo zato što tema postaje vrlo kratka. Stvarno vam je stalo da 1 sat RAW uncompressed 1080p 60 sličica u sekundi pojede gotovo 500 GB prostora za pohranu? Vjerojatno ne.
Što je kodek?
Dakle, što je točno kodek i što on radi? U najjednostavnijim mogućim terminima, kodek je koder / dekoder ili, u svom izvornom obliku, kompresor (co) - dekompresor (dec). To je upravo ono što radi kodek: on uzima digitalnu datoteku i komprimira je (ili je kodira) za pohranu i dekomprimira je (ili dekodira) za gledanje ili transkodiranje. Reći ću vam što je transkodiranje malo kasnije, nemojmo se brkati ovako rano.
Važno je razumjeti da je kodek kao vrsta specifikacije kako bi bitstream trebao izgledati. Što je bitstream? Da ne biste dobili vrlo tehnički, to je kako slijed bajtova treba biti uređen za taj određeni kodek. Svaki kodek ima određeni skup smjernica. Na primjer, može odrediti širinu, visinu, omjer širine i visine itd. Pogledajte ovu stranicu, ali ne čitajte previše ili će vam boljeti glava:
http://www.cs.cf.ac.uk/Dave/Multimedia/node262.html
Budući da je specifikacija, mogu mi se mnogo načina pretvoriti u taj format. Dakle, može biti mnogo kodera za jedan kodek. Objasnit ću više o koderima u odjeljku Popularni kodeci u nastavku.
Pa zašto nam uopće treba sva ova kompresija i dekompresija? Pa kao što sam spomenuo gore, RAW nekomprimirani 1080p datoteka je gotovo nevjerojatnih 500GB za samo jedan sat. Trebali biste vlastiti podatkovni centar da biste pohranili sve svoje obiteljske videozapise ako je sve snimljeno u tom formatu. Tamo dolazi do kompresije. Postoje različite vrste kompresije, što se prevodi u različite tipove kodeka. Pa što su neki popularni kodeci?
Popularni kodeci
H.264 (MPEG-4 dio 10 AVC) - To je također službeno poznato kao MPEG-4 Part 10, ali H.264 je ono što obično čujete. Da, ima više imena za istu stvar. H.264 je daleko najpopularniji format za kodiranje videozapisa. H.264 nudi najbolje od svih svjetova: manje veličine datoteka s višom kvalitetom.
Opet, zapamtite, H.264 je samo kodek, nećete naći nikakve datoteke s .h264 nastavcima. Za to služe spremnici, što ću objasniti u nastavku. Ovaj se kodek koristi posvuda od pametnih telefona do digitalnih kamkordera za Blu-ray diskove. Koristi se i za isporuku mnogo web-videa danas zbog njegove sposobnosti da vam pruži izvrsnu kvalitetu slike s visokim omjerom kompresije i niskom brzinom prijenosa, što znači manje opterećenja na streaming poslužiteljima.
Također je vrlo podržan i vjerojatno će biti najpopularniji kodek za dugo vremena. Podržavaju je Apple, YouTube, HTML 5, pa čak i Adobe Flash.
Jedini nedostatak H.264 je u tome što su algoritmi za kompresiju tako dobri, puno je sporiji kodiranje videozapisa u ovaj format. O tome ćete saznati više kad govorimo o transkodiranju dolje.
Kao što sam već spomenuo, postoji više kodera za jedan kodek. Za H.264 kodek, jedan od najpopularnijih enkodera je x264 iz VideoLAN-a, isti ljudi koji stvaraju VLC Media Player. x264 je besplatan i open-source, ali postoji i mnogo komercijalnih H.264 enkodera. Nije bitno kako će se video stream pretvoriti u ovaj format, bilo koji H.264 dekoder (kao što je VLC) moći će pregledati datoteku.
MPEG-2 - Još uvijek imate veliku DVD kolekciju? To je sve učinjeno pomoću MPEG-2 kodeka. Prilično je stara, ali vrlo česta. Drugo mjesto gdje ćete pronaći MPEG-2 kompresiju je kada gledate te HD kanale koji se emitiraju u zraku. To je sve MPEG-2 kompresija. Zanimljive stvari za znati, točno?
Budući da je algoritam za kompresiju pomoću MPEG-2 znatno lošiji od H.264, on ima prednost što je mnogo brži za kodiranje. Međutim, to nikada nije radio za web streaming, jer na nižoj bitrate, kvaliteta će brzo nosedive i youd 'kraj gore sa pixelated video. Zato su smislili MPEG-4 Part 2.
MPEG-4 dio 2 - Vjerojatno se sjećate dana kada je sve govorilo o DivX-u i Xvidu? To su bili koderi za MPEG-4 Part 2 format, zvani H.263. Mnogo filmova koje ste preuzeli tijekom dana komprimirani su pomoću ovog kodeka jer vam je dala dobru veličinu datoteke i održavali razumnu kvalitetu. Međutim, jedini veliki problem je što je sadržaj visoke razlučivosti još uvijek pretrpio u smislu kvalitete slike i to je mjesto na kojem je H.264 koji sam gore spomenuo preuzeo.
Windows Media Video - To je u osnovi Microsoftova verzija MPEG-4 kodeka. WMV 7 predstavljen je 1999. godine i bio je kopija MPEG-4 dijela 2. Kasnije su došli WMV 8 i 9, nakon čega slijedi VC-1, kodek koji uglavnom kopira MPEG-4 dio 10 i trenutno se koristi u Blu-rayu diskove. Jedina druga mjesta na kojima vidite WMV i VC-1 su uglavnom u Microsoftovim srodnim proizvodima kao što su Windows Movie Maker, Silverlight, HD DVD i Microsoft Expression Encoder, itd..
Ovo su samo popularni video kodeci, imate i svoje audio kodeke, koji dolaze u igru kada govorimo o kontejnerima ispod. Popularni audio kodeci uključuju FLAC, AC3, Dolby Digital Plus, DTS-HD, ALAC itd. Kao i kod videozapisa, audio kodeci imaju vlastite formate spremnika kao što su AIFF, WAV, itd..
To ni u kom slučaju nisu svi kodeci, već samo popis nekih od najpopularnijih. Sada ćemo govoriti o kontejnerima.
Formati spremnika
Kada reproducirate datoteku u programu Windows Media Player ili VLC ili Quicktime ili bez obzira na odabrani media player, obično otvarate format spremnika. Format spremnika ili omotač je u osnovi paket jednog ili više kodeka, videozapisa ili zvuka ili oboje. Spremnik se koristi za dodavanje zvuka zajedno s videozapisom i za osiguravanje savršene sinkronizacije zvuka i videozapisa. Kontejner će također sadržavati i druge informacije koje su potrebne poslužitelju za streaming ili medijskom playeru. Video i audio bitstreams su samo omotani u drugi bitstream.
Formati kontejnera su tamo gdje vidite uobičajene ekstenzije datoteka koje smo svi koristili kao što su MP4, MOV, WMV, AVI, itd. Idemo kroz neke od najčešćih spremnika:
MP4 - Vjerojatno ste preuzeli pjesmu s nastavkom .MP4, koji je omot za mnoge video i audio kodeke. Najčešće se koristi za omatanje H.264 videozapisa i AAC kodiranog zvuka. Također podržava i MPEG-4 dio 2 i MPEG-2 video kodeke. Također, audio se može kodirati pomoću drugih kodeka koji nisu AAC.
AVI - Riječ je o Microsoftovom kontejnerskom formatu iz 1992. godine. Bio je vrlo popularan u mom danu i još uvijek je prilično malo. Ako radite bilo koji kodiranje, više ne smijete koristiti format AVI spremnika. Prvo, ne podržava nove kodeke kao što je H.264. Također ima i nekoliko drugih velikih problema zbog kojih se više ne koristi.
ASF - Microsoftov format Advanced Systems obično ne koristi nastavak .ASF datoteke. Umjesto toga vidjet ćete da većina ASF spremnika koristi .WMA ili .WMV. Vidjet ćete te datoteke ako koristite sve Microsoftove proizvode. Kada napustite Microsoftov svijet, naići ćete na probleme pri reprodukciji datoteka, pogotovo ako koristite kodek H.264.
AVCHD - AVCHD je najčešći format spremnika za HD kamkordere. Videozapis će obično biti H.264 s AC3 (Dolby Digital) audio ili Linear PCM.
MKV - Preuzmite film u posljednje vrijeme? To je vjerojatno u formatu kontejnera MKV, u kojem se nalaze H.264 video datoteke. Dosta alata podržava MKV kao što su Boxee, PS3 Media Server, XMBC, VLC, itd., Ali još uvijek nije tako široko podržano kao drugi formati spremnika..
FLV - Ovo je Adobe Flash, koji podržava mnogo različitih kodeka, najčešće H.264 i AAC. Flash videozapis jedan je od najpopularnijih načina prijenosa videozapisa putem interneta. Gubi se zbog HTML-a 5 i činjenice da Apple neće dopustiti pokretanje bljeskalice na bilo kojem od svojih iDevice-a, ali još uvijek je vrlo uobičajeno.
Postoje i drugi formati spremnika kao što su QuickTime File Format, OGG, WebM itd..
transkodiranje
Posljednja stvar koju treba razumjeti o svemu tome je da ćete vjerojatno morati pretvoriti AVCHD video koji ste preuzeli s kamkordera u drugi format koji zatim možete uvesti u iTunes i reproducirati na vašem iPhoneu. Budući da postoji toliko mnogo kodeka i formata spremnika, a svaki format spremnika može imati različite kombinacije video i audio kodeka, potreban vam je transkoder da biste dobili vrstu datoteke koju želite za određeni uređaj.
Postoje mnogi transkoderi zvani video konvertori: HandBrake, FFmpeg, SUPER, VirtualDub, itd. Neki su plaćeni, a neki su besplatni open-source alati. Neki alati, kao što je HandBrake, daju vam unaprijed zadane postavke tako da jednostavno možete odabrati izvornu datoteku i odabrati izlazni format kao što je iPod ili iPhone i kliknite Start. Za vas će odabrati sve postavke, spremnik, kodek, itd. Međutim, nadamo se nakon čitanja ovog posta, sada shvatite malo više i možete ići o pretvaranju videozapisa između formata i bolje razumjeti temeljni proces. Uživati!