SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

EL INGENIERO INTENTA CONSTRUIR EL SOFTWARE PARTIENDO
ME211 – INSTRUMENTATION AND SOFTWARE APPLICATIONS INSTRUCTOR MR
VALIDATION TEST PLAN RUNNING [SOFTWARE PRODUCT] ON VMWARE

1 MANAGEMENTUL PROCESULUI DE TESTARE SOFTWARE 11REZUMAT PROIECTAREA APLICAŢIILOR
1 SOFTWARE DE LA PRÁCTICA ADEMÁS DEL STATGRAPHICS
1 SOFTWARE ENGINEERING LABORATORY SIGNUP SHEET CS 2002

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA DE MEDIDAS DE HRTFS CON LABVIEW

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA DE MEDIDAS DE HRTFS CON LABVIEW

Página: 21 de 21

Fecha: 31 de octubre de 2002

Código: DE/TN-EAV/044v.1

Fichero: DETNEAV_44v1.DOC



SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

IAC INSTRUMENTACIÓN

DE/TN-EAV/044v.1

DETNEAV_44v1.DOC

31 de octubre de 2002














PROYECTO / DESTINO:

Espacio Acustico Virtual

TÍTULO:

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA DE MEDIDAS DE HRTFS CON LABVIEW



CUADRO DE AUTORES

Nombre

Función

Mathieu Nedelec

Becario







CUADRO DE CONTROL

Control

Nombre

Función

Revisado por:

Haresh Chulani

Ingeniero electrónico

Aprobado por:



Autorizado por:



historia del documento

Versión

Fecha

Resumen Modificación

1

31-oct-02

Primera Versión









RESUMEN

Este informe explica el desarrollo del programa de emisión y grabación de sonidos para el proyecto “espacio acústico virtual”. Este programa sirve en el dispositivo de medidas de la HRTF (head related function transfer) que está en el ITC (Santa Cruz). Vamos a ver el dispositivo, las posibilidades de la placa de sonido, el programa y las diferentes opciones que tenemos a nuestra disposición. El objetivo es medir la HRTF, entonces vamos a ver la manera de conseguirla.





TABLA DE CONTENIDO

1

CUADRO DE AUTORES 2

CUADRO DE CONTROL 2

historia del documento 2

RESUMEN 3

TABLA DE CONTENIDO 4

Lista de abreviaturas 5

1. INTRODUCCIÓN 6

2. DIPOSITIVO DE PRUEBAS UTILIZADO 7

3. PLACA DE SONIDO 8

4. PROGRAMA PARA EL MODO PUNCH-IN 9

4.1 FRONT PANEL 9

4.2 DIAGRAMA 10

4.2.1 Configuración del sistema de reproducción y de grabación de sonidos. 10

4.2.2 Tratamiento de las datos grabados (retraso, longitud) 11

4.2.3 Registro de los archivos 12

4.3 RESULTADOS 13

5. PROGRAMA EN MODO LOCK TO PLAYBACK 14

5.1 FRONT PANEL 14

5.2 DIAGRAMA 15

5.2.1 Configuración del sistema de reproducción y de grabación de sonidos. 15

5.2.2 Tratamiento de las datos grabados (retraso, longitud) 16

5.2.3 Registro de los archivos 17

5.3 RESULTADOS 18

6. COMPARACION DE LOS DOS MODOS 19

7. MEDIDA DE LA HRTF 20

ANEXOS 21



Lista de abreviaturas

EAV

Espacio Acústico Virtual

HRTF

Head Related Function Transfer



1.INTRODUCCIÓN


Maria de los Angeles Malfaz Vazquez ha desarrollado el software de control de sistema de medidas de HRTFS para el proyecto EAVII. Se desarrolló bajo el entorno Labview 6.0, paquete profesional (Professional Development System).

No tuvo tiempo de realizar el control de la placa PCI de audio (CardDeluxe de Digital Audio Labs). Se puede obtener mas información en www.digitalaudio.com.

Ese documento presenta mi trabajo sobre ese parte del software.

Se debe hacer un Instrumento virtual (función de Labview) que se podrá integrar en el programa de María. El objetivo es emitir un sonido y al mismo tiempo grabar con micrófonos miniatura (situados en las orejas). No se debe tener retraso entre la emisión y la grabación, sino el debido a la distancia entre el altavoz y los micrófonos.

Vamos a ver que la placa de sonido tiene dos modos de grabación (“Punch-In” y “Lock to Playback”). Se ha desarrollado un instrumento virtual para los dos modos.


































2.DIPOSITIVO DE PRUEBAS UTILIZADO

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

El set-up de laboratorio solo permite trabajar con 1 micrófono cada vez, y por tanto 1 canal de la CardDeluxe. Para el modo de operación de 2 canales, se ha probado el programa, pero 1 de los canales solo adquiere ruido electrónico.



















