Что такое VLC и как это можно использовать? Часть 2. Обзор кодеков и форматов VLC

737

А вот и вторя статья о мультимедийном комбайне VLC. Тут речь пойдет о кодеках. Стоит признать, что раньше в Linux были некоторые проблемы с кодеками для закрытых мультимедийных форматов. Особенно для чисто майкрософтовских. Решение всегда находилось, но приходилось поковыряться ручками. Последние пару лет я таких проблем не замечаю. В частности VLC справляется со всеми задачами. Он практически всеяден.

А сейчас слегка отвлекусь, и представлю издательство о недвижимости. Это сайт, представляющий тематический журнал , рассказывающий о всех аспектах недвижимости. От дизайна квартир, до обустройства загородного коттеджа. Но перейдем к статье найденной на сайте неофициального проекта GNU/Linux ХМАО-Югра www.oslinux.ru.

Автор Нурулин Андрей (C) anurulin(@)gmail(.)com для проекта GNU/Linux ХМАО-Югра

VLC поставляется с набором кодеков, что позволяет обеспечивать надежное воспроизведение огромного количества форматов без необходимости установки дополнительного программного обеспечения.

Воспроизводимые форматы.

Формат мультимедийного файла (видео или аудио) зависит от двух составляющих: кодек (codec) и контейнер (muxer).

Кодек (Codec — англ.) это сокращение от coder/decoder или compressor/decompressor, определяет формат сжатия видео или аудио информации.

Говоря о контейнере (Muxer — англ.), стоит отметить что видео поток дожен иметь структуру, более подходящую для его чтения. Поэтому сжатый файл снова структурируют для хранения и воспроизведения.

Например файлы AVI могут содержать информацию обработанную кодеком MPEG-4. AVI это не формат сжатия, а всего лишь способ считывания, или формат хранения файла.

Таким образом, сжатый (с потерями или без) мультимедийный поток проходит при записи две фазы: сжатие и обертывание в контейнер. Обратным процессом является воспроизведение. При воспроизведении поток сначала развертывается, а потом декодируется в формат, более подходящий для проигрывания.

Поэтому говоря о формате с пониманием, необходимо упомянуть как о кодеке, так и о контейнере. Вы наверняка сталкивались с файлами AVI, содержащими поток видео обработанный MPEG-4 и аудио сжатое в mp3. В данном случае именно контейнер (AVI) обеспечивает синхронное воспроизведение (звук воспроизводится адекватно изображению) , и вместо запуска на воспроизведения двух файлов (отдельно аудио и отдельно видео), достаточно открыть один файл AVI.

Одним из достоинств VLC, как уже упоминалось, являются кодеки и контейнеры, которые поставляются в комплекте. Другое дело, что «комплектность» зависит от опций, с которыми скомпилирована VLC. Если вам не удалось воспроизвести файл, убедитесь, что ваша сборка поддерживает его формат, в противном случае произведите компиляцию на свой вкус.

Список (основных) поддерживаемых контейнеров (форматов файла) при воспроизведении:

Расширение файлаКонтейнерКомментарийМодуль VLC
A52A/52 (A52) по существу
аналог AC-3 (AC3), который представляет
собой Dolby Digital.

Dolby Digital это название
торговой марки применяемое для
цифрового формата кодирования аудио
AC-3. Впервые использованный в кинотеатрах
в 1995, Dolby Digital применяется теперь как
стандарт для высококачественного
звука в домашних кинотеатрах.

Название «AC3″ (без тире) часто
используется для аудио формата
применяемого на DVD и соответствующего
спецификации Dolby Digital.

a52
.aacAACAAC разработан с целью
обеспечить лучшее сжатие нежели MP3.
AAC фактически указывает на два схожих
кодека — MPEG-2 AAC и MPEG-4 AAC.

Имеет ряд преимуществ
перед MP3 — большее число каналов
звучание (до 48) и более эффективное
сжатие.

