El estiramiento temporal consiste en modificar la velocidad o la duración de una señal de audio sin alterar su tono . El escalado de tono es lo opuesto: modificar el tono sin afectar la velocidad. El cambio de tono es un escalado de tono implementado en una unidad de efectos y diseñado para actuaciones en directo. El control de tono es un proceso más sencillo que afecta al tono y la velocidad simultáneamente, ralentizando o acelerando una grabación.
Estos procesos se utilizan a menudo para igualar los tonos y tempos de dos clips pregrabados para la mezcla cuando no es posible volver a grabarlos o remuestrearlos. El estiramiento temporal se utiliza frecuentemente para ajustar los anuncios de radio [ 1 ] y el audio de los anuncios de televisión [ 2 ] para que se ajusten con precisión a los 30 o 60 segundos disponibles. También puede utilizarse para adaptar material más extenso a un espacio de tiempo determinado, como una emisión de una hora.
Remuestreo
La forma más sencilla de cambiar la duración o el tono de una grabación de audio es modificar la velocidad de reproducción. En el caso de una grabación de audio digital , esto se logra mediante la conversión de la frecuencia de muestreo . Al utilizar este método, las frecuencias de la grabación se escalan siempre en la misma proporción que la velocidad, transponiendo su tono hacia arriba o hacia abajo. Ralentizar la grabación para aumentar su duración también reduce el tono, mientras que acelerarla durante un período más corto lo eleva, creando el llamado efecto Chipmunk . Al remuestrear el audio a un tono notablemente más bajo, es preferible que el audio original tenga una frecuencia de muestreo más alta, ya que ralentizar la velocidad de reproducción reproducirá una señal de audio de menor resolución y, por lo tanto, reducirá la claridad percibida del sonido. Al remuestrear el audio a un tono notablemente más alto, es preferible incorporar un filtro de interpolación, ya que las frecuencias que superan la frecuencia de Nyquist (determinada por la frecuencia de muestreo del software o dispositivo de reproducción de audio) generarán distorsiones de sonido debido al aliasing .
dominio de frecuencia
vocoder de fase
Una forma de alargar la duración de una señal sin afectar al tono es construir un vocoder de fase siguiendo el método de Flanagan, Golden y Portnoff.
Pasos básicos:
- calcular la relación frecuencia instantánea/amplitud de la señal utilizando la STFT , que es la transformada discreta de Fourier de un bloque corto, superpuesto y con ventana de muestras suave;
- aplicar algún procesamiento a las magnitudes y fases de la transformada de Fourier (como el remuestreo de los bloques FFT); y
- Realizar una STFT inversa tomando la transformada inversa de Fourier en cada fragmento y sumando los fragmentos de forma de onda resultantes, también llamado superposición y suma (OLA). [ 3 ]
El vocoder de fase maneja bien los componentes sinusoidales , pero las primeras implementaciones introducían una considerable distorsión en las formas de onda transitorias ("pulsaciones") en todas las tasas de compresión/expansión no enteras, lo que resultaba en imágenes con fase irregular y difusas. Las mejoras recientes permiten obtener resultados de mejor calidad en todas las relaciones de compresión/expansión, pero aún persiste un efecto de distorsión residual.
La técnica del vocoder de fase también se puede utilizar para realizar cambios de tono, efectos de coro, manipulación del timbre, armonización y otras modificaciones inusuales, todas las cuales se pueden cambiar en función del tiempo.

Modelado espectral sinusoidal
Otro método para la expansión temporal se basa en un modelo espectral de la señal. En este método, se identifican los picos en los fotogramas mediante la transformada de Fourier de corto tiempo (STFT) de la señal, y se crean "pistas" sinusoidales conectando los picos de fotogramas adyacentes. Posteriormente, las pistas se resintetizan a una nueva escala temporal. Este método puede ofrecer buenos resultados tanto en material polifónico como percusivo, especialmente cuando la señal se divide en subbandas. Sin embargo, este método requiere mayor capacidad de cálculo que otros.

Dominio del tiempo
SOLA
En 1978, Rabiner y Schafer propusieron una solución alternativa que funciona en el dominio del tiempo : intentar encontrar el período (o, equivalentemente, la frecuencia fundamental ) de una sección determinada de la onda utilizando algún algoritmo de detección de tono (comúnmente el pico de la autocorrelación de la señal , o a veces el procesamiento cepstral ), y realizar una transición gradual de un período a otro.
Esto se denomina escalado armónico en el dominio del tiempo [ 5 ] o método de superposición-suma sincronizada (SOLA) y funciona algo más rápido que el vocoder de fase en máquinas más lentas, pero falla cuando la autocorrelación estima erróneamente el período de una señal con armónicos complicados (como piezas orquestales ).
Adobe Audition (anteriormente Cool Edit Pro) parece solucionar esto buscando el período más cercano a un período central que el usuario especifique, que debe ser un múltiplo entero del tempo y estar entre 30 Hz y la frecuencia de graves más baja.
Este método tiene un alcance mucho más limitado que el procesamiento basado en vocoder de fase, pero puede ser mucho menos exigente en cuanto a recursos del procesador para aplicaciones en tiempo real. Proporciona los resultados más coherentes para sonidos de tono único, como la voz o grabaciones de instrumentos musicales monofónicos.
Los paquetes de procesamiento de audio comerciales de alta gama combinan ambas técnicas (por ejemplo, separando la señal en formas de onda sinusoidales y transitorias), o utilizan otras técnicas basadas en la transformada wavelet o en el procesamiento mediante redes neuronales artificiales , lo que produce una extensión temporal de la más alta calidad.
Enfoque basado en marcos

