Видеокодеци и контейнерни формати



Доста често сме искали да си пуснем филм или музика, но компютърът ни не е можел да го направи. Този проблем се решава с т.н. "кодеци". Сега ще се запознаем с тях, за да можем да се насладим пълноценно на хубавия филм или любимата ни музика.

кодек и контейнер
Кодек - това е метода за кодиране или декодиране на данните, най-вече компресираните. Всъщност терминът “кодек” (CoDec), който днес се използва като основно понятие, е съкратен вариант на “compressor-decompressor”, т.е. програма за компресиране и декомпресиране на данни. Именно това е и задачата, която се изпълнява от кодеците – обработват мултимедийната информация, като или я компресират (за транспорт и съхранение), или я декомпресират (за гледане или допълнително редактиране и преформатиране).

Цялото това компресиране и декомпресиране се налага, защото т.нар. “сурово” аудио- и видеосъдържание изискват огромно пространство за съхранение. Например некомпресирано едночасово видео във висока резолюция 1080i, заснето при 60 кадъра в секунда, е с размери… 410 гигабайта. В същото време един стандартен аудиоалбум с продължителност 74 минути заема около 680 MB в компресиран вид (или даже 70 до около 150 МВ в MP3 формат). Но едно некомпресирано качествено 8-канално аудио с 24-битова резолюция и с 1 час продължителност изисква малко над 7 GB пространство. Ясно е, че това е доста много, особено ако ще трябва да се разпространява през Интернет – за целта ще трябва доста време дори при широколентова връзка. Именно затова се налага мултимедийното съдържание да бъде компресирано.

Компресирането в подходящите формат и размер обаче е само първата стъпка за разпространение на съдържанието. След това то трябва да бъде “опаковано”, транспортирано и представено по подходящ начин. Точно тук е целта на т.нар. “контейнерни формати” – да бъдат нещо като опаковка на медийното съдържание. Добрите контейнерни формати могат да съдържат файлове, компресирани с различни кодеци.

Видове кодеци:
Кодеци, използвани при видеозаснемане
 За разлика от едновремешните видеокамери с магнитни касети, повечето днешни битови цифрови устройства заснемат съдържанието направо в някакъв компресиран формат. Обикновено само професионалните оператори работят с некомпресирано HD видео, защото то гарантира най-високо качество. Това е така, защото при компресирането и декомпресирането, както и при конвертирането от един формат в друг, обикновено се получават малки грешки и качеството се нарушава. Средният потребител обаче не разполага със скъпо пространство за съхранение в неограничени количества, така че компресирането при заснемането на видео е неизбежно.

За целта съществуват десетки различни кодеци, за повечето от които обикновеният потребител може изобщо и да не чуе. Затова тук ще отбележа само най-разпространените

- H.264 / MPEG-4 AVC:
Това е най-често използваният видеокодек в модерните цифрови камери (или камкодери), които записват заснетото съдържание във вид на цифрови файлове на някакъв носител - хард диск, карта памет и др.  Това е кодекът, с който се компресира-декомпресира съдържанието, а не контейнерният формат на самия файл.

- MJPEG (Motion JPEG):
Това е малко по-стар кодек, използван от предишните поколения устройства за заснемане на видео. Той е разработен от същата организация (Joint Picture Experts Group), на която дължим и кодека за компресиране на цифровите JPEG фотографии

- DV и HDV:
DV кодекът е разработен от група компании, произвеждащи потребителска електроника и по-специално камкодери. Той се използва главно във видеокамери, които записват съдържанието на mini-DV лентови касети. (Като някои версии на DV се използват също и в професионалното лентово видеооборудване). Самият DV е ограничен до стандартна резолюция, затова по-късно е създадена и версията за съдържание с висока резолюция, наречена HDV. Тук трябва да се отбележи, че в случая с DV и HDV се обозначават както самите кодеци, така и контейнерният формат на файловете.

Кодеци за съдържание на дискове

Става на въпрос за мултимедийните файлове, съхранявани и разпространявани на DVD или Blu-ray дискове.  Освен това почти всеки вече има някакво DVD устройство. А ето ги и най-популярните “дискови” кодеци.
 
- MPEG-2: Тук отново трябва да направим разграничение между кодека (MPEG-2 Part 2, познат също като H.262) и едноименния контейнерен формат MPEG-2. MPEG-2 се използва изключително като компресионен стандарт за DVD видео. Той се употребяваше и в ранните дни на създаването на Blu-ray Disc съдържание, но това вече не е така. Затова пък MPEG-2 днес често се прилага и за компресиране на разпространявани в ефир HDTV програми;

- H.264 / MPEG-4 AVC: Това на практика е същият кодек, използван от модерните камкодери и цифрови апарати, заснемащи видео, който бе споменат в предишната секция. Той се ползва и за компресиране на Web видео. H.264 осигурява нелошо качество на изображението при относително високи съотношения на компресия и сравнително ниски “bit rate” нива, при това с големи възможности за мащабируемост. Това е и кодекът, който служи днес за създаването и просвирването на Blu-ray съдържание;

- Microsoft VC-1: VC-1 е третият от кодеците, използвани в наши дни за кодиране-декодиране на Blu-ray съдържание. Той се прилага също и в  Microsoft Silverlight алтернативата на Adobe Flash.

