GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Procesamiento científico de audio, Parte III - Cómo aplicar efectos de procesamiento matemático avanzado en archivos de audio con Octave 4.0 en Ubuntu

La tercera parte de nuestra serie de tutoriales de procesamiento de audio digital cubre la modulación de la señal, explicamos cómo aplicar la modulación de amplitud, el efecto de trémolo y la variación de frecuencia.

Modulación

Modulación de amplitud

Como su nombre lo indica, este efecto varía la amplitud de una sinusoide según el mensaje a transmitir. Una onda sinusoidal se llama portadora porque transporta la información. Este tipo de modulación se utiliza en algunas bandas ciudadanas (AM) de radiodifusión y transmisión comercial.

¿Por qué usar la Modulación de Amplitud?

Radiación de modulación.

Si el canal de comunicación es un espacio libre, entonces se requieren antenas para radiar y recibir la señal. Requiere una antena de radiación electromagnética eficiente cuyas dimensiones sean del mismo orden de magnitud que la longitud de onda de la señal que se está radiando. Muchas señales, incluidos los componentes de audio, suelen tener 100 Hz o menos. Para estas señales sería necesario construir antenas de unos 300 km de longitud si la señal fuera radiada directamente. Si se usa modulación de señal para imprimir el mensaje en una portadora de alta frecuencia, digamos 100 MHz, entonces la antena debe tener una longitud de más de un metro (longitud transversal) solamente.

Modulación de concentración o multicanalidad.

Si más de una señal usa un solo canal, la modulación se puede usar para transferir diferentes señales a diferentes posiciones espectrales, lo que permite que el receptor seleccione la señal deseada. Las aplicaciones que usan concentración ("multiplexación") incluyen datos de telemetría, radio FM estéreo y telefonía de larga distancia.

Modulación para superar las limitaciones del equipo.

El rendimiento de los dispositivos de procesamiento de señales, como filtros y amplificadores, y la facilidad con la que se pueden construir estos dispositivos, depende de la situación de la señal en el dominio de la frecuencia y la relación entre la frecuencia más alta y la señal más baja. La modulación se puede utilizar para transferir la señal a una posición en el dominio de la frecuencia donde los requisitos de diseño se cumplan más fácilmente. La modulación también se puede utilizar para convertir una "señal de banda ancha" (una señal para la que la relación entre la frecuencia más alta y la más baja es grande) en una señal de "banda estrecha".

Efectos de audio

Muchos efectos de audio utilizan la modulación de amplitud debido a la facilidad con la que pueden manejar este tipo de señales. Podemos nombrar algunos como tremolo, chorus, flanger, etc. Esta utilidad es donde nos enfocamos en esta serie de tutoriales.

Efecto trémolo

El efecto trémolo es una de las aplicaciones más sencillas de la modulación de amplitud, para lograr este efecto, tenemos que variar (multiplicar) la señal de audio por una señal periódica, ya sea sinusoidal o no.

>> tremolo='tremolo.ogg';
>> fs=44100;
>> t=0:1/fs:10;
>> wo=2*pi*440*t;
>> wa=2*pi*1.2*t;
>> audiowrite(tremolo, cos(wa).*cos(wo),fs);




Esto generará una señal en forma de sinusoide cuyo efecto es como un 'trémolo' '.


Tremolo en archivos de audio reales


Ahora mostraremos el efecto de trémolo en el mundo real. Primero, usamos un archivo previamente grabado por una voz masculina que dice 'A'. El gráfico de esta señal es el siguiente:

>> [y,fs]=audioread('A.ogg');
>> plot(y);




Ahora tenemos que crear una señal sinusoidal envolvente con los siguientes parámetros:

Amplitud =1
Frecuencia =1,5 Hz
Fase =0

>> t=0:1/fs:4.99999999;
>> t=t(:);
>> w=2*pi*1.5*t;
>> q=cos(w);
>> plot(q);

Nota:cuando creamos una matriz de valores de tiempo, por defecto, esta se crea en forma de columnas, es decir, 1x220500 valores. Para multiplicar este conjunto de valores hay que trasponerlo en filas (220500x1). Este es el comando t=t(:)




Crearemos un segundo archivo ogg que contendrá el resultado señal modulada:

>> tremolo='tremolo.ogg';
>> audiowrite(tremolo, q.*y,fs);







Variación de frecuencia

Podemos variar la frecuencia para obtener efectos musicales bastante interesantes como distorsión, efectos de sonido para películas y juegos entre otros.

Efecto de modulación de frecuencia sinusoidal

Este es el código donde se muestra la frecuencia de modulación sinusoidal, según ecuación:

Y=Ac*Cos(wo*Cos(wo/k))

Dónde:

Ac =Amplitud

wo =frecuencia fundamental

k =divisor escalar

>> fm='fm.ogg';
>> fs=44100;
>> t=0:1/fs:10;
>> w=2*pi*442*t;
>> audiowrite(fm, cos(cos(w/1500).*w), fs);
>> [y,fs]=audioread('fm.ogg');
>> figure (); plot (y);


La trama de la señal es:



Puede usar casi cualquier tipo de función periódica como modulador de frecuencia. Para este ejemplo, aquí solo usamos una función seno. Siéntase libre de experimentar cambiando las frecuencias de las funciones, mezclándolas con otras funciones o cambiando, incluso, el tipo de función.
          


Ubuntu
  1. Cómo descomprimir en Ubuntu

  2. Cómo monitorear los archivos de registro del servidor con Logwatch en Debian y Ubuntu

  3. ¿Cómo bloquear direcciones IP y proteger archivos y carpetas con apache y .htaccess en ubuntu?

  4. ¿Cómo ejecutar archivos .exe en Ubuntu?

  5. ¿Cómo instalar Octave 5 en Ubuntu 18.04?

Cómo hacer una copia de seguridad de archivos con Déjà Dup y Duplicity en Ubuntu 18.04 LTS

Cómo cambiar el nombre de los archivos en Ubuntu 20.04

Cómo instalar Octave en Ubuntu 20.04

Cómo instalar Octave en Ubuntu 22.04 | 20.04 LTS

Cómo instalar Octave en Ubuntu 20.04 LTS

¿Cómo hacer que el archivo de texto creado en Ubuntu sea compatible con el Bloc de notas de Windows?