Paso 5: Formato de archivo de onda
Un encabezado de archivo de onda es un bloque de 44 bytes.
La cabecera está en el comienzo del archivo wav.
El bloque de encabezado debe ser inicializado a nivel mundial con:
byte wavheader [44];
Datos de audio sigue el encabezado.
Para un 8 bits, datos de archivos wav mono están un número entre 0 y 255.
El script lee el puerto A1, interpretar el audio entrante como una tensión entre 0 y 255. Perfecto!
Sólo 4 secciones de la necesidad de encabezado se actualiza cuando el guardar un archivo de wav.
Estos se muestran como las secciones comentadas en la imagen.
Los bytes en el offset 4 contienen la longitud de los datos + la longitud de la cabecera - 2 * 4 bytes
O más simplemente la cuenta de datos + 36.
Cada uno comentó sección es un número de 4 bytes.
Los cuatro bytes se producen con el byte menos significativo primero - esto es "poco endian formato".
La siguiente rutina se acepta un valor de tipo long y escribirlo en un punto especificado en la cabecera wav como 4 bytes sucesivos:
{} void headmod (valor de tipo long, ubicación de bytes)
Escriba cuatro bytes para un largo
tempfile.Seek(Location); encontrar la ubicación del archivo
Workbench de Byte [4];
Workbench [0] = valor & 0xFF; lo bytes
Workbench [1] = (valor >> 8) & 0xFF;
Workbench [2] = (valor >> 16) & 0xFF;
Workbench [3] = (valor >> 24) & 0xFF; Hola bytes
tempfile.Write(tbuf,4); escribirá el buffer de 4 bytes
}