3.PLACA DE SONIDO



Para entrar en la configuración de la placa de sonido CardDeluxe, se debe ir en el panel de control, después en el icono Multimedia, en los dispositivos, dispositivos de audio y en cardDeluxe(configuración).

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

PSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA ara que el sonido que entra en los micrófonos

no sale sobre el altavoz, se debe bajar el nivel de “Analog Input” en el “Analog Output Mixer” hasta

“-INF dB”.





SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA







En el primer programa, utilizamos el modo

PSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA unch-in, es el modo predefinido.




PSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA ara sincronizar la grabación y la emisión,

Se debe elegir el Record mode :

Lock to playback”, es lo que vamos a utilizar en el segundo programa.













4.PROGRAMA PARA EL MODO PUNCH-IN

4.1FRONT PANEL

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

ESOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA l “Instrumento Virtual” que he desarrollado se llama “play&record.VI”.







Las entradas:

El dispositivo del laboratorio no permitía grabar con los dos micrófonos, entonces hemos creado un modo 1 micrófono. Cuando ese modo esta activo, se debe elegir el derecho o el izquierdo.

Las salidas:

Es el retraso entre la ejecución de los órdenes de grabación y emisión. Este retraso se elimina de la grabación, de manera que el único retraso que permanece es el debido a la distancia física entre el altavoz y micrófonos.

Indica que los ficheros han sido grabados.



4.2DIAGRAMA

El diagrama se divide en 3 secuencias:



4.2.1Configuración del sistema de reproducción y de grabación de sonidos.

Las funciones de sonidos bajo Labview funcionan en línea.

Sound INPUT:

PSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA rimero se debe configurar el modo de grabación (Estéreo, Rate = 44100, 16 bits) y el tamaño del buffer (Si Config). Cogemos para nuestra aplicación un buffer de 10000 bytes, que son 2500 muestras de 16 bits por canal. Iterando 7 veces dentro de un bucle, y rellenando el buffer en cada iteración, obtenemos ,397 seg. de grabación. Despues, empezamos la grabación (Si Start), y las datos se guardan en una variable matricia (Si Read). El bucle contiene “shift registers” ( ) , permite reentrar la salida en la entrada (a cada nueva bucle). Así, cada vez que el buffer se llena, hacemos una nueva bucle, y el contenido del nuevo buffer se agrega al anterior.

Sound OUTPUT:

Recuperamos la forma de onda del archivo “Mls16kpk.wav” (Wav File), y podemos configurar el modo de reproducción (So Config) (Mono, Rate = 44100, 16 bits). La configuración se pasa en una secuencia para que “Si Start” y “So Start” empiecen en el mismo momento. “So wait” permite esperar que todo el archivo sea leido.

Si Clear” y “So Clear” permiten borrar todos las datos que no sirven.



DSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA
iagrama 0 [0...2]



4.2.2Tratamiento de las datos grabados (retraso, longitud)

Primero, se debe separar los dos canales del sonido estéreo. Después, con la función de correlación cruzada, tenemos el retraso de cada canal. Si es en modo 2 micrófonos, cogemos el retraso más pequeño. Se añade el retraso debido a la distancia entre el altavoz y los micrófonos. Se cortan los archivos a la misma longitud que el sonido de salida (0.341 seg.).

Entrada modo 1 / 2 micrófonos: TRUE : 2 micrófonos. (el otro modo no importa)

FALSE : 1 micrófono.

Entrada modo izquierda / derecha: TRUE : izquierda.

(solo en modo 1 micrófono) FALSE : derecha.

Diagrama 1 [0...2]

4.2.3RSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA
SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA
SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA egistro de los archivos

Se pueden guardar los sonidos en los archivos que se han entrado.

La salida “OK ?” indica que la grabación no ha tenido problema.

OK?: TRUE : todo ha ido bien.

FALSE : hay un problema



Diagrama 2 [0...2]



SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA


4.3RESULTADOS

Ese programa funciona pero tiene unos problemas. El retraso debido al software no es siempre el mismo, entonces debemos entrar la distancia entre el altavoz y los micrófonos y después cortar la forma de onda correctamente. El tratamiento de la grabación (correlación cruzada, etc.. ) tiene también un tiempo de ejecución bastante importante. Hay un otro modo en la placa de sonido (“Lock to playback”), quien permite sincronizar la grabación y la reproducción del sonido. Vamos a ver ahora ese nuevo programa.



5.PROGRAMA EN MODO LOCK TO PLAYBACK

5.1FRONT PANEL

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA


El “Instrumento Virtual” que he desarrollado se llama “play&record.VI”.


SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA







Las entradas:

Las salidas:

Indica que los ficheros están grabados.



5.2DIAGRAMA

El diagrama se divide en 3 secuencias:



5.2.1 Configuración del sistema de reproducción y de grabación de sonidos.

