Cómo utilizar GUIDE en MATLAB para recopilar y procesar señales de sonido
Si desea grabar la señal de sonido en matlab, puede utilizar la siguiente función.
R = audiorecorder(44100, 16, 2);
Crea un objeto que guarda información de audio, que contiene frecuencia de muestreo, tiempo e información de audio grabado, etc. 44100 significa que el muestreo es 44100 Hz (se puede cambiar a 8000, 11025, 22050, etc. Cuanto mayor sea el valor, mejor será la calidad del sonido grabado y mayor será el espacio de almacenamiento requerido), 16 significa usar 16 bits para almacenamiento, 2 significa dos canales, es decir estéreo (también se puede cambiar a 1 (mono).
record(R);
Empieza a grabar, simplemente habla por el micrófono.
pausa(R);
Pausar la grabación.
play(R)
Reproduce el sonido grabado.
resume(R);
Continuar grabando.
stop(R);
Detener grabación
myspeech = getaudiodata(R);
Obtiene la señal de audio recién grabada almacenada en una matriz digital de n*2 columnas.
Puedes utilizar varios filtros para procesar esta matriz, o mezclarla con otro audio, etc. También puede dibujar su forma de onda (puede tomar un poco de tiempo dibujar la forma de onda si tiene mucho tiempo).
plot(myspeech)
Dibuja la forma de onda
Si quieres guardarla, puedes usarla
wavwrite(myspeech, 44100, 16,' myspeech');
myspeech representa la matriz de forma de onda que se almacenará, 44100 representa la frecuencia de muestreo, 16 significa almacenamiento en 16 bits y 'myspeech' es el nombre del archivo almacenado.
Matlab tiene funciones de filtrado y procesamiento de audio extremadamente ricas. Aquí presentamos las operaciones más básicas de entrada, reproducción y guardado.