Anda di halaman 1dari 23

Proyecto 3: Manipulacin de Seales de Audio

Santiago Sarabia
Departamento de Elctrica y Electrnica Universidad de las Fuerzas Armadas Casilla 17-15-231B, Sangolqui, Ecuador E-mail: tago-24@hotmail.com

1. Introduccin El siguiente conjunto de actividades tienen por objetivo aplicar los conceptos estudiados sobre seales continuas/discretas y la transformada de Fourier. A lo largo de este laboratorio (basado en Octave) se generaran y visualizaran seales de audio, se las descompondr en sus elementos sinusoidales bsicos, se verificaran algunas propiedades de la transformada de Fourier, y la utilizacin de Fourier en el clculo de respuestas de sistemas as como en la generacin de efectos de sonido. 2. Verificando Matlab Antes de generar y visualizar seales de audio, necesitamos verificar la instalacin y presencia de funcionalidad adicional en Octave. En la mayora de configuraciones se requiere la instalacin paquetes extras disponibles en http://octave.sourceforge.net/packa ges.php. Para el presente conjunto de actividades requerimos al menos los paquetes `audio', `imagen' y `signal'. Para verificar la configuracin del software, inicie la ejecucin de Octave y digite las siguientes sentencias: > t = [0 : 1/8000 : 1]; > x = sin(2 *pi* 440 * t); > stem(t(1 : 40); x(1 : 40); *);

> sound(x; 8000); Explique brevemente que hace cada una de estas sentencias y el resultado de la operacin realizada (si alguna de estas sentencias falla, existen errores en la instalacin de Octave o faltan paquetes extras). a).- La primera sentencia crea un arreglo de tipo double con 8001 datos los cuales crecen aritmticamente de 1.25*10^(-4) hasta 1. b).- La segunda crea igual que la primera un arreglo double con 8001 datos los cuales son producto del seno, con una frecuencia de 440Hz por el tiempo. c).- El tercer comando crea el grafico de la seal del seno con los primeros 40 valores de las matrices antes creadas, del tipo discreto que consta de asteriscos en las puntos que describen la seal. d).- La cuarta y ltima lnea crea la funcin sonido con una frecuencia establecida en la onda y que vaya recorriendo en base a los datos de la seal senoidal. Todo esto crea una seal discreta. 3. Percepcin Auditiva Esta seccin involucra la generacin de seales de audio (i.e., sonidos) para posteriormente ilustrar aspectos particulares de la percepcin de sonidos. Esta primera parte ilustra el fenmeno

de pulsos percibidos al tener superpuestas dos seales sinusoidales con frecuencias similares. 1. Genere y reproduzca una seal de audio de 5 segundos de duracin, consistiendo de la suma de dos sinusoidales de igual amplitud, una con frecuencia de 440 Hz y otra con frecuencia de 442 Hz. Escuche y detecte las pulsaciones.

Grafica de salida

GRAFICA DE SALIDA

Consta de 6 pulsaciones Con la segunda frecuencia de 443Hz

Grafica de salida

Existen 16 pulsaciones generadas con el cdigo anterior 2. Repita el procedimiento anterior con la segunda frecuencia siendo 441 Hz. Nuevamente cuente el nmero de pulsaciones. Repita una vez ms, con la segunda frecuencia igual a 443 Hz. Qu puede notar al respecto? Con la segunda frecuencia de 441Hz

En esta parte consta de 20 pulsaciones. Conforme las aumentamos o reducimos la frecuencia de la segunda onda, aumentan o

disminuyen la velocidad de ejecucin de las pulsaciones de sonidopor ejemplo en ultimo tem de esto las pulsaciones van super rpido, mientras que en de frecuencia de 441 Hz son mas lentas. 3. Repita la parte 1, con la primera frecuencia siendo 220 Hz y la segunda 222 Hz. Qu puede concluir hasta el momento?

izquierdo y otra en el canal derecho. Escuche la seal, qu nota?

Grafica de salida

En este tem tenemos 11 pulsaciones, la intensidad de sonido es ms baja que las anteriores, y la velocidad de ejecucin de cada pulsacin es menor a los casos anteriores, adems en la onda generada el periodo es ms grande, lo que permite una mejor apreciacin de la grafica. 4. Repita la parte 1 una vez ms pero generando una seal estreo, con una sinusoidal en el canal

Podemos escuchar que se pierde las pulsaciones casi no se distinguen ya que las dos seales se reproducen al mismo tiempo.