Primero se debe configurar el modo de grabación (Estéreo, Rate = 44100, 16 bits) y el tamaño del buffer (Si Config). Cogemos para nuestra aplicación un buffer de 65830 (0.373 seg. de grabacíon).

Recuperamos la forma de onda del archivo “Mls16kpk.wav” (Wav File), y podemos configurar el modo de reproducción (So Config) (Mono, Rate = 44100, 16 bits).

La placa de sonido tiene un modo “Lock to playback” que permite sincronizar la emisión y la grabación. Se pide primero de reproducir el sonido y cuando se ordena la grabación, la reproducción empieza con un retraso constante de 73 muestras (1,6 ms). Entonces, en ese modo, el sonido no se reproduce si no pedimos despues de grabar.

So wait” permite esperar que todo el archivo sea leído.

Si Read” envía los datos grabados en una matriz.

Si Clear” y “So Clear” permiten borrar todos las datos que no sirven.

DSOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA iagrama 0 [0...2]

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA



Si añadimos una función de espera en ese secuencia (entre el orden de reproducir y el orden de grabar), el retraso no cambia (siempre 73 muestras).



5.2.2Tratamiento de las datos grabados (retraso, longitud)

Primero, se debe separar los dos canales del sonido estéreo.

Tenemos un retraso constante de 73 muestras.

Se puede cortar los archivos a la misma longitud que el sonido de salida (0.341 seg.) y corregir el retraso.





Diagrama 1 [0...2]

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA




5.2.3Registro de los archivos

Se pueden guardar los sonidos en los archivos que se han entrado.

La salida “OK ?” indica que la grabación no ha tenido problema.

OK?: TRUE : todo ha ido bien.

FALSE : hay un problema









Diagrama 2 [0...2]

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA




5.3RESULTADOS

Con ese programa, hemos resuelto el problema del retraso(con el modo “lock to playback”). También, no se necesita entrar la distancia entre el altavoz y los micrófonos, lo que sería una obligación de más en el programa, de recibir las coordenadas y de calcular la distancia.

6.COMPARACION DE LOS DOS MODOS

He probado los dos modos en la sala de medida del Instituto tecnológico de Canarias. Los dos programas dan prácticamente la misma forma de onda. Solo podemos ver una pequeña diferencia de amplitud debida al ruido.

Sobre el tiempo de ejecución, el programa para el modo “lock to playback” esta mas rápido. En efecto, el programa para el modo “punch in” hace correlaciones cruzadas y otras operaciones. El segundo problema es la necesidad de entrar la distancia entre el altavoz y los micrófonos mientras que en el modo “lock to playback”, tenemos un retraso constante que podemos corregir fácilmente.

Por eso, el programa “lock to playback” esta el mas adaptado a nuestra aplicación. Solo falta integrar lo en el programa de María.

Podemos ver que los dos programas en misma condición dan al misma función de transferencia. Se puede ver como tener la en la pagina siguiente.

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA PUNCH-IN : LOCK TO PLAYBACK :

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA








7.MEDIDA DE LA HRTF



Con el archivo grabado, se puede calcular la función de transferencia del sistema.

Utilizamos para nuestras medidas el fichero mls16kpk.wav, ese fichero corresponde al fichero mlbs.wav filtrado.

SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA









R(t) h(t) = mlbs y(t)

La procedimiento para obtener la funcion de transferencia bajo MatLab es el siguiente :

El fichero grabado se llama medida.wav por ejemplo

>> [mls,n] = readsim(‘C:huron\measure\mls0116k.sim) recuperamos la forma de onda de mls0116k.sim

>> wav2raw(medida.wav) transformamos en .raw medida.wav

>> medida = readraw2(‘medida.raw’,1,16,1) recuperamos la forma de onda de medida.raw



>SOFTWARE DE EMISIÓN Y GRABACIÓN DE SONIDOS DEL SISTEMA

2^14-1

> [h,H] = corrcirc (mls,medida,lenght(mls),1) hacemos la correlacíon cruzada circular entre la mls y la medida.



>> plotmag(h,44100) podemos representar

>>shg la función de transferenci

ANEXOS

  1. CONTENIDO DEL DISQUETe



DETNEAV_044V1.doc

El informe

PLAY&RECORD1.vi

Programa en modo “punch-in”

PLAY&RECORD2.vi

Programa en modo “lock to playback”

Mls16kpk.wav

Fichero utilizado para hacer las medidas








11 COMPUTATIONAL STATISTICAL INFERENCE R SOFTWARE POSSIBILITIES
2 ESTIMACIÓN DE ESFUERZO EN DESARROLLO DE SOFTWARE 4
2 POCKETPC (HANDHELD) CON GPS Y 2 LICENCIAS SOFTWARE


Tags: emisión y, la emisión, software, sonidos, emisión, grabación, sistema