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

1160

А вот и вторя статья о мультимедийном комбайне 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
A52 A/52 (A52) по существу
аналог AC-3 (AC3), который представляет
собой Dolby Digital.

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

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

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

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

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

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

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

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

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

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

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

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

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

flv
.mov MOV Файлы с расширением .MOV по умолчанию
предназначены для проигрывания в
QuickTime. Файлы с таким расширением могут
содержать один из многих форматов
кодирования аудио и видео.
mov
.m4a, .m4b, .m4p MPEG-4 Audio MPEG-4 является одним из вариантов
кодирования MPEG, представляя собой
гибкий формат кодирования аудио и
видео. Описывает способ сжатия аудио
и видео вместе с форматом контейнера
для вещания в сеть или хранения на
диске. Поддерживает такие особенности
как DRM и субтитры. MPEG-4 обеспечивает
лучшее качество чем MPEG-2.
mp4а, m4a
.mp4 MPEG-4 mp4v, m4v
.ogg Ogg Являясь контейнером, ogg может содержать
информацию закодированную различными
кодеками (например DivX, XviD, MP3 и другими),
но обычно Ogg используется вместе с
Vorbis, Theora, FLAC и Dirac.
ogg
.pva PVA Расширение PVA обозначающее формат
Packetized Elementary Streams (PES) содержащий и видео
и аудио. Файлы PES обернуты в контейнер
Elementary Streams. По своей природе формат
Elementary Streams является либо аудио либо
видео контейнером. Однако, благодаря
отметкам о времени, с некоторыми
накладными расходами, файлы PVA могут
включать и видео и аудио потоки для
обертывания видео MPEG-2 и аудио AC3 Dolby
Digital. Кие файлы часто получаются на
выходе работы программного обеспечения
ведущего захват Digital Video Broadcast (DVB),
например со спутникового ресивера.
pva
.rm, .ram, .ra RealMedia RealMedia тип файла разработанный
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
.wav WAV WAVE это способ хранения не сжатой
аудио информации. Основан на RIFF.
wav
.wmv Windows Media Video Проприетарный формат Microsoft для видео
информации
wmv3, wmv
.wmа Windows Media Audio Проприетарный формат Microsoft для аудио
информации
wma2, wma

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

Модуль VLC Доступ к выводу Видео кодеки Аудио кодеки
mpeg1 file, http mp1v, mp2v, mpgv mpga, mp3
ts file, udp, rtp, http, https, mmsh mpgv, mp4v, h264, jpeg, ms,
    MP1, MP2, MP3, mp4a, a52, lpcm, dts
ps fle, http mpgv, mp4v mpga, mp4a, dts, a52, lpcm
mp4 file mp4v, mpgv, MJPG, mjpb, SVQ1, SVQ3, H263, h264 mp4a, mpga, samr, sawb
avi file mp1v, mp2v, mp4v, H263, H264, I263 a52
asf file, http mp4v, mjpg, wmv1, wmv2 a52
asfh mmsh mp4v, mjpg, wmv1, wmv2 a52
dummy file MP3
ogg http, file theo, 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 . Привожу обе ссылки, так как информация по ним не только пересекается, но и обоюдно дополняется.

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

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