Кодеци за уебстрийминг
 Разпространяването на видео по Inet неизбежно е свързано с някои компромиси и жертване на качество в името на постигането на по-ниски bit rate нива. Целта е минимална консумация на канал при уебстрийминга. Това е така, защото скоростите на достъп/сваляне/стрийминг варират в много широки граници в зависимост от спецификата на Интернет връзката, която  често е безжична. Ето и какви кодеци се използват днес за кодиране на видео, което ще се разпространява в Inet:

- MPEG-1: MPEG-1 е старият кодек за видео. Въпреки, че днес популярните уебресурси, като YouTube, Netflix и др., вече не използват този стандарт, в много други Интернет сайтове все още има много MPEG-1 базирано видео в стандартна резолюция. Но ако ще работите с високи резолюции, за препоръчване е този кодек да се избягва;

- WMV (Windows Media Video): Още веднъж подчертаваме, че сега говорим за кодек, а не за едноименния и познат на мнозина контейнерен формат Windows Media Video. Обработеното с този кодек съдържание също е много разпространено в Мрежата, но и тук важи препоръката кодекът да се избягва при работа с високи резолюции.

- H.264 / MPEG-4 AVC: Споменаването на H.264 кодека за трети пореден път в рамките на 1-2 страници не е случайно. Той е приложим и при компресиране на видео за уебразпространение и най-вероятно ще се превърне в най-универсалната опция. Особено като се има предвид и широката поддръжка: Adobe го поддържа в своята Flash, HTML5 стандартът също може да използва H.264, YouTube последователно се придвижва именно към него, а и Apple го поддържа напълно. По всичко личи, че именно това ще е масовият стандарт за компресиране и декомпресиране на видео и в бъдеще.

- Advanced Systems Format (ASF): ASF e контейнерен формат, базиран на разработки на Microsoft. Разширенията на ASF файловете могат да бъдат различни, включително .asf, .wma, .wmv. Трябва да се отбележи обаче, че файл с разширение .wmv вероятно е компресиран с кодека WMV (Windows Media Video), въпреки че самият файл е “опакован” в ASF контейнер. На теория ASF файловете могат да съдържат видео и аудио, компресирани с всякакви кодеци. На практика обаче плейбекът на такива файлове може да създаде проблеми, особено ако видеото е компресирано с H.264 кодеци. Затова, ако планирате да се придържате към вселената на Microsoft, ASF форматът е добър избор, стига да не работите с не-Microsoft мултимедия;

-  Audio Video Interleave (AVI): AVI също е Microsoft-ски контейнерен формат, но от по-старите. Той обаче все още е много разпространен сред видеофайловете в мрежата, макар че едва ли ще го предпочетете за по-новите си видеопроекти с висока резолюция;

- QuickTime: QuickTime е контейнерният формат на Apple. От време на време той търпи критики заради това, че кодек поддръжката му както за аудио, така и за видео, е ограничена само до това, което поддържа Apple. От друга страна, това никак не е малко, още повече че “Ябълката” е сериозен застъпник на потенциално универсалния кодек H.264. Така че QuickTime е подходящ контейнер за кодирано с H.264 видео с висока резолюция;

- MP4: Често хората бъркат MP4 файловете с QuickTime-ските, но всъщност това са различни стандарти. MP4 е контейнерен формат, разработен от организацията Motion Pictures Expert Group, а “по-техническото” му наименование е MPEG-4 Part 14. Видеото в MP4 файловете обикновено е компресирано с H.264 кодек, а аудиото - с AAC, макар че могат да бъдат използвани и други аудиокодеци;

- MPEG и BDAV MPEG-2 Transport Streams: Това са контейнерните формати, прилагани съответно в DVD и Blu-ray дисковете. т.н VOB (Video Objects) контейнерен файлов формат е подклас на транспортния поток MPEG и се ползва най-вече при създаването на DVD видеосъдържание. Както показва и наименованието, MPEG-2 Transport Streams форматът използва видео, компресирано с MPEG-2 Part 2 енкодери, но всъщност не е лимитиран само до тях. Данните в MPEG-2 TS контейнерите могат да бъдат компресирани също с H.264 и VC-1 кодеци, понеже също са част от  Blu-ray стандарта. Аудиочастите на тези файлове могат да бъдат Dolby Digital (AC3) файлове, Dolby Digital Plus, Dolby Lossless, DTS, DTS HD и Linear PCM (некомпресирани) мултиканални данни;

-  AVCHD: Това е стандартният контейнерен формат, използван в много съвременни камкодери. Видеосъдържанието, заснемано от тези цифрови камери, се компресира с   H.264 AVC кодек, а аудиото - с Dolby Digital (AC3), или остава като некомпресирани линейни PCM данни.

  - Flash: Flash е фирменият контейнерен формат на Adobe и поддържа широк набор от кодеци. По принцип най-новите Flash файлове съдържат видео, компресирано с H.264, и аудио, кодирано с AAC кодеци, но те далеч не са единствените допустими варианти, особено ако включват и съдържание, заснето не само през последната година;

- Други: Съществува, разбира се, и голямо разнообразие от други мултимедийни файлови формати, особено за съдържанието, разпространявано чрез Интернет. Сред най-известните от тях са Matroska (.mkv), OGG (отговарящи съответно на кодеците OGM и  OGV), както и DiVX

В заключение искам да добавя, че всички тези кодеци са обединени в малки софтуерни пакети, които свободно можете да инсталирате на компютрите си. С тяхна помощ компютърът Ви ще може да възпроизведе всякакъв мултимедиен файл.

Няма коментари: