Home

Formati e codec¶

Indice¶

  • Intro
  • Bitrate
  • Formati non compressi
  • Compressione lossy
  • Compressione lossless

Intro Indice

Come risultato del processo di campionamento di un segnale audio analogico otteniamo una sequenza di numeri binari (numeric streams) che può essere scritta in particolari tipi di files (audio files o sound files) memorizzati su svariati tipi di supporti digitali (CD, DVD, HD o altro).

Questi files possono avere tre diversi formati di codifica:

  • Non compressi: tutti i dati derivati dal processo di campionamento sono scritti nel file memorizzato.
  • Lossy: l’informazione contenuta nel file memorizzato è minore di quella contenuta nei dati di origine (perdita di informazioni).
  • Lossless: l’informazione contenuta nel file memorizzato è identica a quella contenuta nei dati di origine ma i dati sono comunque compressi.

Questo perchè nel momento in cui abbiamo l'esigenza di memorizzare su un supporto digitale tutte le informazioni riguardanti un segnale potremmo voler ridurre lo spazio di memorizzazione occupato a vantaggio della portabilità o della trasmissività del flusso codificato.

Per farlo dobbiamo ricorrere alla compressione delle informazioni in un modo tale che permetta anche l'operazione inversa.

Questa operazione è svolta dai codec che sono dei programmi (o dispositivi) che si occupano sia della digitalizzazione dei segnali (tipicamente audio o video) che della loro codifica e/o decodifica digitale.

Esistono molti tipi di codec, differenti tra loro sia per le caratteristiche del segnale su cui devono operare (audio, video, audiovideo, etc.) che per l’algoritmo di codifica/compressione in essi implementato.

Ogni formato di codifica può essere ottenuto attraverso codec differenti in quanto permettono di ascoltare formati proprietari aperti da qualunque lettore di file, mantenendo separati il livello fisico del formato da quello logico della sua rappresentazione.

I vantaggi della compressione sono:

  • occupare minor spazio sul supporto di destinazione.
  • impiegare minor tempo in fase di trasferimento dati (bitrate).

Gli svantaggi:

  • aumento dei tempi di lettura/scrittura legati ai tempi di decompressione/compressione.
  • nel caso di sound files una perdita di qualità audio.

Bitrate Indice

Prima di approfondire i diversi tipi di formati audio soffermiamoci su concetti legati alla velocità di trasmissione dei dati in quanto i file audio sono per loro natura legati al tempo che scorre.

Ad ogni secondo è associato un certo contenuto informativo e quindi una certa sottosequenza di cifre binarie.

Il numero di cifre binarie che compongono queste sottosequenze è detto bitrate.

Il bitrate è quindi il numero di cifre binarie impiegate per immagazzinare un secondo di informazione.

I cd musicali ad esempio hanno come standard una frequenza di campionamento pari a 44.100 Hz che genera 44.100 valori al secondo per ogni canale.

Nel caso di un file stereofonico vanno poi moltiplicati per 2 e siccome il campionamento avviene a 16 bit (2 byte) vanno ulteriormente moltiplicati per 2:

In [1]:
# sr    ch    byte  secondi
44100 * 2  *  2  *  60 
Out[1]:
10584000

Ovvero occupa più o meno 10 MB per ogni minuto.

Il bitrate si esprime in kilobit per secondo (kbps) e può variare da 32 a 320 kbps.

Se volessimo ad esempio calcolare il bitrate del file precedente dovremmo calcolare:

In [2]:
# sr    ch    byte  da bytes a bit
44100 * 2  *  2  *  8 
Out[2]:
1411200

Ovvero 1.411.200 bit al secondo (1.411 kbs).

I calcoli appena effettuati fanno riferimento a un formato non compresso mentre nel caso dei formati compressi, al diminuire della lunghezza globale del file diminuisce anche la lunghezza media delle sottosequenze e di conseguenza il bitrate medio che corrisponderà al fattore di compressione.

Infatti se un file con un bitrate di 1411 Kbps come quello dell'esempio precedente fosse compresso fino ad ottenere un bitrate medio di 320 Kbps, avremmo ridotto le dimensioni del file originale di un fattore pari a circa 4.5 (1411 / 320).

