Estrarre da un file WAV i soli dati audio grezzi
Da Gambas-it.org - Wikipedia.
Versione del 21 mar 2014 alle 04:42 di Vuott (Discussione | contributi)
Per estrarre da un file WAV i soli dati audio grezzi unicamente mediante le funzioni di Gambas, è possibile utilizzare un codice come il seguente:
Public Sub Main() Dim percorsoFile, intero_file, dati_grezzi As String Dim n As Short percorsoFile = "/percorso/del/file.wav" intero_file = File.Load(percorsoFile) n = InStr(intero_file, "data") ' Prendiamo i soli dati audio grezzi dal file, eliminando quelli che compongono il suo "header": dati_grezzi = Right(intero_file, Len(intero_file) - n - 7) File.Save("/tmp/grezzi", dati_grezzi) End
oppure utilizzare le funzioni dei vettori di tipo Byte[]:
Public Sub Main() Dim fileWAV As String Dim fl, ex As File Dim d As Short Dim bb As Byte[] fileWAV = "/percorso/del/file.wav" ' Carica un file audio Wav: fl = Open fileWAV For Read d = InStr(File.Load(fileWAV), "data") bb = New Byte[Stat(fileWAV).Size - (d + 7)] ' Spostiamo il puntatore all'interno del flusso del file ' sul primo byte successivo all'header del file wav: Seek #fl, d + 7 bb.Read(fl, 0, Stat(fileWAV).Size - (d + 7)) ex = Open "/tmp/dati_grezzi" For Create ' Scrive il file contenente i soli dati audio grezzi del file Wav: bb.Write(ex) ' Va in chiusura: ex.Close fl.Close End