Estrarre informazioni da un file .wav

Da Gambas-it.org - Wikipedia.

Il file .wav è un sottotipo del file RIFF.

Le informazioni generali di un file WAVE sono contenute nei primi 44 byte del file medesimo.

Il file WAVE è sostanzialmente composto da un solo blocco (chunk), a sua volta composto da due sottoblocchi: il primo blocco, appunto, formato da 44 byte contiene - come già detto - le informazioni relative alle caratteristiche del file; il secondo blocco contiene i dati audio veri e propri della forma d'onda digitalizzata.


Estrazione delle informazioni con le sole funzioni Gambas

Volendo estrarre le informazioni più importanti relative ad un file WAV mediante le sole risorse interne di Gambas, andremo a leggere alcuni byte spcifici appartenenti al primo sotto-blocco. Bisogna sottolineare che i le informzioni sono espresse all'interno del primo sotto-blocco in modalità little-endian. |1|

Frequenza di campionamento

Le informazioni relative alla frequenza di campionamento del file WAV sono contenute nel 25°, 26° e 27° byte.

Risoluzione del campionamento

Le informazioni relative alla risoluzione in bit del campionamento del file WAV sono contenute nel 17° e 18° byte.

Numero di canali

Le informazioni relative al numero di canali del file WAV sono contenute nel 23° e 24° byte.

La lunghezza del file

I file WAV contiene immediatamente dopo il primo sotto-blocco iniziale quattro byte che indicano la quantità di byte contenuta dal secondo sotto-blocco (quello formato dai veri e propri dati audio grezzi). Per conoscere la totale dimensione del file WAV, pertanto, basterà aggiungere a tale valore il numero 44 (che rappresentano i quarantaquattro byte che formano il primo sotto-blocco informativo del file).

Esempio pratico

Per estrarre le suddette informazioni, potremo, dunque, realizzare un codice simile quello che segue:


Pagina in costruzione !


Note

[1] Ordine dei byte


Riferimenti

Per un ulteriore e dettagliata spiegazione rinviamo ai seguenti siti: