FixMyVideos

Archivo MP4 / MOV truncado — Guía de recuperación

Un archivo de vídeo «truncado» es aquel que se ha cortado antes de que la grabación llegara a un final limpio. La definición técnica: al archivo le falta su índice (átomo MOOV) y posiblemente le falten algunos bytes finales del último fotograma en curso. La definición funcional: está en tu disco con el tamaño correcto, no se abre en QuickTime / Premiere / Resolve e indica que su duración es cero (o un número extraño) cuando se comprueba.

Los archivos truncados son la categoría de corrupción de vídeo más recuperable. La mala noticia: la mayoría de las herramientas de «reparación de MP4» para consumidores los gestionan mal. La buena noticia: este es exactamente el caso para el que se crearon nuestro motor y herramientas como «untrunc».

Cómo es realmente el truncamiento

Un MP4/MOV normal termina con un átomo MOOV finalizado que indexa todo en «mdat». Un archivo truncado termina a mitad de la escritura:

[ftyp]    ← container declaration, intact
[mdat]    ← frames + audio interleaved
                    ↓ truncation point — recording stopped here
[the next bytes — partial frame, partial atom, or just EOF]
            ← MOOV that should be here doesn't exist

Tres patrones comunes:

  1. Truncamiento por pérdida de energía/extracción de la tarjeta. El más común. «mdat» termina a mitad de fotograma; sin MOOV; por lo demás, el archivo está limpio.
  2. Truncamiento por error del sistema de archivos. Un sector defectuoso puso a cero una sección del archivo o el sistema de archivos no pudo escribir los bloques finales. «mdat» puede tener un agujero, pero por lo demás está intacto.
  3. Truncamiento de copia fallida. El archivo se copió parcialmente desde una tarjeta SD/SSD y la copia falló. El archivo «dañado» en la unidad de destino es solo una copia parcial de un origen que, por lo demás, está bien.

Vale la pena comprobar la causa n.º 3 antes de cualquier recuperación: intente copiar el archivo de nuevo desde la fuente original. Si el original sigue en la tarjeta SD/SSD y el archivo está en buen estado, habrás resuelto el problema en 60 segundos.

Qué significa realmente «la duración se muestra como cero»

Cuando QuickTime o VLC muestran la duración de una grabación como 0:00 o como un valor imposiblemente largo (como 4:32:18:35), casi siempre significa que la duración se está leyendo de un «mvhd» (encabezado de película) que falta o está mal formado dentro de MOOV. Sin un MOOV válido, no hay una duración válida. Los fotogramas siguen ahí en «mdat», pero el reproductor no sabe cuánto dura el vídeo.

Lo que puedes probar tú mismo

1. Vuelve a copiar desde la fuente

Parece obvio. A menudo se pasa por alto. Si el archivo original sigue en la tarjeta SD/SSD, intenta copiarlo de nuevo en una unidad diferente. Una nueva copia con «cp» (o rsync, o una copia del Finder) a veces produce un archivo que funciona cuando la copia anterior era la que estaba dañada.

2. «untrunc»

'untrunc' — de código abierto — recibió su nombre precisamente por este modo de fallo. Necesita un archivo de referencia en buen estado de la misma cámara en el mismo modo de grabación. Comando rápido:

untrunc reference.mov broken.mov

Produce «broken.mov_fixed.mov». Intenta abrirlo. Excelente para la causa n.º 1 (truncamiento limpio, sin agujeros) cuando hay una referencia disponible.

3. Re-mux de FFmpeg con ignorar errores

ffmpeg -err_detect ignore_err -i broken.mp4 -c copy out.mp4

A veces funciona con la causa n.º 2 (vacíos en el sistema de archivos) al omitir las secciones ilegibles.

4. Eliminar el último fotograma parcial

Si «untrunc» o nuestras herramientas indican que el último fotograma está incompleto, hay un enfoque manual: recorta unos cientos de MB del final del archivo e inténtalo de nuevo. El archivo recortado pierde el último segundo o los dos últimos segundos, pero está estructuralmente limpio. Las herramientas que automatizan esto (incluidas las nuestras) lo hacen por ti.

Cómo gestiona nuestro sistema de recuperación el truncamiento

  • Diagnóstico de seis pasadas identifica si el archivo está truncado de forma limpia (causa n.º 1), tiene agujeros internos (causa n.º 2) o está parcialmente copiado (causa n.º 3).
  • Escaneo a nivel de fotograma de «mdat» para encontrar el último fotograma completo, recorte automático seguro de cualquier fotograma final parcial.
  • Síntesis MOOV a partir de los fotogramas observados: no se requiere ningún clip de referencia.
  • «co64» para archivos de más de 4 GB para evitar el desbordamiento de desplazamiento en el índice reconstruido.
  • Recuperación de audio con filtrado de dominancia del tamaño de los fragmentos (omitir los fragmentos atípicos, mantener la grabación consistente).
  • Detección de huecos para la causa n.º 2: si el archivo tiene una sección rellena de ceros en el medio, la identificamos, omitimos el rango muerto y reconstruimos en torno a ella. El archivo recuperado puede tener un breve hueco o un tartamudeo en el agujero, pero el resto se reproduce.

Qué debes hacer

  1. Primero: intenta volver a copiar desde la fuente si aún la tienes. Gratis, rápido y, a menudo, la solución.
  2. Si el archivo está realmente truncado y volver a copiarlo no ayuda: cárgalo. Hasta 50 GB.
  3. Aproximadamente 1 minuto después, obtendrás una vista previa gratuita de 5 segundos.
  4. Paga solo si la vista previa funciona.

FAQ

Mi archivo muestra el tamaño de archivo correcto, pero se reproduce durante menos tiempo del esperado. Ese es un modo de fallo diferente: probablemente la grabación se finalizó, pero la duración de la reproducción es más corta que la duración de la grabación. A menudo, se trata de un problema de escala de tiempo «mvhd»; a veces, de un «stts» con formato incorrecto. Recuperable; súbelo para diagnóstico.

Mi archivo se reproduce los primeros 10 segundos y luego el reproductor se bloquea. La causa n.º 2 (agujero en medio del archivo) es la más probable. Los primeros 10 segundos son «mdat» intactos; el reproductor llega al agujero y no puede continuar. La recuperación reconstruye alrededor del agujero.

'untrunc' ha fallado porque no tengo un clip de referencia. Razón habitual para utilizar un servicio como el nuestro. No necesitamos una referencia: extraemos los parámetros del códec directamente de los fotogramas del archivo dañado.

Mi archivo es de una tarjeta SD que se borró y luego se recuperó. ¿Sigue siendo recuperable? Las herramientas de recuperación de tarjetas a veces devuelven archivos con datos de origen mixto (bytes de la grabación original más bytes de grabaciones posteriores sobrescritas encima). Estos son más complicados. El diagnóstico en la subida nos indica si es manejable.

El archivo muestra una duración incorrecta, pero se reproduce correctamente. Solo una corrección de metadatos: «ffmpeg -i input.mp4 -c copy out.mp4» suele reescribir la duración correctamente durante el remultiplexado. No se necesita una recuperación de pago.

¿Está a salvo mi grabación? Servidor en Francia, eliminación automática después de 48 horas, nunca se utiliza para entrenar nada ni se comparte. Política de privacidad.

Relacionado

Sube tu archivo →

Vista previa gratuita · Sin compromiso

¿Todo listo para recuperar tu vídeo?

Sube tu archivo y obtén gratis una previsualización de 5 segundos en aproximadamente un minuto. Pague solo si la previsualización le parece correcta.

Sube tu vídeo →