В зависимости от настроек AAC и
декодера MP3, 96 кбит/с AAC могут дать
близкое или лучшее звучание по сравнению
с 128 кбит/с в MP3.

aac
.aiffAIFFAudio Interchange File Format (AIFF) схож с WAVE формата.
Содержит несжатую информацию в формате
PCM.
aiff
.asfASFAdvanced Streaming Format (или
ASF, позднее переименованный в Advanced
Systems Format) является проприетарным
форматом контейнера аудио и видео
информации от компании Microsoft,
разработанный для задач сетевого
вещания. ASF входит в состав Windows Media
Framework.

Файлы ASF имеют расширение
.asf, но ASF могут содержать информацию
в формате кодеков Windows Media cимеющих
расширение .wmv или .wma.

asf, asfр
.aviAVIAVI (Audio Video Interleave)
популярный формат контейнера для
хранения видео и аудио информации.

Для воспроизведения AVI файлов, от
проигрывателя требуется знать
использованные аудио и видео кодеки.

avi
.dtsDTSDTS это частная компания
разработавшая аудио формат, случай
похожий на Dolby. Термин «DTS» главным
образом относится к технологиям
DTSшироко применяемых на дисках
DVD-Video, как и формат Dolby Digital/AC3 компании
Dolby.

DTS отличается от Dolby Digital меньшим
уровнем компрессии, что позволяет
обеспечить лучшее звучание. Стерео
версия формата DTS почти идентична
Dolby Surround.

dts
.dumpDemuxdumpПрименяется главным образом для
отладки. Позволяет сохранить
воспроизводимый файл без какой либо
обработки.
dump
nsf, .nsfe, .gbs, .vgm, .vgz, .spc, .gymgmeGame Music Emu (GME) – формат некоторых
игровых консолей, разработанный для
компьютерных игр.
gme
.mkv, .mka, .mksMatroskaMatroska это формат контейнера для
хранения видео и аудио Формат Matroska
имеет множество особенностей, например
меню в стиле DVD.
mkv, mka
.mpcMusepackMusePack (MPC) аудио кодек, разработанный
для сжатия звука на 160-180 кбит/с
mpc
.m2ts, .mpg, .mpeg, .vobMPEG-TS или MPEG-PSОтносящиеся к MPEG набор стандартов
созданных Moving Picture Experts Group. TS (Transport
Stream) должен применяться там, где при
хранении или передаче возможны потери
информации, например в сетях передачи
данных. PS (Program Stream) предполагается
применять там, где потеря данных мало
вероятна, например на DVD.
ts или ps
.flvflash VideoFlash Video формат файла
для воспроизведения в проигрывателе
Flash на веб-страницах.

Существует два типа формата этих
файлов, один основан на H.263 (существующем
с версии Flash 6) другой на VP6 (появившийся
впервые во Flash 8). В версии Flash 9 Update 3
компания Adobe включила поддержку MPEG-4,
при этом начиная с этой же версии файлы
flv могут так же содержать H.264 и HE-AAC.