La siguiente actividad recrea un estimulo, ilustrando el fenmeno de agrupamiento. 1. Escriba una funcin que permita generar una sinusoidal de medio segundo de duracin a una

frecuencia que sea un nmero de semitonos especficos arriba de la nota A bajo C-media (i.e., 220 Hz). Verifique que notas separadas 12 semitonos suenan de forma similar por estar separadas una octava musical.
De acuerdo a la siguiente tabla podemos ver las frecuencias de los semitonos

3. En uno de los canales de audio estreo, reproduzca una secuencia de sinusoidales {13, 3, 10, 6, 6, 10, 3, 13} semitonos arriba de la nota A bajo C-media. En el otro canal de audio reproduzca (al mismo tiempo) una secuencia {1, 12, 5, 8, 8, 5, 12, 1} semitonos arriba de A bajo C-media. Escuche el estimulo percibido, qu nota?

Generados por el cdigo anterior:

2. Adapte la actividad del punto anterior para permitir tocar mltiples sinusoidales, una despus de la otra.

4. Anlisis de Fourier 4.1. Descomposicin En el siguiente conjunto de actividades, el estudiante visualizar y descompondr seales en sus componentes sinusoidales fundamentales.

1. Construya un vector representando un segundo de una seal de onda cuadrada con frecuencia de un Hz y amplitud igual a 1, con tasa de muestreo de 44.1 KHz.

Graficas de las seales generadas

Grafica de salida

2. Para encontrar el primer coeficiente b1 de la descomposicin por Fourier de la onda cuadrada, calcule dos veces la media del producto Hadamard de la seal cuadrada por una seal seno de amplitud 1, frecuencia 1 Hz y tasa de muestreo de 44.1 Hz. Anote su respuesta.

3. Repita el procedimiento inmediatamente anterior con seales seno de frecuencia 2 Hz, 3 Hz, 4 Hz, 5 Hz, ..., anotando las respuestas correspondientes. Nota algn patrn? Para realizar este ejercicio usamos el mismo cdigo del ejercicio anterior
Fr=2Hz

Fr=5Hz

Fr=3Hz

En frecuencias impares en el punto 0.5 la cresta va para arriba y para los pares va al contrario originando un patrn de frecuencias.

4. Repita los procedimientos de los puntos 2 y 3 con seales coseno de frecuencia 1 Hz, 2 Hz, 3 Hz, .... Detecta algn patrn?
Fr =4Hz

Con 1 Hz

Con 4Hz

Con 2Hz

Con 5Hz

Con 3Hz

Mientras se varan las frecuencias el coeficiente b1 de la serie se estabiliza en 0.0015 para frecuencias impares, mientras que para frecuencia pares 0.0050 As como el tamao de la grafica que se genera. 5. Usando los patrones observados, intente formar la descomposicin completa de la seal de onda cuadrada en sus componentes sinusoidales. Construya una seal con los primeros cinco trminos de la expansin y use Octave para visualizarla. Parece esta una onda cuadrada?

6. Cuantos trminos recomendara para poder decir que la onda resultante es una onda cuadrada con un error menor a 5 %. Repita el proceso anterior (descomposicin y sntesis) para otras 2 formas de onda simples; como por ejemplo, una forma de onda triangular o un diente de sierra.

Grafico de generada

la

seal

cuadrada

Onda triangular

La onda ligeramente tiene una tonalidad de onda cuadrada.

2. Construya un vector correspondiente a la onda coseno con amplitud 1, frecuencia 1 Hz y tasa de muestreo de 100 Hz, sobre un tiempo de 4 segundos.

4.2. Propiedades El siguiente conjunto de actividades busca mostrar las propiedades bsicas de la transformada de Fourier y su uso en el clculo de respuestas en sistemas. Esta primera parte es referente a la extraccin de informacin sobre una nica frecuencia a partir de una seal. 1. Construya un vector correspondiente a la exponencial compleja con frecuencia igual a 1 Hz y tasa de muestreo de 100 Hz, sobre un tiempo de 4 segundos.

Grafica de onda

3.

Calcule el producto punto de las seales generadas en los puntos 1 y 2. Anote su respuesta.

Grafica de la onda exponencial

Grafica generada

ondas coseno y seno cuya frecuencia es 2 Hz (la frecuencia de la exponencial compleja no es alterada). Comente su respuesta.
El punto 2

