Ghidul OTT pentru codecuri, formate de containere și transcodare
Dacă titlul acestui articol nu vă face deja capul rănit, atunci restul va fi cu siguranță. Ei bine, sperăm că o pot explica într-un mod care are sens pentru persoana non-tehnică. Scriu acest articol despre codecuri video / audio pentru că m-am trezit confuz când încerc să-i explic într-o zi unui prieten.
Ce anume este un codec? Știu că ai nevoie de ei pentru a juca un film aici și acolo, dar ce naiba e cu adevărat? Ceea ce ma deranjat cu adevarat sunt toti termenii despre care am auzit, insa nu am inteles niciodata: H.264, DivX, MP4, AVI, MPEG-2, AVCHD, AAC, OGG, MKV etc. După multă lectură și învățare, mi-am dat seama că lumea codecurilor audio și video și formatele de containere este foarte confuză. De fapt, chiar nu știam diferența dintre un codec și un format de container până când am început cercetarea.
Nu voi intra în detaliu, doar pentru că subiectul începe să devină foarte tare foarte rapid. Chiar îți pasă dacă o oră de RAW 1080p necomprimate de 60 de cadre pe secundă video mănâncă aproape 500 GB de spațiu de stocare? Probabil ca nu.
Ce este un codec?
Deci, ce anume este un codec și ce face? În termenii cei mai simpli, un codec este un codificator / decodor sau, în forma sa originală, un compresor (co) - decompresor (dec). Deci, este exact ceea ce face un codec: este nevoie de un fișier digital și îl comprimă (sau codifică) pentru stocare și îl decomprimă (sau îl decodează) pentru vizualizare sau transcodare. Îți voi spune ce înseamnă transcodarea mai târziu, să nu ne confundăm așa de devreme.
Lucrul important de înțeles este că un codec este un fel de specificație a modului în care bitul ar trebui să arate. Ce este un bitstream? Pentru a nu deveni foarte tehnic, ar trebui să fie aranjată secvența de octeți pentru codecul respectiv. Fiecare codec are un set specific de linii directoare. De exemplu, poate specifica lățimea, înălțimea, raportul de aspect, etc. Verificați această pagină, dar nu citiți prea mult sau vă va răni capul:
http://www.cs.cf.ac.uk/Dave/Multimedia/node262.html
Deoarece este o specificație, pot fi multe moduri de a converti datele în acel format. Prin urmare, pot exista mai mulți codificatori pentru un codec. Voi explica mai multe despre encodere din secțiunea Codecuri populare de mai jos.
Deci, de ce avem nevoie chiar de această compresie și decompresie? Ei bine, așa cum am menționat mai sus, un fișier RAW de 1080p necomprimat este aproape un 500GB enorm pentru o oră. Aveți nevoie de propriul centru de date pentru a stoca toate videoclipurile de familie dacă totul a fost înregistrat în acest format. Aici intră compresiile. Există diferite tipuri de compresie, care se traduce în diferite tipuri de codecuri. Deci, ce sunt unele codecuri populare?
Codecuri populare
H.264 (MPEG-4 partea 10 AVC) - Acesta este, de asemenea, oficial cunoscut sub numele de MPEG-4 Partea 10, dar H.264 este ceea ce auziți în mod obișnuit. Da, există, de asemenea, mai multe nume pentru același lucru. H.264 este de departe cel mai popular format pentru codarea videoclipurilor. H.264 oferă cele mai bune din toate lumile: dimensiuni de fișiere mai mici, cu o calitate superioară.
Din nou, rețineți că H.264 este doar codecul, nu veți găsi niciun fișier cu extensii .h264. Acestea sunt formatele containerului, pe care le voi explica în secțiunea de mai jos. Acest codec este folosit peste tot, de la telefoane inteligente la camere video digitale la discuri Blu-ray. De asemenea, este folosit pentru livrarea unui număr mare de videoclipuri pe web datorită capacității sale de a vă oferi o calitate excelentă a imaginii cu un raport de compresie ridicat și o rată de biți scăzută, ceea ce înseamnă mai puțină presiune pe serverele de streaming.
De asemenea, este foarte susținut și probabil va fi cel mai popular codec pentru o lungă perioadă de timp. Este susținută de Apple, YouTube, HTML 5 și chiar de Adobe Flash.
Singurul dezavantaj al H.264 este că algoritmii pentru compresie sunt atât de buni, că este mult mai lent să codificăm un videoclip în acest format. Veți afla mai multe despre asta atunci când vorbim despre transcodare în jos.
După cum am menționat mai sus, există mai mulți codificatori pentru un singur codec. Pentru codecul H.264, unul dintre cei mai populari encodere este x264 de la VideoLAN, aceiași oameni care creează VLC Media Player. x264 este gratuit și open-source, dar există și mulți codificatori comerciali H.264, de asemenea. Nu contează cum fluxul video devine convertit în acest format, orice decodor H.264 (cum ar fi VLC) va putea vizualiza fișierul.
MPEG-2 - Încă aveți o colecție DVD mare? Asta se face cu ajutorul codecului MPEG-2. Este destul de veche, dar foarte comună. Celălalt loc unde găsiți compresia MPEG-2 este atunci când urmăriți acele canale HD difuzate pe calea aerului. Asta e tot compresia MPEG-2. Lucru interesant de știut, corect?
Din moment ce algoritmul de compresie folosind MPEG-2 este mult inferior H.264, are avantajul de a fi mult mai rapid de codat. Cu toate acestea, nu a funcționat niciodată pentru streaming web, deoarece la un bitrate mai redus, calitatea va deveni rapidă și veți termina cu video pixelat. De aceea au venit cu MPEG-4 Part 2.
MPEG-4 Partea 2 - Probabil vă amintiți zilele în care totul a vorbit despre DivX și Xvid? Aceștia erau codificatori pentru formatul MPEG-4 Partea 2, alias H.263. Multe filme pe care le-ați descărcat din nou în cursul zilei au fost comprimate folosind acest codec deoarece vă oferă o dimensiune bună a fișierului și păstrați o calitate rezonabilă. Cu toate acestea, singura problemă majoră este că conținutul de înaltă definiție a suferit încă din punctul de vedere al calității imaginii și acolo H.264 pe care l-am menționat mai sus a preluat.
Windows Media Video - Aceasta este în esență versiunea Microsoft a codecurilor MPEG-4. WMV 7 a fost introdus în 1999 și a fost o copie a MPEG-4 Part 2. Mai târziu, au venit WMV 8 și 9, urmat de VC-1, un codec care copiază majoritatea MPEG-4 Part 10 și este utilizat în prezent în Blu-ray discuri prea. Singurele locuri pe care le vedeți sunt WMV și VC-1, în majoritatea cazurilor legate de produsele Microsoft, cum ar fi Windows Movie Maker, Silverlight, HD DVD și Microsoft Expression Encoder etc..
Acestea sunt doar codec-urile video populare, aveți și codecuri audio, care intră în joc atunci când vorbim despre containerele de mai jos. Codecurile audio populare includ FLAC, AC3, Dolby Digital Plus, DTS-HD, ALAC etc. Ca și în cazul videoclipurilor, codecurile audio au propriile formate de container cum ar fi AIFF, WAV etc..
Acestea nu sunt în nici un caz toate codec-urile de acolo, este doar o listă cu unele dintre cele mai populare. Acum hai să vorbim despre formatele de containere.
Formatele containerului
Când redați un fișier în Windows Media Player sau VLC sau Quicktime sau pe orice player multimedia pe care îl alegeți, de obicei deschideți un format de container. Un format de container sau un ambalaj este în esență pachet cu unul sau mai multe codecuri, video sau audio sau ambele. Un container este folosit pentru a adăuga audio împreună cu video și pentru a vă asigura că audio și video sunt sincronizate perfect. Containerul va conține, de asemenea, alte informații necesare unui server de streaming sau a playerului media. Bitstream-urile video și audio sunt înfășurate într-un alt bitstream.
Formatele de contacte sunt în cazul în care vedeți extensiile comune de fișiere pe care le folosim cu toții ca MP4, MOV, WMV, AVI etc. Să trecem prin unele dintre cele mai comune containere:
MP4 - Probabil că ați descărcat o melodie care a avut o extensie .MP4, care este un wrapper pentru multe codecuri video și audio. Cel mai adesea, este folosit pentru a împacheta video H.264 și audio codificat AAC. De asemenea, acceptă și codecuri video MPEG-4 Partea 2 și MPEG-2. De asemenea, sunetul poate fi codificat utilizând alte codecuri, altele decât AAC.
AVI - Acesta este un format de container Microsoft din 1992. A fost foarte popular înapoi în ziua mea și este încă în jur destul de puțin. Dacă faceți orice codificare, nu mai trebuie să utilizați niciodată formatul containerului AVI. În primul rând, nu acceptă codecuri mai recente, cum ar fi H.264. De asemenea, are câteva alte probleme majore, motiv pentru care nu mai este folosit.
ASF - Advanced Systems Format de către Microsoft nu utilizează în mod normal extensia de fișiere .ASF. În schimb, veți vedea că majoritatea containerelor ASF folosesc .WMA sau .WMV. Veți vedea aceste fișiere în jur dacă utilizați toate produsele Microsoft. Odată ce părăsiți lumea Microsoft, veți întâlni probleme în redarea fișierelor, mai ales dacă utilizați codecul H.264.
AVCHD - AVCHD este cel mai obișnuit format de container pentru camere video HD. În mod normal, videoclipul va fi H.264 cu audio AC3 (Dolby Digital) sau PCM Linear.
MKV - Descărcați un film în ultima vreme? Este probabil în formatul container MKV, care găzduiește fișiere video H.264. Doar câteva instrumente suportă MKV cum ar fi Boxee, PS3 Media Server, XMBC, VLC, etc, dar nu sunt acceptate la fel de mult ca alte formate de containere încă.
FLV - Acesta este Adobe Flash, care suportă multe codecuri diferite, cele mai frecvente fiind H.264 și AAC. Videoclipul Flash este unul dintre cele mai populare moduri în care clipurile video sunt redate prin Internet. Ea pierde teren din cauza HTML 5 și faptul că Apple nu va lăsa flash să ruleze pe oricare din iDevice lui, dar este încă foarte frecvente.
Există și alte formate de container, cum ar fi formatul de fișiere QuickTime, OGG, WebM, etc, dar cumva obțineți imaginea acum.
transcodarea
Ultimul lucru pe care trebuie să-l înțelegeți este că probabil că va trebui să convertiți videoclipul AVCHD pe care l-ați descărcat de pe camera dvs. video într-un format diferit pe care apoi îl puteți importa în iTunes și puteți juca pe iPhone. Deoarece există atât de multe codecuri și formate de container și fiecare format de container poate avea diferite combinații de codecuri video și audio, aveți nevoie de un transcoder pentru a obține tipul de fișier pe care doriți pentru dispozitivul dvs..
Există mai multe transcodere aka convertoare video acolo: HandBrake, FFmpeg, SUPER, VirtualDub, etc. Unele sunt plătite și unele sunt gratuite cu instrumente open source. Unele instrumente, cum ar fi HandBrake, vă oferă presetări, astfel încât să puteți alege pur și simplu fișierul sursă și să alegeți un format de ieșire precum iPod sau iPhone și să faceți clic pe Start. Va alege toate setările, containerul, codecul etc. pentru dvs. Cu toate acestea, sperăm că după ce ați citit acest post, acum înțelegeți mai mult și puteți să faceți conversii video între formate și să înțelegeți procesul puțin mai bun. se bucura!