problemas comando function
Publicado por ivan (24 intervenciones) el 13/07/2012 21:29:14
Saludos
Vereis os comento mi problema con el comando function, resulta que al pasarle esta entrada:
function [senal_salida] = compresor(senal_entrada,fs,umbral, pendiente)
Lo mas normal es que me devolviera la variable señal de salida y con ese nombre, pero en vez de ello me devuelve "ans" que es la respuesta por defecto, alguien sabe a que pude deberse????
A continuacion dejo el codigo por si quereis echarle un ojo:
function [senal_salida] = compresor(senal_entrada,fs,umbral, pendiente)
%Conversion estereo a mono
if size(senal_entrada,2)==2
senal_entrada=(senal_entrada(:,1)+senal_entrada(:,2))/2;
end
%Creamos la señal de salida
senal_salida = senal_entrada;
%ALGORITMO
for i=1:length(senal_entrada)
if senal_entrada(i)>umbral
senal_salida(i)=umbral+pendiente*(senal_entrada(i)-umbral);
elseif senal_entrada(i)<-umbral
senal_salida(i)=-umbral+pendiente*(senal_entrada(i)+umbral);
end
end
% Grabamos nuestra señal procesada, en un archivo .wav
wavwrite(senal_salida,fs,uiputfile('*wav','Guardar como'));
Vereis os comento mi problema con el comando function, resulta que al pasarle esta entrada:
function [senal_salida] = compresor(senal_entrada,fs,umbral, pendiente)
Lo mas normal es que me devolviera la variable señal de salida y con ese nombre, pero en vez de ello me devuelve "ans" que es la respuesta por defecto, alguien sabe a que pude deberse????
A continuacion dejo el codigo por si quereis echarle un ojo:
function [senal_salida] = compresor(senal_entrada,fs,umbral, pendiente)
%Conversion estereo a mono
if size(senal_entrada,2)==2
senal_entrada=(senal_entrada(:,1)+senal_entrada(:,2))/2;
end
%Creamos la señal de salida
senal_salida = senal_entrada;
%ALGORITMO
for i=1:length(senal_entrada)
if senal_entrada(i)>umbral
senal_salida(i)=umbral+pendiente*(senal_entrada(i)-umbral);
elseif senal_entrada(i)<-umbral
senal_salida(i)=-umbral+pendiente*(senal_entrada(i)+umbral);
end
end
% Grabamos nuestra señal procesada, en un archivo .wav
wavwrite(senal_salida,fs,uiputfile('*wav','Guardar como'));
Valora esta pregunta


0