Nei codec più evoluti esistono tre tipologie di implementazione del bitrate:

  • CBR (Costant BitRate). La modalità più semplice, più usata ma meno efficace.
    • Il bitrate rimane costante e l’encoder utilizzà sempre la stessa quantità di bit.
    • I passaggi con maggiore range dinamico hanno una qualità inferiore rispetto a quelli con poca dinamica.
    • La dimensione del file risultante è sempre proporzionale alla durata del pezzo e facilmente valutabile.
  • ABR (Average BitRate). Ha una resa superiore al CBR e consiste in una sorta di bitrate variabile.
    • L’encoder codifica i passaggi che lo necessitano con più bit e quelli più semplici con meno, cercando di mantenere nell’intero file il bitrate medio impostato.
    • I bit risparmiati nei passaggi con minor range dinamico sono utilizzati per quelli più complessi.
    • La dimensione del file è abbastanza prevedibile e proporzionale.
  • VBR (Variable BitRate ). Il bitrate è realmente variabile.
    • Se impostiamo un indice di qualità e un bitrate massimo e minimo l’encoder utilizza il bitrate più appropriato per ogni passaggio.
    • Le dimensioni del file ottenuto dipendono dalla complessità dinamica e non sono facilmente prevedibili.

Formati non compressi Indice

Esistono formati audio che non hanno compressione e che in fatto di qualità sonora sono i migliori.

Occupano molto più spazio in memoria e hanno una minore velocità di trasmissione rispetto ai formati compressi.

Con software professionali come Pro Tools, SuperCollider o Max generalmente si lavora con file di questo tipo.

I due principali formati sono:

  • WAV (Wave). Formato audio sviluppato da Microsoft e IBM per PC IBM compatibili.
  • AIFF (Audio Interchange File Format). Formato sviluppato dalla Apple viene anche chiamato Apple Interchange File Format.

Compressione lossy Indice

Permette compressioni maggiori, ma a scapito della qualità sonora.

I metodi di compressione lossy in generale eliminano le informazioni ritenute inutili, e nascono dall’idea che non tutte le frequenze contenute in uno spettro sonoro vengono percepite dall’orecchio umano.

Si tagliano ad esempio le alte frequenze, che si ritiene siano quelle meno distinte dal nostro orecchio.

Più frequenze si tagliano più lo spazio occupato dalla traccia audio diminuisce e con questo anche la qualità del risultato in quanto il processo di riconversione non permette il completo ripristino delle frequenze tagliate.

Principali formati audio di questo tipo:

  • MP3 (MPEG-1/2 Audio Layer 3). Algoritmo in grado di ridurre drasticamente la quantità di dati richiesti per riprodurre un suono, riesce ad ottenere comunque una riproduzione quasi fedele del file originale non compresso. Il codec migliore per la compressione è il Lame. Bitrate massimo raggiungibile 320 Kbps.
  • WMA (Windows Media Audio). Standard per file audio inventato dalla Microsoft. Formato di compressione audio molto simile a un MP3.
  • OGG (Vorbis). Algoritmo open source e a parità di qualità percepita, permette una maggiore compressione rispetto al formato MP3, ottenuta mediante avanzate ricerche di psicoacustica.
  • AAC (Advanced Audio Coding). Formato di compressione audio incluso ufficialmente nell’MPEG-4. Qualità audio superiore al formato MP3 con una codifica più compatta. Nella variante che gestisce i diritti d’autore ha una compressione a 128 Kbps (lo standard di iTunes Store). I tempi di conversione sono un po’ più lenti rispetto agli altri formati.
  • AC3 (Dolby Digital). Codifica audio multicanale sviluppato da Dolby Laboratories Inc ed utilizzato al cinema, nella TV digitale, nei Laser Disc, DVD ed in altri supporti di riproduzione o trasmissione audio digitale. Lavora da un minimo di 96 kbps ad un massimo di 640 kbps.

Compressione lossless Indice

Questi metodi di compressione cercano di diminuire lo spazio occupato dalla traccia senza andare a toccare il suono.

La percentuale di compressione è decisamente inferiore rispetto ai metodi lossy, ma non si verifica perdita di qualità e in fase di riconversione il suono è identico all'originale.

Principali formati audio di questo tipo:

  • FLAC (Free Lossless Audio Codec). Open source attualmente ha un buon supporto da parte di vari software audio. Diversamente dalla maggior parte degli algoritmi di compressione lossless (come ZIP e gzip, per esempio) che raggiungono soltanto un 10-20% di compressione raggiunge compressioni importanti, dell’ordine del 30-50%.
  • APE (Monkey's Audio). Formato che permette di ridurre di circa il 50% lo spazio occupato (in certi casi anche di più). Attualmente non più sviluppato.
  • ALAC (Apple Lossless Audio Codec). Sviluppato dalla Apple memorizza i dati in un contenitore MPEG-4 con estensione .m4a. Non prevede una gestione dei diritti digitali (DRM) e al giorno d'oggi è in disuso.