Está en la página 1de 12

IEE6J4

PROCESAMIENTO
DIGITAL DE SEALES
David Meja
rk.2k33@gmail.com

Febrero 2014
Agenda
Prctica
Prctica
En base a una seal discreta de audio, se
proceder a introducir efectos en la misma:
Amplitud
Eco
Velocidad
Desvanecimiento
Ruido
Prctica
>> clear all;
>> close all;

>> [y_original, Fs, format] =
wavread('Dame_mas.wav');

% Para conocer las dimensiones de
y_original:
>> size(y_original)
Prctica
% Grafico de y_original:
>> plot(y_original)

% Separacin de seal estereo
>> canal_izquierdo = y_original(:,
1);
>> canal_derecho = y_original(:,
2);
Prctica
% Graficar un canal:
>> figure
>> plot(canal_izquierdo)

% Reproducir
>> sound(canal_izquierdo, Fs)

% sumar los canales
>> y = canal_derecho+canal_izquierdo;
% reproducir resultados
>> sound(y, Fs)
Prctica
% Especificar un retardo:
>> tiempo_retardo = 0.7;
>> retardo = floor(tiempo_retardo * Fs);

% Aadir a la seal original, la misma seal
% pero retardada y de menor amplitud:
y_eco = [canal_izquierdo' zeros(1, retardo)] + 0.7
* [zeros(1, retardo) canal_izquierdo'];

% Graficar la seal retardada y de menor amplitud
% Graficar la seal original

% Escuchar la seal
>> sound(y_eco, Fs)

Prctica
% Amplificar la seal
>> Factor = 2;
>> y_amp = Factor * canal_derecho;

% Graficar la seal original y la amplificada
>> figure
>> subplot(2, 1, 1)
>> plot(canal_derecho)
>> subplot(2, 1, 2)
>> plot(y_amp)
>> sound(y_amp, Fs);

Prctica
% Reversa
>> canal_derecho_reverso = flipud(canal_derecho);

% Grafica
>> figure
>> subplot(2,1,1)
>> plot (canal_derecho)
>> subplot(2,1,2)
>> plot (canal_derecho_reverso)

>> sound(canal_derecho_reverso(1:10000), Fs)

Prctica
% Cambio de velocidad
% Ms lento (reduccin de frecuencia
% de muestreo)
>> Fs_lenta = Fs / 2;
>> sound(canal_derecho, Fs_lenta)

% Ms rpido (ampliacin de
% frecuencia de muestreo)
>> Fs_rapida = Fs * 2;
>> sound(canal_derecho, Fs_rapida)

Prctica
% Desvanecimiento
% el desvanecimiento se realizar en
% 20s, lo que corresponde a 88200
% muestras
>> t = log(0.01) / 882000;
>> fade = exp(t * [1:882000]);
>> fade = fade;
>> y_fade = canal_derecho(1:882000)
.* fade;
>> plot(y_fade);
>> sound(y_fade, Fs)

Prctica
% Ruido
>> ruido = randn(1, 882000);
>> y_ruido =
canal_derecho(1:882000) + ruido;
>> plot(y_ruido);
>> sound(y_ruido, Fs)

También podría gustarte