Un modulador de señales es un sistema al que entra una señal (la señal a modular, la señal de datos original, la señal de audio) y del que sale otra señal (la señal modulada, la nueva señal de datos, la señal de audio modulada). Además, normalmente se le especifica la frecuencia de la señal moduladora como un parámetro de entrada (frecuencia de la señal moduladora o portadora). Para ello vamos a utilizar los pipes de Unix para leer de la tarjeta de sonido una señal, modularla y a continuación reproducirla. Este sistema queda construido escribiendo:
arecord -f cd -t raw | modulator | aplay -f cd -t raw
|
Nótese que sin el flag -t raw modularíamos también la cabecera WAV, con el consiguiente deterioro de la misma.
También veremos en esta práctica de qué manera es posible sintetizar una señal digital de audio sencilla mediante un programa que escriba dicha señal sobre la salida estándar. En concreto, generaremos una señal sinusoidal periódica de una determinada frecuencia. Este tipo de señales son útiles para hacer comprobaciones, como veremos, acerca del buen funcionamiento de otros programas de tratamiento de audio.
Bien. Como ya hemos dicho, vamos a generar los datos escribiéndolos sobre la salida estándar. De esta manera y usando un pipe, podremos escuchar nuestro generador se señales sinusoidales escribiendo:
dc | modulator | aplay -f cd -t raw
|
El programa dc genera a la salida estándar un valor constante (1000 por defecto). Si modulamos esta señal obtenenos la sinusoide tal y como se explica a continuación.