¿Cómo reparar un archivo AAC dañado sin volver a codificarlo usando FFmpeg u otras herramientas?

¿Cómo reparar un archivo AAC dañado sin volver a codificarlo usando FFmpeg u otras herramientas?

Tengo un archivo AAC de 256 Kbps que tiene un segmento dañado que dura menos de aproximadamente 1/20 de segundo. Estoy buscando "reparar" la parte dañada sin volver a codificarla, o al menos mediante un procedimiento mínimamente invasivo.

Audacity: segmento corrupto/"fallo":
Audacity: segmento corrupto/"fallo"

La parte corrupta ocurre durante un período de unos pocos segundos donde el único sonido es una única nota musical continua de sintetizador, acompañada por un ligero aplauso del público de fondo, y como tal, puedo, usando edición creativa, reparar la corrupción. parte en Audacity, de la siguiente manera, pero el archivo debe convertirse a sin pérdidas para hacerlo:

  1. Recorte la parte corrupta (2290 muestras)
  2. Fusionar/fundir las partes anterior y posterior de la pista a cada lado de la parte eliminada y corrupta con una superposición de 2120 muestras.
  3. Esto da como resultado un acortamiento general de la pista en 4410 muestras (1/10 de segundo)
  4. El archivo recién editado se reproduce con un tono/sonido continuo y el problema no es detectable
  5. Para conservar la duración de la pista, luego corté una porción de muestra 4410 de la vecindad de la reparación reciente y luego la dupliqué empalmándola en la región de dicha reparación.
  6. Resultado final: se conserva la duración de la pista original, el fallo prácticamente no se detecta durante la reproducción.

Dicho esto, solo puedo lograr este resultado cuando edito sin pérdidas en Audacity, y me gustaría lograr un resultado similar en el archivo con pérdida sin volver a codificar. Intenté simplemente cortar la parte corrupta del archivo original y luego reemplazarla con una parte reparada recodificada del archivo de reparación. Sin embargo, me encuentro con la imposibilidad de cortar una parte de reparación y hacerla coincidir exactamente dentro del segmento del archivo original debido a compensaciones de marcas de tiempo.

Espero que haya una manera de solucionar esto. ¿Hay alguna manera de eliminar o alterar las marcas de tiempo de modo que luego pueda cortar/editar mis archivos con pérdida en el nivel de muestra? Hasta ahora, al usar ffmpeg, si divido archivos en una marca de tiempo, se divide en la marca de tiempo más cercana, que podría ser ~100+ muestras adyacentes a donde necesito realizar una edición.

Abierto a cualquier otra idea también.

Respuesta1

Audacity y la mayoría de los editores de audio descomprimen el audio cuando cargas el archivo, y cuando lo reexportas en un formato con pérdida ahora estás haciendo otra ronda de compresión con pérdida, aunque MP4 (AAC) fue diseñado para minimizar el daño de múltiples codificaciones, por lo que No deberías perder mucha calidad.

Un producto alternativo es mp3DirectCut:

Corta y edita MP3 y AAC de forma rápida y sencilla

mp3DirectCut es un editor de audio rápido y extenso para MP3 y AAC codificados. Sin volver a codificar, corte, recorte, divida y una sus pistas directamente, cree fundidos en MP3 y mucho más. La edición directa sin pérdidas ahorra tiempo de codificación y preserva la calidad de audio de las pistas codificadas. La grabadora incorporada crea MP3 sobre la marcha. Con las hojas Cue, la detección de pausas o la localización automática, puedes dividir fácilmente archivos largos.

información relacionada