4. Repita los procedimientos de los pasos 2 y 3 con una onda seno en lugar de coseno. Verifique que entiende la relacin entre ambas respuestas.

Grafica de onda

5. Repita los procedimientos de los pasos 2, 3 y 4 con

El punto 3

La frecuencia hace que cualquier seal reduzca el ancho de la onda o su periodo.

6. Repita los procedimientos de los pasos 2, 3 y 4 con un vector representando la seal sin(fo*t)+ 1/3 sin(3fo*t) + 1/5 sin(5fo*t) durando 4 segundos y donde fo es 1 Hz. Punto 2

El punto 4

Punto 3

1. Tome seal la indicada en el punto 6 del tem anterior y dibuje el modulo del vector retornado por fft actuando sobre esta seal. Verifique que entiende: _ La localizacin de los primeros 3 picos. Estos estn localizados en el intervalo de 0 a 0.5 _ Las alturas relativas de los primeros 3 picos. El primero es el ms grande con una altura de ms o menos 200, seguido de lo 2 siguientes cada uno con una altura de entre 70 y 40 respectivamente. _ La intensidad del primer pico. Es el ms pronunciado de todos su intensidad es de 200 _ La existencia de los segundos 3 picos. Que la transformada de furrier en este caso es simtrica en sus extremos Adems existe una simetra alrededor del 1 punto medio de la grafica

La siguiente actividad utiliza la transformada de Fourier y nos permite interpretar los resultados del operador fft en Octave.

2. Tome la transformada inversa de Fourier (usando ifft) de la seal transformada por Fourier, y verifique que la seal original es recuperada.

La seal original si es recuperada luego de que esta es tratada por la transformada de Fourier Esta ltima parte muestra el uso bsico de la transformada rpida de Fourier para calcular respuestas de sistemas a seales. 1. Calcule y dibuje el modulo de la transformada de Fourier de un sistema de retardo unitario, usando una ventana (segundo parmetro de fft) de tamao 10.

Grafica de salida

2. Genere una seal aleatoria de tamao 9 y calcule su transformada de Fourier sobre una ventana de tamao 10.

3. Verifique que la transformada inversa de Fourier del producto de las respuestas obtenidas en los puntos 1 y 2 produzca la seal original retrasada por un elemento, tal como el uso de una convolucin lo habra hecho.

4. Efectos de Audio Esta ltima seccin cubre la aplicacin de efectos digitales de audio. Esta parte inicial ayuda a explicar el valor retornado por el operador fft en Octave, usando como materia prima una seal de msica real. 1. Descargue el archivo scale.wav y use las funciones wavread and sound para reproducirlo. Cul es la tasa de muestreo de este archivo de sonido?

Aunque no es muy aparente porque las ondas apenas estas oscilando si se toma un sector de la muestra ms adelante se puede visualizar mejor el periodo

La tasa de muestreo del archivo es de 44.1KHz como estndar de


reproduccin en calidad CD, apto para archivos de audio, por lo general mp3, tambin usado en grabacin

2. Dibuje las primeras mil muestras del primer canal. Puede determinar alguna regularidad aparente en el grafico? Si este es el caso, estime el periodo de la regularidad en muestras y por ende la frecuencia de dicha regularidad.

El periodo esta aproximadamente entre las 173 a 174 muestras de periodo fundamental. Tomando en cuenta que en el vector existen un total de 314012 muestras en un periodo de 0.07120 segundos por la taza de muestreo elegida. Por lo tanto:

3. Aplique la transformada de Fourier a las primeras mil muestras del primer canal y dibuje su magnitud. Note la simetra alrededor del punto medio.

El grafico de magnitud indica que en el bin 2 est ubicado el pico ms alto, y luego en 100.

5. Los bins estn en orden ascendente de frecuencia y cada uno corresponde a un entero mltiplo de 1/T, donde T es el tiempo total de la seal cuya transformada fue tomada. Calcule la frecuencia correspondiente al bin identificado en el punto 4. Si existe simetra entre el punto medio de la grafica de manera que se puede apreciar como un espejo. 4. Dibuje la magnitud de la transformada de Fourier obtenida sobre los primeros 100 bins de frecuencia e identifique el nmero del bin del pico ms alto.
T=100

Por lo tanto

6. Repita los puntos 2, 3, 4 y 5 con las mil muestras de audio empezando en 39001, 78001, 117001, 156001, 195001, 234001 y 273001. Es aconsejable escribir funciones para automatizar este trabajo. Note todas las frecuencias que obtuvo e intente relacionarlas con las escalas musicales.

39001

Por lo tanto

Por lo tanto

117001

Para el resto de intervalos solo procedemos a cambiar el lmite de la visualizacin.


78001

Por lo tanto

195001

156001

Por lo tanto

Por lo tanto

234001

Por lo tanto

Por lo tanto

Esta segunda parte ilustra los efectos de las tcnicas de filtrado bsico sobre seales musicales simples. 1. Usando el mismo archivo scale.wav, tome la transformada de Fourier de la seal de un canal completo. Verifique que tomando la transformada inversa de Fourier (con ifft) se produce la seal original.

273001

entre el nuevo sonido, el antiguo y los componentes de frecuencia removidos.

La seal sigue siendo la misma despus de la operacin de transformada y transformada inversa.

Al pasar por el filtro de Fourier se eliminaron los componentes de frecuencia, solo se pueden escuchar las primeras 5 notas que se tena en la escala, las ltimas 3 han sido removidas. Aunque hay rastros existentes de esas no se logran escuchar. Aunque el sonido ha cambiado se escucha un poco ms bajo que la seal original, esto se corrige multiplicando su amplitud, porque esta se encuentra a la mitad de la original.

2. La remocin de un componente de frecuencia particular de una seal es equivalente a configurar su componente de Fourier a cero. Haga esto para todos los bins de frecuencia entre 3001 y 311012 (inclusive).

Esta parte final permite aplicar la acstica de un espacio altamente resonante (York Minster) a una pieza de audio musical simple sintetizada. 1. Primero, necesitamos una respuesta al impulso. Descargue el archivo YorkMinster.wav, escchelo y piense como ese sonido se relaciona con una respuesta al impulso.
En sonido lo que se conoce como respuesta al impulso o impulsiva, se representa por lo general por una seal fuerte pero breve (impulso).

2. Escuche el sonido producido por la transformada inversa de Fourier de su espectro modificado y comente sobre las relaciones existentes

2. Lea el archivo en Octave mediante wavread. Note la tasa de muestreo utilizada.


Tasa de muestreo es de 48000.

Se tiene como resultado el estndar de reproduccin de audio.

4. Como los archivos de audio tienen tasas de muestreo diferentes, para poder tratar el uno como entrada para el segundo archivo visto como sistema, use el operador de resample para convertir una de las seales a la tasa de muestreo de la otra.

Tiene 3900 Hz ms que el scale.wav del anlisis anterior.

archivo

3. Descargue el archivo toccata.wav y lalo en Octave. Nuevamente, note su tasa de muestreo.


La tasa de muestreo es de 44100.

La nueva tasa esta corregida con una nueva tasa de muestreo, con el mismo que el tocata.

5. Trate de convolucionar las dos seales juntas para producir la salida del sistema York Minster a partir de la seal musical de entrada. Cunto tiempo est usted preparado para esperar?

El proceso duro menos que segundos, los resultados fueron mostrados inmediatamente al correr el programa, esto muestra que la convolucin por proceso de Fourier es mucho mas eficiente en anlisis matemticos con uso de matlab.

7. Use wavwrite para escribir el resultado como un archivo de audio y escucharlo a travs de un media player.

El tiempo de espera supero los 15 minutos, demasiado tiempo para un proceso incuso con el uso de matlab, no est comprobada su eficiencia, se opta por pasar al siguiente punto

6. Use el mtodo de la transformada de Fourier para implementar la convolucin aplicando el audio York Minster a la seal musical. Cunto tiempo tomo el clculo?

Esta da como resultado un archivo que se crea en la carpeta documento/matlab/convolucin

VI. ENTREGABLES Informe conteniendo la descripcin de los problemas resueltos, el procedimiento utilizado, los resultados obtenidos y las conclusiones que se pueden generar del anlisis de resultados. El informe debe seguir el formato sugerido para artculos tcnicos IEEE y cuyo tmplate puede descargarse a partir de la pagina Web del curso(http://www.evcarrera.net/stochastic/). En trminos generales, el informe debe contener: REFERENCIAS
[1] T. A. Davis, MATLAB primer, 8th ed. Chapman & Hall/CRC, 2011. [2] A. V. Oppenheim, A. S. Willsky, and S. H. Nawab, Signals & Systems, 2nd ed. Upper Saddle River, NJ, USA: Prentice-Hall, Inc., 1996.

Anda mungkin juga menyukai