flv
.movMOVФайлы с расширением .MOV по умолчанию
предназначены для проигрывания в
QuickTime. Файлы с таким расширением могут
содержать один из многих форматов
кодирования аудио и видео.
mov
.m4a, .m4b, .m4pMPEG-4 AudioMPEG-4 является одним из вариантов
кодирования MPEG, представляя собой
гибкий формат кодирования аудио и
видео. Описывает способ сжатия аудио
и видео вместе с форматом контейнера
для вещания в сеть или хранения на
диске. Поддерживает такие особенности
как DRM и субтитры. MPEG-4 обеспечивает
лучшее качество чем MPEG-2.
mp4а, m4a
.mp4MPEG-4mp4v, m4v
.oggOggЯвляясь контейнером, ogg может содержать
информацию закодированную различными
кодеками (например DivX, XviD, MP3 и другими),
но обычно Ogg используется вместе с
Vorbis, Theora, FLAC и Dirac.
ogg
.pvaPVAРасширение PVA обозначающее формат
Packetized Elementary Streams (PES) содержащий и видео
и аудио. Файлы PES обернуты в контейнер
Elementary Streams. По своей природе формат
Elementary Streams является либо аудио либо
видео контейнером. Однако, благодаря
отметкам о времени, с некоторыми
накладными расходами, файлы PVA могут
включать и видео и аудио потоки для
обертывания видео MPEG-2 и аудио AC3 Dolby
Digital. Кие файлы часто получаются на
выходе работы программного обеспечения
ведущего захват Digital Video Broadcast (DVB),
например со спутникового ресивера.
pva
.rm, .ram, .raRealMediaRealMedia тип файла разработанный
RealNetworks и воспроизводимый проприетарным
проигрывателем RealPlayer. RealPlayer доступен
для операционных систем Windows, Mac OS,
MacOS X и Linux. Файлы RealMedia обычно вещаются
в сеть через протокол RTSP.
real, rm
SDP (только сетевое вещание)SDP (Session
Description Protocol) — сетевой протокол,
предназначенный для описания сессии
передачи потоковых данных. Данные SDP
обычно передаются через протоколы
SAP, RTSP или в виде файла.

Идея SDP в том, что вы можете хранить
критичную информацию для вещания и
передавать ее через доступное соединение
(такое как HTTP или RTSP). Затем возможно
вещание через ненадежные сети без
гарантии доставки по протоколам
подобным RTP без какого либо обертывания
в контейнер.

SDP
.wavWAVWAVE это способ хранения не сжатой
аудио информации. Основан на RIFF.
wav
.wmvWindows Media VideoПроприетарный формат Microsoft для видео
информации
wmv3, wmv
.wmаWindows Media AudioПроприетарный формат Microsoft для аудио
информации
wma2, wma

Список поддерживаемых контейнеров при передаче потока в сеть или файл:

Модуль VLCДоступ к выводуВидео кодекиАудио кодеки
mpeg1file, httpmp1v, mp2v, mpgvmpga, mp3
tsfile, udp, rtp, http, https, mmshmpgv, mp4v, h264, jpeg, ms,
    MP1, MP2, MP3, mp4a, a52, lpcm, dts
psfle, httpmpgv, mp4vmpga, mp4a, dts, a52, lpcm
mp4filemp4v, mpgv, MJPG, mjpb, SVQ1, SVQ3, H263, h264mp4a, mpga, samr, sawb
avifilemp1v, mp2v, mp4v, H263, H264, I263a52
asffile, httpmp4v, mjpg, wmv1, wmv2a52
asfhmmshmp4v, mjpg, wmv1, wmv2a52
dummyfileMP3
ogghttp, filetheo, drac, tark, mpgv, mp4v, div3, mjpg, wmv1, wmv2, wmv3,
snow
vorb, flac, spx

Указывать формат в который обернут мультимедийный поток не требуется, зато при вещании или записи в файл указывать формат файла придется.

В разделе описывающем кодеки ( http://wiki.videolan.org/Codec ) я встретил рекомендацию применять формат mpeg1, в качестве видео кодека — mp1v и в качестве аудио кодека — mpga. Объясняется это тем, что такая комбинация способна воспроизводится любым существующим проигрывателем.

Не смотря на обилие таблиц и схем по приведенным ссылкам, некоторые их них противоречат друг другу, поскольку обновляются не одновременно.

Список поддерживаемых кодеков от первого лица можно найти тут: http://wiki.videolan.org/VLC_Features_Formats . Полезной будет и ссылка на базу знаний, http://wiki.videolan.org/Knowledge_Base . Привожу обе ссылки, так как информация по ним не только пересекается, но и обоюдно дополняется.

В случае обнаружения неточностей, или ошибок, обязательно сообщите.

Спасибо, что дочитали до конца.