7.2. Аудио кодеки
Пред. | Глава 7. Поддерживаемые кодеки | След.

## 7.2. Аудио кодеки

Наиболее важными аудио кодеками среди всех являются:

- 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) речевые кодеки

### 7.2.1. Программное декодирование AC-3

Это декодер, используемый, по умолчанию, для файлов с 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 тоже должен работать).

### 7.2.2. Аппаратное декодирование AC-3

Вам нужна AC-3 совместимая карта с цифровым (S/PDIF) выводом. Драйвер карты должен должным образом поддерживать AFMT_AC3 формат (например C-Media). Подсоедините AC-3 декодер к S/PDIF выводу и используйте опцию `-ac hwac3`. Это экспериментальная возможность, но известно, что это работает с C-Media картами и Soundblaster Live! + ALSA (но не OSS) драйверами и картами MPEG декодирования DXR3/Hollywood+.

### 7.2.3. Поддержка `libmad`

`libmad` - это многоплатформенная, целочисленная (внутренне 24'битный PCM) библиотека декодирования MPEG аудио. Она не очень хорошо обрабатывает битые файлы и иногда у неё бывают проблемы с перемещением по файлу, но она может быть производительнее `mp3lib` на платформах без FPU (таких как ARM).

Если `libmad` у вас установлена, `./configure` сообщит об этом, и поддержка декодирования MPEG аудио с помощью `libmad` будет включена автоматически.

### 7.2.4. Аппаратный MPEG аудио кодек

Этот кодек (выбираемый по `-ac hwmpa`) передает все аудио пакеты MPEG аппаратным декодерам, таким как установленные в полнофункциональных DVB картах и DXR2 адаптерах. Не используйте его с другими драйверами вывода звука (такими как OSS и ALSA), которые не способны аппаратно декодировать (вы услышите только белый шум).

### 7.2.5. AAC кодек

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.

### 7.2.6. AMR кодеки

Речевой кодек Adaptive Multi-Rate используется в мобильных телефонах третьего поколения (3G). Исходная реализация доступна с The 3rd Generation Partnership Project (бесплатна для личного использования). Чтобы включить поддержку, скачайте и установите библиотеки поддержки для AMR-NB и AMR-WB, следуя инструкциям на указанной странице.

Пред. | Уровень выше | След.
7.1. Видео кодеки | Начало | 7.3. КАК извлечь кодек из Win32