7.2. Codec audio

I codec più importanti su tutti:

7.2.1. Decodifica software AC-3

Questo è il decodificatore di default usato per file con audio AC-3.

Il decodificatore AC-3 può creare mix audio in uscita per 2, 4, o 6 altoparlanti. Quando è configurato per 6 altoparlanti, questo decodificatore fornisce uscite separate di tutti i canali AC-3 verso il driver audio, permettendo un'esperienza completa "surround sound" senza il decodificatore esterno AC-3 richiesto per usare il codec hwac3.

Usa l'opzione -channels per impostare il numero dei canali di uscita. Usa -channels 2 per un sottomissaggio stereo. Per un sottomissaggio a 4 canali (uscite Frontale sinistro, Frontale destro, Surround sinistro, Surround destro), usa -channels 4. In questo caso, un qualsiasi canale centrale verrà miscelato in parti uguali nei canali frontali. -channels 6 farà uscire tutti i canali AC-3 così come sono stati codificati - nell'ordine, sinistro, destro, Surround sinistro, Surround destro, centrale e LFE.

Il numero di default dei canali di uscita è 2.

Per usare più di 2 canali, ti servirà OSS, e avere una scheda audio che supporti l'appropriato numero di canali di uscita attraverso l'ioctl SNDCTL_DSP_CHANNELS. Un esempio di un diver utilizzabile è emu10k1 (usato dalle schede Soundblaster Live!) dall'agosto 2001 o dopo (anche il CVS ALSA si suppone funzioni).

7.2.2. Decodifica hardware AC-3

Ti serve una scheda audio capace di decodificare AC-3, con uscita digitale (S/PDIF). Il driver della scheda deve supportare correttamente il formato AFMT_AC3 (C-Media lo fa). Collega il tuo decodificatore AC-3 all'uscita S/PDIF, e usa l'opzione -ac hwac3. E' sperimentale ma si sa che funziona con schede C-Media e driver Soundblaster Live! + ALSA (ma non OSS) e schede di decodifica MPEG DXR3/Hollywood+.

7.2.3. Supporto per libmad

libmad è una libreria multipiattaforma di decodifica audio, per MPEG solo interi (internamente PCM a 24bit). Non gestisce bene file danneggiati, e delle volte ha problemi con la ricerca, ma può lavorare meglio su piattaforme senza FPU (come ARM) rispetto ad mp3lib.

Se hai una corretta installazione di libmad, ./configure se ne accorgerà e il supporto per audio MPEG attraverso libmad verrà automaticamente compilato.

7.2.4. Codec hardware audio MPEG

This codec (selected by -ac hwmpa) passes through MPEG audio packets to hardware decoders, such as the ones found in full-featured DVB cards and DXR2 adapters. Don't use it in combination with any other audio output device (such as OSS and ALSA) that isn't able to decode it (you will hear only white noise). Questo codec (selezionato con -ac hwmpa) trasferisce direttamente i pacchetti audio MPEG ai decodificatori audio, come quelli che si trovano nelle schede DVB full-option e negli adattatori DXR2. Non usarlo in combinazione con alcun altro dispositivo di uscita audio (come OSS o ALSA) che non sia capace di decodificarlo (sentirai solo rumore bianco).

7.2.5. Codec AAC

AAC (Advanced Audio Coding) è un codec audio che si trova delle volte nei file MOV e MP4. E' disponibile da http://www.audiocoding.com un decodificatore open source chiamato FAAD. MPlayer include uno snapshot CVS di libfaad 2.1 beta, così non hai bisogno di recuperarlo separatamente.

Se usi gcc 3.2 che fallirà nel compilare la nostra FAAD interna oppure vuoi usare la libreria esterna per qualche altra ragione, scarica la libreria della pagina di download e passa --enable-faad-external a ./configure. Non ti serve tutto di faad2 per decodificare i file AAC, è sufficiente libfaad. Compilala così:

cd faad2/
sh bootstrap
./configure
cd libfaad
make
make install

I binari non sono disponibili da audiocoding.com, ma puoi apt-gettare i pacchetti Debian dal sito di Christian Marillat, gli RPM per Mandrake/Mandriva da P.L.F e gli RPM per Fedora RPMs da Livna.

7.2.6. Codec AMR

Il codec voce Adaptive Multi-Rate è usato nei telefoni cellulari di terza generazione (3G). La referenza per l'implementazione è disponibile da The 3rd Generation Partnership Project (gratuita per uso personale). Per abilitarne il supporto, scarica e installa le librerie per AMR-NB e AMR-WB seguendo le istruzioni da quella pagina.