Facebook publica el códec de audio EnCodec utilizando aprendizaje automático

Meta/Facebook (prohibido en la Federación Rusa) introdujo un nuevo códec de audio, EnCodec, que utiliza métodos de aprendizaje automático para aumentar la relación de compresión sin perder calidad. El códec se puede utilizar tanto para transmitir audio en tiempo real como para codificarlo y guardarlo posteriormente en archivos. La implementación de referencia de EnCodec está escrita en Python utilizando el marco PyTorch y tiene una licencia CC BY-NC 4.0 (Creative Commons Attribution-NonCommercial) para uso no comercial únicamente.

Se ofrecen dos modelos listos para descargar:

  • Un modelo causal que utiliza una frecuencia de muestreo de 24 kHz, admite solo audio monofónico y se entrena con diversos datos de audio (adecuado para codificación de voz). El modelo se puede utilizar para empaquetar datos de audio para su transmisión a velocidades de bits de 1.5, 3, 6, 12 y 24 kbps.
  • Un modelo no causal que utiliza una frecuencia de muestreo de 48 kHz, admite audio estéreo y está entrenado únicamente con música. El modelo admite velocidades de bits de 3, 6, 12 y 24 kbps.

Para cada modelo, se ha preparado un modelo de lenguaje adicional, que permite lograr un aumento significativo en la relación de compresión (hasta un 40%) sin pérdida de calidad. A diferencia de proyectos desarrollados anteriormente que utilizan métodos de aprendizaje automático para la compresión de audio, EnCodec se puede utilizar no solo para empaquetar voz, sino también para comprimir música con una frecuencia de muestreo de 48 kHz, correspondiente al nivel de los CD de audio. Según los desarrolladores del nuevo códec, al transmitir con una tasa de bits de 64 kbps en comparación con el formato MP3, pudieron aumentar el grado de compresión de audio aproximadamente diez veces manteniendo el mismo nivel de calidad (por ejemplo, cuando se usa MP3, se requiere un ancho de banda de 64 kbps, para transmitir con esa misma calidad en EnCodec son suficientes 6 kbps).

La arquitectura del códec se basa en una red neuronal con una arquitectura de "transformador" y se basa en cuatro enlaces: codificador, cuantificador, decodificador y discriminador. El codificador extrae los parámetros de los datos de voz y convierte la transmisión empaquetada a una velocidad de fotogramas más baja. El cuantificador (RVQ, Residual Vector Quantizer) convierte el flujo de salida del codificador en conjuntos de paquetes, comprimiendo la información en función de la tasa de bits seleccionada. La salida del cuantificador es una representación comprimida de los datos, adecuada para su transmisión a través de una red o para guardar en el disco.

El decodificador decodifica la representación comprimida de los datos y reconstruye la onda sonora original. El discriminador mejora la calidad de las muestras generadas, teniendo en cuenta el modelo de percepción auditiva humana. Independientemente del nivel de calidad y tasa de bits, los modelos utilizados para codificar y decodificar se distinguen por requisitos de recursos bastante modestos (los cálculos necesarios para el funcionamiento en tiempo real se realizan en un único núcleo de CPU).

Facebook publica el códec de audio EnCodec utilizando aprendizaje automático


Fuente: opennet.ru

Añadir un comentario