Наиболее важными аудио кодеками среди всех являются:
MPEG layer 1/2/3 (MP1/2/3) аудио (родной код, с MMX/SSE/3DNow! оптимизацией)
Windows Media Audio 7 и 8 (они же WMAv1 и WMAv2) (родной код, с
libavcodec
)
Windows Media Audio 9 (WMAv3) (используя DMO DLL)
AC-3 Dolby аудио (родной код, с MMX/SSE/3DNow! оптимизацией)
AC-3 пропускаемый через звуковое оборудование
AAC
Ogg Vorbis аудио кодек (родная библиотека)
RealAudio: DNET (AC-3 с низким битпотоком), Cook, Sipro и ATRAC3
QuickTime: Qualcomm и QDesign аудио кодеки
VIVO аудио (g723, Vivo Siren)
Voxware аудио (используя DirectShow DLL)
alaw и ulaw, различные gsm, adpcm и pcm форматы и другие простые старые аудио кодеки
Adaptive Multi-Rate (AMR) речевые кодеки
Это декодер, используемый, по умолчанию, для файлов с AC-3 аудио
Декодер AC-3 может создавать аудио вывод микшированный для 2, 4 или 6 колонок. Будучи сконфигурированным для 6 колонок, этот декодер предоставляет раздельный вывод всех AC-3 каналов звуковому драйверу, позволяя получить "звук вокруг" без внешнего AC-3 декодера, необходимого для использования hwac3 кодека.
Используйте опцию -channels, чтобы выбрать количество каналов при выводе. Используйте -channels 2 для микширования до стерео. Для микширования до 4 каналов (Левый Передний, Правый Передний, Левый Задний и Правый Задний выводы), используйте -channels 4. В этом случае все центральные каналы будут равномерно смикшированы до уровня передних каналов. -channels 6 будет выводить все AC-3 каналы так, как они закодированы - по порядку: Левый, Правый, Левый Задний, Правый Задний, Центральный и Сабвуфер.
Количество каналов по умолчанию - 2.
Чтобы использовать более 2 каналов, Вам нужно использовать OSS, и обладать карточкой, поддерживающей необходимое количество каналов через ioctl SNDCTL_DSP_CHANNELS. Примером подходящего драйвера является emu10k1 (используется для Soundblaster Live! карточек) августа 2001'го или новее (ALSA CVS тоже должен работать).
Вам нужна AC-3 совместимая карта с цифровым (S/PDIF) выводом. Драйвер карты должен должным образом поддерживать AFMT_AC3 формат (например C-Media). Подсоедините AC-3 декодер к S/PDIF выводу и используйте опцию -ac hwac3. Это экспериментальная возможность, но известно, что это работает с C-Media картами и Soundblaster Live! + ALSA (но не OSS) драйверами и картами MPEG декодирования DXR3/Hollywood+.
libmad
- это многоплатформенная,
целочисленная (внутренне 24'битный PCM)
библиотека декодирования MPEG аудио. Она не очень хорошо обрабатывает битые
файлы и иногда у неё бывают проблемы с перемещением по файлу, но она
может быть производительнее mp3lib
на платформах без FPU (таких как ARM).
Если libmad
у вас установлена,
./configure сообщит об этом,
и поддержка декодирования MPEG аудио с помощью
libmad
будет включена автоматически.
Этот кодек (выбираемый по -ac hwmpa) передает все аудио пакеты MPEG аппаратным декодерам, таким как установленные в полнофункциональных DVB картах и DXR2 адаптерах. Не используйте его с другими драйверами вывода звука (такими как OSS и ALSA), которые не способны аппаратно декодировать (вы услышите только белый шум).
AAC (Advanced Audio Coding) - это кодек, иногда обнаруживаемый в MOV и MP4 файлах. Декодер с открытым исходным кодом, называемый FAAD, доступен с http://www.audiocoding.com. MPlayer включает в себя CVS версию libfaad 2.1 beta, поэтому Вам ничего не нужно дополнительно скачивать.
Если Вы используете gcc 3.2, который не может скомпилировать встроенный FAAD, или просто хотите использовать внешнюю библиотеку, скачаете её с страницы загрузок и укажите ./configure --enable-faad-external. Вам не нужен весь faad2, чтобы декодировать AAC файлы, достаточно libfaad. Вот как Вы можете её собрать:
cd faad2/ sh bootstrap ./configure cd libfaad make make install
Бинарники отсутствуют на audiocoding.com, но вы можете скачать (apt-get) Debian пакеты с домашней страницы Christian Marillat, Mandrake RPM'ники с P.L.F и RedHat RPM'ники с Livna.
Речевой кодек Adaptive Multi-Rate используется в мобильных телефонах третьего поколения (3G). Исходная реализация доступна с The 3rd Generation Partnership Project (бесплатна для личного использования). Чтобы включить поддержку, скачайте и установите библиотеки поддержки для AMR-NB и AMR-WB, следуя инструкциям на указанной странице.