Sunteți pe pagina 1din 3

Procesamiento de Audio

Hernn Javier Ardila Snchez, Oscar Mauricio Calvache Garca


Universidad Surcolombiana Neiva, Colombia
U2007269303@usco.edu.co U2007269292@usco.edu.co

Abstract Este documento trata sobre procesamiento de seales a.


por medio del software Matlab, una herramienta indispensable para los estudiantes de ingeniera, donde en este caso se centra en el procesamiento de una seal de audio.

Ventajas

I. INTRODUCCION Es comn que la informacin de inters est codificada en los componentes sinusoidales que forman la seal, debido a la naturaleza oscilatoria de muchos fenmenos fsicos (ej. vibracin de cuerdas vocales en la voz). Muchas veces la forma de la seal en el tiempo no es relevante, sino que la informacin clave est en la frecuencia, amplitud y fase de los componentes sinusoidales. Debido a las grandes ventajas de la digitalizacin para su facilidad de transmitir, almacenar o manipular las seales, como en este caso una seal de audio, la cual podemos atenuar o amplificar dependiendo de la amplitud de la seal, o acelerar el ritmo del audio o colocarlo lento por medio de la frecuencia de muestreo, invertir el audio entre varias manipulaciones que la seal de audio digital nos puede ofrecer en este caso. II. MARCO TEORICO A. Procesamiento Digital del Audio Una seal digital no es audible, ya que requiere ser decodificada antes de su reproduccin. Sin embargo, la codificacin y posterior descodificacin de una seal digital para su audicin tiene varias ventajas, aunque tambin algunos inconvenientes.

1. La seal discreta (digital) es ms fcil de transmitir, almacenar o manipular (en el caso del sonido: editar, comprimir, etc). 2. La seal digital es inmune al ruido. La seal digital es menos sensible que la analgica a las interferencias, etc. 3. Se puede tomar una muestra de sonido y cambiar cualquiera de sus parmetros para generar un sonido diferente sin tener que recrearlo en la realidad. (Las aplicaciones de esta ventaja en la generacin de efectos especiales es infinita). 4. La seal digital permite la multigeneracin infinita sin prdidas de calidad. 5. Ante la prdida de cierta cantidad de informacin, la seal digital puede ser reconstruida gracias a los sistemas de regeneracin de seales (usados tambin para amplificarla, sin introducir distorsin). Tambin cuenta, con sistemas de deteccin y correccin de errores que, por ejemplo, permiten introducir el valor de una muestra daada, obteniendo el valor medio de las muestras adyacentes (interpolacin). 6. La seal digital puede ser enviada a casi cualquier punto del planeta en cualquier momento a un muy bajo costo a travs de internet y a partir de aqu puede ser renviada a su remitente o a algn otro destino. Esto sin que la seal sufra variaciones o alteraciones de calidad severas. 7. Con el tiempo no se degrada b. Inconvenientes 1. Se necesita una conversin analgica-digital previa y una descodificacin posterior, en el momento de la recepcin. 2. Hay una prdida inherente de informacin al convertir la informacin continua en discreta. Por mnimo e insignificante que resulte siempre hay un error de cuantificacin que impide que la seal digital sea exactamente equivalente a la analgica que la origin. 3. La seal digital requiere mayor ancho de banda para ser transmitida que la analgica. Adems, requiere una sincronizacin precisa entre los tiempos del reloj de transmisor, con respecto a los del receptor. Un desfase, por mnimo que sea, cambia por completo la seal.

Fig. 1. Forma de onda vocal a

4. Si se utiliza compresin con prdida, ser imposible reconstruir la seal original. c. Aplicaciones Ejemplos de aplicaciones del procesamiento digital de sonido se encuentran en aplicaciones musicales como ecualizadores digitales, efectos de sonido (distorsin, compresin, eco), espacializacin del sonido, cdecs de audio. III. DESARROLLO DE LA PRCTICA Y ANALISIS DE RESULTADOS En el laboratorio se utilizo las siguientes funciones de Matlab: wavread(), sound(), soundsc(), flipud(), wavwrite(), observando en los documentos de ayuda de Matlab se observa como es su sintaxis para utilizar cada funcin y que labor desempea cada una. 1. Primero se escogi una archivo .wav de duracin alrededor de 12seg llamado audio. 2. Se llama a la funcin wavread() que nos permite leer el archivo .wav y guardar sus variables en el workspace, de la siguiente manera: [Y, FS, NBITS] = WAVREAD ('audio.wav'); Guarda el vector muestras Y de la seal audible, FS el tiempo de muestreo y NBITS los bits utilizados. Al ejecutar la lnea de cdigo se obtiene: Y= 98855x1; como es de un solo canal o sea monofnico es una columna con 98855 filas o sea numero de muestras. Fs= 8000m/s NBITS= 16bits 3. Para graficar la seal de audio respecto al tiempo se halla el tiempo de la seal de audio dividiendo el nmero de muestras del vector Y de la seal audible con la frecuencia de muestreo. tiempo=size(Y,1)/FS; Ejecutando la lnea de cdigo resulta: tiempo= 12.35seg. Para graficar entonces definimos a tiempo como la variable independiente que empieza desde cero con un paso de 0.125ms por muestra o sea el periodo de muestreo, hasta el tiempo de la seal de audio. X=0:1/FS:tiempo; Ejecutando la lnea de cdigo se obtiene: x=98856x1 o sea 98856 muestras lo cual significa que hay una muestra dems respecto al vector de la seal de audio Y, por lo cual se debe hacer un pequeo arreglo para que comience desde la segunda muestra y as igualar los dos vectores para realizar la grafica. plot(x(2:end),Y); xlabel('tiempo'),ylabel('Seal Audio'); xlim([0 tiempo]);

