compressione audio

63
1 La compressione audio Come risparmiare spazio e tempo lavorando sulla forma d’onda

Upload: affioma

Post on 10-Oct-2015

22 views

Category:

Documents


0 download

DESCRIPTION

La Compressione Audio

TRANSCRIPT

  • 5/20/2018 Compressione Audio

    1/63

    1

    La compressione audio

    Come risparmiare spazio e tempo

    lavorando sulla forma donda

  • 5/20/2018 Compressione Audio

    2/63

    2

    La compressione audio

    Larte di minimizzare le risorse per i dati audio

    ridurre la memoria occupata

    ridurre i costi di trasmissione

    Risultati attuali: buona qualit in confronto

    allaudio non compresso (stesso tasso di

    trasferimento dati)

  • 5/20/2018 Compressione Audio

    3/63

    3

    Obiettivo: riproduzione trasparente

    Audio che anche orecchie sensibili non

    riescono a distinguere dalloriginale

    Numero minimo di bit mantenendo una

    riproduzione trasparente del segnale

  • 5/20/2018 Compressione Audio

    4/63

    4

    Laudio digitale

    Vantaggi

    alta fedelt delle copie del segnale

    robustezza

    gamma dinamica estesa

    Svantaggio: alto tasso di trasferimento dati

    campionamento: 44.1 kHz (CD), 48 kHz (DAT)

    quantizzazione: PCM lineare a 16 bit

  • 5/20/2018 Compressione Audio

    5/63

    5

    Perch nasce la compressione

    Laudio digitale non compresso occupa ...

    molto spazio sullhard-disk per la memorizzazione

    una banda ampia sul canale di trasmissione

  • 5/20/2018 Compressione Audio

    6/63

    6

    Esempio: brano di 1 min con qualit CD

    Parametri

    campionamento = 44,100 c/s

    quantizzazione = 16 bit = 2 byte

    canali = 2Memoria = 44.100 c/s * 2 can * 2 byte/c * 60 s

    ~ 10 Mbyte

    Tempo = 10 Mbyte * 8 bit/byte / (56 kbps * 60 s) ~ 24 min

    Solo per scaricare un minuto di musica stereo!

  • 5/20/2018 Compressione Audio

    7/63

    7

    non solo

    Problemi di banda per applicazioni multimediali

    Accesso e trasferimento dati sempre pi veloce,

    ma ...

    immagini, video, testo, e audio di alta qualit

    sincronizzati tutti assieme

  • 5/20/2018 Compressione Audio

    8/63

    8

    Due livelli di applicazioni

    Bassa qualit

    telefonia

    Alta qualit

    colonne sonore per giochi su CD-ROM

    memorie allo stato solido (flash) per i suoni

    audio su Internet

    broadcast di audio digitale (Radio e TV)

  • 5/20/2018 Compressione Audio

    9/63

    9

    Compressione e decompressione

    Encoding,

    Codifica,

    Compressione

    Dati audio

    non compressi

    Bitstream inmodalit

    compressaDecoding,

    Decodifica,

    Decompressione

    Audio non compresso

    che suona come loriginale

    lossless

    lossy

  • 5/20/2018 Compressione Audio

    10/63

    10

    Nellanalogico

    Problema: gamma dinamica ridotta

    Riduzione del rumore (Dolby) per aumentare la

    gamma dinamica ridotta dal rumore

    compansion: compression + expansion

    registrazione: compressione della gamma dinamica

    riproduzione: espansione della gamma dinamica

    Compansion su tutte le frequenze (dbx) o su

    bande selezionate (Dolby A, B, C)

  • 5/20/2018 Compressione Audio

    11/63

    11

    La compansion nel digitale

    Esempio: valori di 8 bit

    00001101 = 1101 x 1

    00011010 = 1101 x 10

    00110100 = 1101 x 100

    01101000 = 1101 x 1000

    11010000 = 1101 x 10000

    Sono sufficienti 7 bit = 4 + 3 (si risparmia 1 bit:

    riduzione del 12,5%)

    Perdita di accuratezza nei valori pi grandi

  • 5/20/2018 Compressione Audio

    12/63

    12

    ITU-T G.711, -law e A-law

    -32768

    +32767

    0

    255

    -32768

    +32767

  • 5/20/2018 Compressione Audio

    13/63

    13

    -Law compansion

    Quantizzazione logaritimica

    Gamma dinamica di 14 bit con una codifica a 8-bit

    Per i servizi voce ISDN in Nord America e Giappone

    Semplice il computo della codifica

    -8

    +7

    -4

    +3

  • 5/20/2018 Compressione Audio

    14/63

    14

    Codifica -law

    Codifica PCM lineare(a 16 bit)

    codifica-Lawa 8-bit

    Decodifica PCM lineare(a 16 bit)

  • 5/20/2018 Compressione Audio

    15/63

    15

    Esempi di codifica -law

  • 5/20/2018 Compressione Audio

    16/63

    16

    Lossy-law

    - 200(a 16 bit)

    106a 8-bit

    - 193(a 16 bit)

  • 5/20/2018 Compressione Audio

    17/63

    17

    ADPCM

    CCITT G.721, G.723, e ITU-T G.726

    Standard per la compressione di dati vocali

    CCITT G.721 (ADPCM a 32 Kbps)

    CCITT G.723 (ADPCM a 24 e 40 Kbps)

    ADPCM = Adaptive Differential PCM

    metodo comune di compressione

    buon compromesso tra velocit di elaborazione,

    tasso di compressione e decodifica di qualit

  • 5/20/2018 Compressione Audio

    18/63

    18

    Codifica della differenza (DPCM)

    Ridondanze temporali tra i campioni

    La differenza tra due campioni a x-bit si purappresentare con meno bit di x

    Si memorizza la differenza (non il campione)

    +1

    +1

    +1 0 0

    -1

    -1

    0 0

    +1 0

    -1

    -1

    -1

    -3

    0 +1

    +2

    +3

  • 5/20/2018 Compressione Audio

    19/63

    19

    Problema Slope Overload

    Differenze elevate (alte frequenze) non si possonorappresentare con un numero piccolo di bit

    Gli errori introdotti porterebbero a distorsioni sullealte frequenze

    +1

    +1

    0

    -1

    -1

    0

    0

    0 0

    -1

    -2

    -4 +4

    +5

    -8 +6

    -4

    +1

    +1

  • 5/20/2018 Compressione Audio

    20/63

    20

    Adaptive DPCM (ADPCM)

    Passi di quantizzazione pi grandi per

    differenze pi grandi, e viceversa

    Si usano i campioni precedenti per stimare i

    cambiamenti futuri

  • 5/20/2018 Compressione Audio

    21/63

    21

    Schema di ADPCM

  • 5/20/2018 Compressione Audio

    22/63

    22

    Predictor

    +

    +

    campionePCMax-bit

    differenzaADPCM

    a y-bitQuantizer

    AdattatoreStep-Size

    Requantizer+

    Campionen+1PCM predetto

    Raffiniamo ladattabilit ADPCM

    +

    +

  • 5/20/2018 Compressione Audio

    23/63

    23

    Due varianti di ADPCM

    IMA/DVI ADPCM

    comprime dati audio a 16-bit in soli 4 bit

    Microsoft ADPCM

    variante di ADPCM da usare con i WAV

    anchesso dati audio a 16-bit data in 4-bit data

  • 5/20/2018 Compressione Audio

    24/63

    24

    IMA ADPCM

    Register

    +

    +

    campionePCM

    a16-bit

    differenzaADPCM

    a 4-bitQuantizer

    AdattatoreStep-Size

    Requantizer+

    Campionen-1PCM

    Predictor non adattativo

    Passo di quantizzazione aumenta in modo

    logaritmico

    +

    +

  • 5/20/2018 Compressione Audio

    25/63

    25

    IMA: Tabella Passi (di quantizzazione)

    648471116653209353717

    3276788589470106052190343416

    297948753586996351173333115

    270868648716887650157322814

    246238544286779649143312513

    223588440266672448130302312

    203508336606565847118292111

    185008233276459846107281910

    1681881302463544459727179

    1528980274962494448826168

    1389979249961449438025147

    1263578227260408427324136

    1148777206659371416623125

    1044276187858337406022114

    949375170757307395521103

    86307415525627938502092

    78457314115525337451981

    71327212825423036411870

    PassoIndicePassoIndicePassoIndicePassoIndicePassoIndice

  • 5/20/2018 Compressione Audio

    26/63

    26

    Selezione step-size adattiva

    81,751117/4passo < differenza

    61,501103/2passo < differenza < 7/4passo

    41,251015/4passo < differenza < 3/2passo

    21,00100passo < differenza < 5/4passo

    -10,750113/4passo < differenza < passo

    -10,500101/2passo < differenza < 3/4passo

    -10,250011/4passo < differenza < 1/2passo

    -10,00000differenza < 1/4passo

    Variazione indiceMoltiplicatoreOutput del

    Quantizer

    Quantizzazione

  • 5/20/2018 Compressione Audio

    27/63

    27

    LookupTabella

    Step-Size

    Registro

    CalcoloAdattamento

    IndiceTabella

    Step-size

    Adattamentoindice

    Nuovo indice

    OutputQuantizer

    NuovoStep-Size

    Adattatore Step-size

    Quantizer

    AdattatoreStep-Size

    Requantizer

    Quantizer

    Requantizer

    NuovoStep-Size

    +Limiti tabella(0 - 88)

  • 5/20/2018 Compressione Audio

    28/63

    28

    Esempio

    20511,52261103/2 34

  • 5/20/2018 Compressione Audio

    29/63

    29

    La compressione di tipo percettivo

    MP3 & Co.

    Principi psicoacustici applicati

  • 5/20/2018 Compressione Audio

    30/63

    30

    Schema generale

    X(n)

    Analisitempo/

    frequenza

    Quantizzazionee

    Codifica

    Allocazionedi bit

    Analisipsicoacustica

    Compressionesenzaperdite

    (entropia)

    Parametri

    Soglie di

    mascheramento

    bitstream

    nel canale

    Infoaggiuntive

    Decodifica del

    bitstream

    Ricostruzione

    campioni per banda

    Sintesi

    segnale

    X(n)

    Codifica del

    bitstream

  • 5/20/2018 Compressione Audio

    31/63

    31

    Soglia assoluta delludito

  • 5/20/2018 Compressione Audio

    32/63

    32

    Le bande di

    frequenza critiche

    Ban d a Cen t ro Est rem i

    1 50 -100

    2 150 100-2003 250 200-300

    7 700 630-770

    11 1370 1270-1480

    15 2500 2320-2700

    19 4800 4400-5300

    20 5800 5300-6400

    25 19500 15500-

    Bande di 100 Hz fino a

    circa 500 Hz

    Bande per 20% del centro

    oltre 500 Hz

  • 5/20/2018 Compressione Audio

    33/63

    33

    Soglie di mascheramento globale

  • 5/20/2018 Compressione Audio

    34/63

    34

    Mascheramento simultaneo

    Tono di

    mascheramento

    Soglia di

    mascheramento

    Minima soglia dimascheramento

    Banda

    critica

    Banda

    vicina

    m-1mm+1

    SMR

    MNR

    SNR

    dB

    frequenza

  • 5/20/2018 Compressione Audio

    35/63

    35

    Mascheramento temporale

    masker

    Pre

    (5 ms)Post

    (50-300ms)

    Simultaneo

    -50 0 50 100 0 50 150 250150 100

    ms

    dB

  • 5/20/2018 Compressione Audio

    36/63

    36

    MPEG

    (Motion Picture coding Experts Group)

    Gruppo di lavoro di ISO/IEC per lo sviluppo di

    standard internazionali per ...

    compressione, decompressione, elaborazione,

    e rappresentazione codificata di

    video, audio, combinazioni A/V.

  • 5/20/2018 Compressione Audio

    37/63

    37

    Standard MPEG

    MPEG-1: memorizzazione/recupero video/audio(11/92)

    MPEG-2, standard per la TV digitale (11/94)

    MPEG-4v. 1, standard applicazioni multimediali (10/98)

    v. 2, standard audio/video HDTV (12/99)

    MPEG-7: standard rappr. dei contenutiricerca, filtraggio, gestione di info multimediale

    rilasciato a luglio 2001

  • 5/20/2018 Compressione Audio

    38/63

    38

    e MPEG1/2 Layer III (MP3)

    1987 progetto Eureka (Digital Audio

    Broadcasting)

    lavoro su audio percettivo in collaborazione tra

    Fraunhofer IIS e lUniversit di Erlangen

    risultato: algoritmo molto potente ISO-MPEG

    Audio Layer-III

  • 5/20/2018 Compressione Audio

    39/63

    39

    Lo schema di compressione MPEG-1

    Struttura di base comune su pi layer

    calcolo delle sottobande

    calcolo del modello psicoacustico

    3 Layer

    Layer I: semplice, poco efficace

    Layer III: complesso, efficace

    Scelta del layer - rapporto qualit/compressione

  • 5/20/2018 Compressione Audio

    40/63

    40

    Modalit di compressione

    Pi frequenze di campionamento (32/44.1/48)

    Bitstream compresso supporta mono, dual

    mono, stereo, joint stereo

    Bit rate da 32 a 224 kbps (compressione da 2,7

    a 24 volte) tassi fissi e variabili

    Supporta il controllo e la correzione degli errori

    Informazioni supplementari

  • 5/20/2018 Compressione Audio

    41/63

    41

    I tre livelli di compressione

    Layer Iil pi semplice (bitrate oltre 128 kbps a canale)

    DCC di Philips usa la compressione di Layer I a 192

    Layer IIcomplessit media (bitrate circa 128 kbps a canale)

    applicazioni in DAB

    Layer IIIil pi complesso, migliore qualit

    64 kbps adatto per trasmissione audio su ISDN

  • 5/20/2018 Compressione Audio

    42/63

    42

    MPEG 1 - Layer III

    Loop controllo

    distorsione

    Codifica

    di Huffman

    bitstream

    Banco di filtri

    (32 sottobande)

    FFT

    1024 punti

    audio digitale PCM

    Codifica del

    bitstream

    Decodifica del

    bitstream

    Ricostruzione dei

    campioni per bande

    Ricostruzione dei

    campioni nel tempoaudio digitale

    decompresso

    Loop controllo

    quant. log.

    Codifica

    info agg.

    MDCT

    0

    31

    Modello

    psicoacustico

    Analisi tempo-frequenza

    0

    575

    Allocazione dei bit,

    quantizzazione e codifica

    Analisi psicoacustica Riserva

  • 5/20/2018 Compressione Audio

    43/63

    43

    Corrispondenza bande critiche e MPEG

  • 5/20/2018 Compressione Audio

    44/63

    44

    Frame di 12 campioni consecutivi

  • 5/20/2018 Compressione Audio

    45/63

    45

    Modello psico-acustico

    FFT a 1024 punti

    Separazione del segnale in tonale e non tonale

    perceptual noise shaping

    perceptual subband coding

    Calcolo soglie mascheramento globale

    Calcolo rapporto SMR (Signal to Masker Ratio)

    per quantificare i dati da comprimere

  • 5/20/2018 Compressione Audio

    46/63

    46

    Modello psicoacustico

    Necessario per stabilire il livello max di

    quantizzazione

    Non si deve udire il rumore di quantizzazione

    FFT

    1024 punti

    Modello

    psicoacustico

    Analisi psicoacustica

  • 5/20/2018 Compressione Audio

    47/63

    47

    Compressione dei dati audio

    Pi cicli di quantizzazione e codifica

    Modello psicoacustico + bitrate in uscita

    Loop controllo

    distorsione

    Codifica

    di Huffman

    Loop controllo

    quant. log.

    0

    575

    Allocazione dei bit,

    quantizzazione e codifica

    Riserva

  • 5/20/2018 Compressione Audio

    48/63

    48

    Allocazione dei bit

    Alloca i bit necessari per sottobanda

    Calcola MNR = SNR - SMR per sottobanda

    Prende il minimo MNR

    Assegna i bit necessari

    m-1mm+1

    SMR

    NMR

    SNR

    dB

    frequenza

  • 5/20/2018 Compressione Audio

    49/63

    49

    Spettro di ampiezzaper 32 sottobande

    Soglia globale di

    mascheramento

    Allocazione di

    bit per banda

  • 5/20/2018 Compressione Audio

    50/63

    50

    Quantizzazione e codifica

    I bit determinano i livelli di quantizzazione

    Codifica logaritmica dei campioni

  • 5/20/2018 Compressione Audio

    51/63

    51

    Codifica di Huffman

    Meno bit ai valori pi frequenti

    Dopo Huffman: ok per i limiti del bitrate ?

  • 5/20/2018 Compressione Audio

    52/63

    52

    Due cicli di lavoro

    Ciclo interno sui limiti del bitrate (RATE LOOP)

    si quantizzano e si codificano i valori

    compressione di Huffman

    se si eccede il bitrate, si allocano meno bit e go back

    Ciclo esterno sul controllo del rumore per banda

    allinizio tutte le bande sono trattate allo stesso modo

    se dopo il RATE LOOP il rumore in qualche banda

    va oltre il mascheramento, si allocano pi bit solo per

    quelle bande

  • 5/20/2018 Compressione Audio

    53/63

    53

    Terminazione: 3 casi

    In nessuna banda il rumore supera la soglia delmascheramento (no distorsione)

    Iterare ancora comporta per qualche banda il

    superamento dei valori permessiLa prossima iterazione porterebbe ad

    aumentare i bit per tutte le bande

    Gli encoder che lavorano in real time hannoanche limiti di tempo

  • 5/20/2018 Compressione Audio

    54/63

    54

    Quantizzazione/codifica

    Bit di allocazione fino a 4

    Fattore di scala tra 0 e 6 bit

  • 5/20/2018 Compressione Audio

    55/63

    55

    Frame Packer

    file compresso in frame di campioni

    ogni frame ha

    un header con le info di sincronizzazione

    16 bit per il CRC

    Bit per 12 campioni per 32 sottobande

    Coda di bit per info supplementari

  • 5/20/2018 Compressione Audio

    56/63

    56

    Tipiche riduzioni di MPEG

    Riferimento standard (CD):16 bit * 2 canali * 44100 sr = 1.411 kbps

    1:4 con Layer I (PASC)

    corrisponde a 384 kbps per un segnale stereo

    1:6...1:8 con Layer IIcorrisponde a 256..192 kbps per un segnale stereo

    1:10...1:12 con Layer III (MP3)corrisponde a 128..112 kbps per un segnale stereo

    sempre mantenendo la qualit audio CD

  • 5/20/2018 Compressione Audio

    57/63

    57

    Decodifica

    Sintetizza un segnale a partire dalle componenti

    spettrali codificate

    Non si ha pi lo stesso segnale!!!

    Tutto dipende dal bit-rate

    bitstream

    Decodifica del

    bitstream

    Ricostruzione dei

    campioni per bande

    Ricostruzione dei

    campioni nel tempoaudio digitale

    decompresso

  • 5/20/2018 Compressione Audio

    58/63

    58

    Esempi di bitrate

    bit-rate = numero medio di bit consumati da un

    secondo di dati audio (kbps)

    bit-rate per il CD = 1411.2 kbps

    bit-rate per MP3 per qualit CD = 128 kbps

  • 5/20/2018 Compressione Audio

    59/63

    59

    Le performance di MP3

    qualit telefonica: 96:1 (2.5 kHz / mono / 8 kbps)

    meglio di AM radio: 24:1 (7.5 kHz / mono / 32kbps)

    simile a FM radio: 26...24:1 (11 kHz / stereo /56...64 kbps)

    quasi-CD: 16:1 (15 kHz / stereo / 96 kbps)

    CD: 14..12:1 (>15 kHz / stereo / 112..128kbps)prende approx. 1Mb/minute di spazio hard-disk

    Oltre: 84:1 per la musica acustica

  • 5/20/2018 Compressione Audio

    60/63

    60

    MP3 Codec

    programma del tipo di una libreria di sistema

    (collezione di funzioni)

    vengono lanciate dai programmi di frontend

    codec in distribuzione con frontend MP3

  • 5/20/2018 Compressione Audio

    61/63

    61

    Lencoder migliore

    Non ha senso chiedersi quale sia lencoder

    migliore: la risposta dipende dalle esigenze

    encoder veloci/lenti (> velocit, < fedelt audio)

    confrontare mp3 ottenuti da encoder diversi a paritdi bit-rate

    Consiglio pratico (ovvio): creare MP3 con basso

    bitrate con encoder lenti

  • 5/20/2018 Compressione Audio

    62/63

    62

    I Frontend MP3

    interfaccia ai codec

    Alcuni frontend implementano funzioni per

    normalizzare il volume, o realizzano ID TAGS

    IDTAG informazione (testuale, in genere) nel

    file di layer III (autore, titolo, etc ...)

  • 5/20/2018 Compressione Audio

    63/63

    Player MP3

    suona mentre decomprime

    i dati audio (campioni) vengono inviati alla

    scheda per la conversione