Mediabunny corrige la sincronización de audio y vídeo en WebCodecs

Fuentes: Mediabunny fixes audio-video sync issues in WebCodecs via Project Sync

Mediabunny, una biblioteca de procesamiento de medios de alta calidad, ha implementado Project Sync para corregir la desincronización imperceptible entre audio y vídeo en sus transcodificaciones. Aunque la sincronización de audio a vídeo (AV sync) es un problema resuelto en la mayoría de los sistemas, Mediabunny descubrió que la API WebCodecs introduce un retraso latente en los codificadores de audio que rompe la precisión temporal al procesar señales repetidamente.

El autor, Vanilagy, identificó que los codificadores AAC, como el de Apple, añaden un retraso de 2112 muestras (aproximadamente 44 milisegundos) para compensar el tiempo de arranque del decodificador, un fenómeno conocido como 'encoder priming delay'. Este retraso es invisible para el ojo humano en una sola pasada, pero se acumula drásticamente tras múltiples transcodificaciones, provocando que el audio se retrase significativamente respecto al vídeo. Mediabunny no puede esperar a que el estándar WebCodecs se actualice, por lo que desarrolló una solución empírica: Mediabunny inyecta una señal de impulso en la entrada del codificador para medir exactamente cuántas muestras de retraso introduce cada sistema específico. Al conocer este valor, el sistema ajusta la señal de entrada añadiendo el silencio necesario para compensar el retraso, garantizando así que el audio y el vídeo permanezcan perfectamente sincronizados en el archivo final, independientemente de las variaciones entre navegadores y sistemas operativos.