Ejecutando las lneas de cdigo obtenemos la grafica de la seal audible Y con respecto al tiempo.

Fig. 2. Forma de onda de la seal (amplitud vs tiempo)

4. Para reproducir la seal se hace el llamado de la funcin sound() que depende del vector muestras Y y de la frecuencia de muestreo FS. sound(Y,FS); Ejecutando la lnea de cdigo se reproduce el sonido de la pista de audio utilizada. 5. Para realizar modificaciones a la pista de audio se utiliza la funcin soundsc() esta funcin escala los valores colocndolos en un rango desde -1 a 1 lo cual el audio se reproduce lo mas alto posible sin que se sature. soundsc(Y,FS,NBITS); Se puede variar el rango de Y de tal manera que podemos hacer que la pista de audio se reproduzca saturndose para ese caso es cuando el rango es menor a -1 a 1 y cuando se quiere que se atenu la seal de audio colocamos un rango mayor a -1 a 1 de la siguiente manera. soundsc(Y,FS,NBITS,[-0.2 0.2]); %Saturado soundsc(Y,FS,NBITS,[-5 5]); %Atenuado 6. Aplicando la misma funcion pero ahora se modifica la frecuencia de muestreo Fs. soundsc(Y,6000); % Acelera soundsc(Y,10000); %Relentiza Ejecutando las lneas de cdigo se puede apreciar que cuando se coloca una frecuencia de muestreo mayor a la original que en este caso es FS=8000, al reproducir la pista de audio esta se acelera. Al incrementar FS respecto al valor real, se ralentiza la pista de audio. Aplicando la misma funcion pero ahora se modifica la cantidad de bits de la codificacin. soundsc(Y,FS,bits); Ejecutando la lnea de cdigo y modificando la variable bits de 2 a 16 se puede apreciar que al dar los valores de 2 y 3 al reproducir la pista de audio disminuye la calidad de sonido. Para el resto de valores no se puede apreciar claramente ese cambio.

7.

Utilizando la funcin FLIPUD(Y) , al reproducir la pista de audio, esta se escucha invertida. r=flipud(Y); sound(r,FS); Aplicando la funcin wavwrite() se guarda la pista de audio modificada, en este caso, la pista de audio almacenada en la variable r con el nombre audio2.wav. wavwrite(r, FS, NBITS, 'audio2');

8.

IV. CONCLUSIONES Se aprendi el procesamiento de seales de audio mediante diversas funciones en Matlab aplicando las ventajas que tiene las seales digitales, como son el poder guardar, modificar, comprimir y transmitir con mayor facilidad que las seales analgicas. Se pudo modificar de diversas maneras la pista de audio por medio de las funciones descritas anteriormente, se pudo invertir la seal, amplificar, atenuar acelerar y ralentizar. Cuando se disminuyo la frecuencia de muestreo FS<8000 de la pista de audio, se aceler, debido a que se lean y reproducan mas muestras en menos tiempo. Mientras que al aumentar la frecuencia FS>8000, se ralentiza la reproduccin de la pista debido a que se toma menos muestras por unidad de tiempo. Al variar el valor de bits se pudo probar que la calidad del sonido disminua esto debido a que se realizo una codificacin de 16 bits y al bajar esos bits se pierde la calidad del sonido ya que se pierde informacin.

REFERENCIAS http://www.eumus.edu.uy/eme/ense%C3%B1anza/electiv as/dsp/presentaciones/clase06.pdf [2] http://es.wikipedia.org/wiki/Procesamiento_digital_de_a udio [3] PROCESAMIENTO DIGITAL DE SEALES - Proakis
[1]

S-ar putea să vă placă și