Para preservar el tono de una señal de audio al estirar o comprimir su duración, muchos procedimientos de modificación de escala de tiempo (TSM) siguen un enfoque basado en tramas. [ 6 ] Dada una señal de audio original de tiempo discreto, el primer paso de esta estrategia es dividir la señal en tramas de análisis cortas de longitud fija. Las tramas de análisis están espaciadas por un número fijo de muestras, llamado tamaño de salto de análisis.Para lograr la modificación de la escala de tiempo real, los marcos de análisis se reubican temporalmente para tener un tamaño de salto de síntesis.. Esta reubicación de trama resulta en una modificación de la duración de la señal por un factor de estiramiento deSin embargo, la simple superposición de los fotogramas de análisis sin modificar suele generar artefactos indeseados, como discontinuidades de fase o fluctuaciones de amplitud. Para evitar este tipo de artefactos, los fotogramas de análisis se adaptan para formar fotogramas de síntesis , antes de la reconstrucción de la señal de salida modificada en la escala temporal.
La estrategia para derivar los marcos de síntesis a partir de los marcos de análisis es una diferencia clave entre los distintos procedimientos TSM.
Audición rápida y habla rápida
Para el caso específico del habla, se puede realizar una extensión de tiempo utilizando PSOLA .
El habla comprimida en el tiempo es la representación de texto verbal en un tiempo comprimido. Si bien cabría esperar que acelerar el habla redujera la comprensión, Herb Friedman afirma que «los experimentos han demostrado que el cerebro funciona de manera más eficiente si la velocidad de información que llega a través de los oídos —mediante el habla— es la velocidad de lectura "promedio", que ronda las 200-300 ppm (palabras por minuto), mientras que la velocidad promedio del habla se sitúa en torno a las 100-150 ppm». [ 7 ]
Escuchar habla comprimida en el tiempo se considera el equivalente a la lectura rápida . [ 8 ] [ 9 ]
Escalado de tono
Estas técnicas también pueden utilizarse para transponer una muestra de audio manteniendo constante la velocidad o la duración. Esto se puede lograr mediante la extensión temporal y el posterior remuestreo a la duración original. Alternativamente, se puede modificar directamente la frecuencia de las sinusoides en un modelo sinusoidal y reconstruir la señal en la escala temporal adecuada.
La transposición puede denominarse escalado de frecuencia o cambio de tono , según la perspectiva.
Por ejemplo, se podría elevar el tono de cada nota una quinta justa, manteniendo el tempo. Esta transposición puede interpretarse como un cambio de tono, es decir, desplazar cada nota siete teclas hacia arriba en un teclado de piano, añadir una cantidad fija en la escala Mel o en el espacio de tonos lineales . También puede interpretarse como un escalado de frecuencia, es decir, multiplicar la frecuencia de cada nota por 3/2.
La transposición musical conserva las proporciones de las frecuencias armónicas que determinan el timbre del sonido , a diferencia del desplazamiento de frecuencia que produce la modulación de amplitud , que añade un desplazamiento de frecuencia fijo a la frecuencia de cada nota. (En teoría, se podría realizar una escala de tono literal en la que se escala la ubicación en el espacio de tonos musicales [una nota más aguda se desplazaría a un intervalo mayor en el espacio de tonos lineal que una nota más grave], pero eso es muy inusual y no es musical ) .
El procesamiento en el dominio del tiempo funciona mucho mejor aquí, ya que la distorsión es menos perceptible, pero el escalado de las muestras vocales distorsiona los formantes , creando un efecto similar al de Alvin y las Ardillas , que puede ser deseable o indeseable. Un proceso que preserva los formantes y el carácter de una voz implica analizar la señal con un vocoder de canal o un vocoder LPC , además de varios algoritmos de detección de tono , y luego resintetizarla a una frecuencia fundamental diferente.
Una descripción detallada de las técnicas de grabación analógicas más antiguas para el cambio de tono se puede encontrar en Alvin y las Ardillas § Técnica de grabación .
DJing
Los DJs utilizan ampliamente la modificación del tempo y el escalado de tono, además de la mezcla de ritmos , al pinchar y crear sesiones . Para fusionar dos pistas sin problemas, se puede ajustar el tempo de una pista para que coincida con el de otra, de modo que los ritmos se sincronicen. El escalado de tono se usa comúnmente para mantener el tono de una pista. Los DJs también lo utilizan para la mezcla armónica , para transformar pistas a tonalidades compatibles y que suenen bien al mezclarlas. La modificación del tempo y el escalado de tono están incluidas en el hardware moderno para DJs ( reproductores de CD y controladores de DJ ) y en el software (como VirtualDJ , Mixxx , Serato y Rekordbox).
Producción musical
La modificación del tiempo y el tono se utiliza en el software de estaciones de trabajo de audio digital para trabajar con bucles musicales , clips de sonido que se pueden repetir y transponer para formar una canción. El tono y el tempo de varios bucles se alinean para crear pistas. Entre los programas más destacados se encuentran Acid Pro , con su función de bucles "Acidizados", y FL Studio .
En software para el consumidor
La función de estiramiento de tiempo de audio con corrección de tono se encuentra en todos los navegadores web modernos como parte del estándar HTML para la reproducción de medios. [ 10 ] Controles similares son omnipresentes en aplicaciones y marcos de medios como GStreamer y Unity .
Véase también
Referencias
- ↑ "Dolby, las ardillas y NAB2004" . Archivado del original el 27 de mayo de 2008.
{{cite magazine}}: La revista Cite requiere|magazine=( ayuda ) - ↑ "Habla variable" . www.atarimagazines.com .
- ↑ Jont B. Allen (junio de 1977). "Análisis, síntesis y modificación espectral a corto plazo mediante la transformada discreta de Fourier". IEEE Transactions on Acoustics, Speech, and Signal Processing . ASSP-25 (3): 235–238 .
- ↑ McAulay, RJ; Quatieri, TF (1988), "Procesamiento del habla basado en un modelo sinusoidal" (PDF) , The Lincoln Laboratory Journal , 1 (2): 153–167 , archivado del original (PDF) el 21 de mayo de 2012 , consultado el 7 de septiembre de 2014 .
- ↑ David Malah (abril de 1979). "Algoritmos en el dominio del tiempo para la reducción del ancho de banda armónico y el escalado temporal de señales de voz". IEEE Transactions on Acoustics, Speech, and Signal Processing . ASSP-27 (2): 121–133 .
- ↑ Jonathan Driedger y Meinard Müller (2016). "Una revisión de la modificación de la escala temporal de las señales musicales" . Applied Sciences . 6 (2): 57. doi : 10.3390/app6020057 .
- ↑ Variable Speech , Creative Computing, vol. 9, n.º 7 / julio de 1983 / pág. 122
- ↑ "Escucha podcasts en la mitad de tiempo" . Archivado del original el 29 de agosto de 2011. Consultado el 24 de julio de 2008 .
- ↑ "iPods a alta velocidad" . Archivado del original el 2 de septiembre de 2006.
- ↑ "HTMLMediaElement.playbackRate - Web APIs" . MDN . Consultado el 1 de septiembre de 2021 .
Enlaces externos
- Descripción general de la modificación del tiempo y el tono: Una descripción general completa de las técnicas actuales de modificación del tiempo y el tono por Stephan Bernsee.
- Código fuente en C de smbPitchShift de Stephan Bernsee para realizar manipulación de tono en el dominio de la frecuencia.
- pitchshift.js de KievII Un cambiador de tono en JavaScript basado en el código smbPitchShift, de la biblioteca de código abierto KievII.
- El vocoder de fase: un tutorial - Una buena descripción del vocoder de fase
- Nuevas técnicas de vocoder de fase para cambios de tono, armonización y otros efectos exóticos.
- Un nuevo enfoque para el procesamiento de transitorios en el vocoder de fase
- PICOLA y TDHS
- Cómo construir un cambiador de tono: Teoría, ecuaciones, figuras y rendimiento de un cambiador de tono de guitarra en tiempo real que funciona con un chip DSP.
- Biblioteca ZTX Time Stretching Versiones gratuitas y comerciales de una popular biblioteca de terceros para estirar el tiempo en iOS, Linux, Windows y Mac OS X.
- Elastique, de zplane , es una biblioteca comercial multiplataforma utilizada principalmente por fabricantes de DJ y DAW.
- Sintetizador de voz de Qneo: sintetizador especializado para la creación de formas vocales.
- Caja de herramientas TSM Implementaciones gratuitas en MATLAB de varios procedimientos de modificación de escala de tiempo
- PaulStretch en Wayback Machine (archivado el 2 de febrero de 2023) , un algoritmo muy conocido para el estiramiento extremo (>10 × ) del tiempo.
- Bibliotecas de código abierto y comerciales de Bungee para el estiramiento de audio en tiempo real.
- Rubber Band : biblioteca de código abierto para estirar el tiempo y cambiar el tono.
- SoundTouch : biblioteca de código abierto para cambiar el tempo, el tono y la velocidad de reproducción.
- Ingeniería de audio
- Procesamiento digital de señales
- Efectos sonoros