Audio Digitale: Manipolazione del segnale Audio digitale

Read this page in English Read this page in English Lire cette page en Français
CDROM Corso Audio Multimediale Ti piace questo Corso?
Scarica la versione integrale!

Nel momento in cui un segnale audio viene campionato, viene convertito in sequenze binarie e dunque può essere considerato come un insieme di dati memorizzabili su un opportuno supporto (hard disc, CD-ROM, zip disc, jaz). Una volta che disponiamo del segnale sonoro in formato binario possiamo utilizzare una macchina digitale (per esempio un computer) per operare manipolazioni sui dati. La mole di dati che ci troviamo a manipolare è imponente (ricordiamo che 1 secondo di musica stereo equivale ad una mole di dati pari a 172.26 Kbyte [Specifiche del formato CD Audio ] ) e dunque uno dei vincoli di cui dobbiamo tenere conto è la potenza di calcolo di cui disponiamo. A volte le operazioni necessitano di essere eseguite in tempo reale [31 ] come per esempio un modulo digitale che esegue un algoritmo [32 ] per il calcolo del riverbero sul segnale di ingresso. Vediamo nel dettaglio come vengono manipolati i dati in modo da avere una percezione esatta delle grandezze coinvolte. Per fissare le idee supporremo che l'unità di calcolo centrale (CPU: Central Processing Unit) lavori sui dati a blocchi di 1 secondo; anche se le condizioni di lavoro reali si basano su tempi molto più ristretti, l'unità di misura scelta ci permette di focalizzare con maggiore facilità i diversi aspetti della questione. Se lavoriamo in tempo reale, ciò significa che dobbiamo fornire in uscita un flusso continuo di dati e questo ci impone di eseguire la nostra manipolazione su una mole di dati di 172.26 Kb (equivalenti ad 1 secondo) in un tempo inferiore, o al massimo uguale, ad 1 secondo. Il tempo di elaborazione dipende da due fattori principali:

  • La potenza di calcolo: dipende dal numero di operazioni elementari al secondo [33 ] che il processore è in grado di effettuare e da altri fattori come per esempio la quantità di memoria disponibile per le operazioni e il tempo di accesso ai dati della memoria stessa.

  • La complessità dell'algoritmo: le manipolazioni eseguite sui dati implicano calcoli matematici. Maggiore è la complessità del calcolo (che generalmente deriva dalla maggiore raffinatezza dell'algoritmo), maggiore è il tempo impiegato ad eseguirlo.

Nel caso che stiamo considerando è necessario che il nostro modulo manipoli ogni blocco di dati in un tempo inferiore a 1 secondo in modo tale da non essere mai in ritardo rispetto al flusso di dati che arriva in ingresso.

L'esempio descritto è utile per capire il funzionamento dei moduli digitali ma non è utilizzabile nella realtà in quanto introdurrebbe uno sfasamento di 1 secondo tra il segnale di ingresso e quello di uscita. Lavorando in tempo reale, tale ritardo sarebbe inaccettabile. In realtà la manipolazione viene eseguita su porzioni di segnali molto più brevi di un secondo in modo tale che il processore esegua il calcolo su una mole di dati relativamente ridotta. Questo permette di portare il tempo di calcolo a valori inferiori ai 30 ms, ossia all'interno della zona di Haas [Effetto Haas ] il che significa non introdurre un ritardo percettibile e dunque poter effettivamente lavorare in tempo reale.

A volte non è necessario lavorare in tempo reale dunque si possono utilizzare macchine con potenza di calcolo inferiore allungando i tempi di elaborazione. In questa modalità la manipolazione viene applicata sull'intera mole di dati e il risultato non è disponibile finché l'elaborazione non è completata.



[31 ] Lavorare in tempo reale significa ottenere un flusso di dati in uscita alla stessa velocità di quella cui cui i dati in ingresso vengono acquisiti.

[32 ] Un algoritmo è un procedimento di calcolo finalizzato ad ottenere un determinato risultato a partire da un insieme di condizioni e dati iniziali. Per una dettagliata descrizione degli algoritmi e delle loro implementazioni si rimanda a qualsiasi testo di introduzione all'informatica.

[33 ] Viene misurata in MHz. Un processore con una velocità di 120 MHz è in grado di eseguire 120 milioni di operazioni elementari al secondo.








curve 

Ultimi commenti

curve 

Ultimi articoli

curve 

Post più visti