Corrige «moov atom not found» — reconstruye el índice en tu navegador

El error significa que el índice del archivo nunca llegó a escribirse. Tus fotogramas siguen en el archivo; lo único que les falta es el mapa. Y los mapas se pueden reconstruir.

Tus archivos nunca salen de tu dispositivo — la reparación ocurre en tu navegador. 0 bytes subidos.

Your data is the big block — usually intact. What breaks is the small index. Repair rebuilds it.

Suelta un archivo aquí o exploraToca para elegir un archivo

ZIP · Office · PDF · vídeo · JPG · PNG · RAR/7z · SQLite — reparados aquí mismo, en tu navegador. No se sube nada

0 bytes subidosGratis: 3 reparaciones/día — hasta 500 MB de vídeo, 100 MB de documentos y archivos, 50 MB de fotos. Descarga gratuita. Una reparación 5,90 €. Sin cuenta.

Repara el archivo ahora

  1. Suelta el archivo
  2. La reparación ocurre en local
  3. Descarga el resultado

Suelta el MP4 de arriba. La herramienta lo lee en local e informa de si el moov está dañado o ausente por completo, lo que determina la vía de reparación. No se instala nada y no se sube nada.

En qué punto está el motor, con honestidad: la reparación estructural por remux (para archivos cuyo moov existe pero está dañado, truncado o mal ubicado) ya funciona hoy. La reconstrucción completa del índice para archivos que no tienen ningún moov está en desarrollo.

Qué significa el error

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x...] moov atom not found Invalid data found when processing input

Un MP4 guarda tus fotogramas comprimidos en un bloque grande (el átomo mdat) y, por separado, el átomo moov: el índice que registra dónde empieza cada fotograma, cuánto dura y cómo se entrelazan el audio y el vídeo. El moov se escribe cuando la grabación se finaliza, porque el tamaño y el número de fotogramas no se conocen hasta que termina la codificación. Un bloqueo, un corte de corriente o una tarjeta llena antes de ese momento dejan el bloque de datos en el disco y el índice en ninguna parte.

Por eso la segunda línea de ffmpeg dice invalid data: el demultiplexor no está informando de imágenes destruidas, sino de que no tiene índice con el que interpretar las imágenes. Otro problema distinto, y mucho más fácil de arreglar.

Por qué ffmpeg no puede arreglar esto

Si has llegado hasta aquí, probablemente ya hayas probado ffmpeg -i roto.mp4 -c copy salida.mp4 y quizá -movflags faststart. Ambos fallaron por la misma razón: operan sobre el resultado de una lectura correcta. La copia de flujo necesita que el demultiplexor le entregue los paquetes; faststart reubica un moov que ya debe existir. Cuando la entrada no tiene moov, la lectura falla antes de que cualquiera de esas opciones importe. No es una opción que aún no hayas encontrado; es un límite real de lo que un conversor puede hacer. Arreglar el archivo implica reconstrucción, no conversión: escanear el bloque de datos en bruto en busca de los límites de los fotogramas y reconstruir las tablas de muestras a partir de lo que se encuentre.

Frente a untrunc — y en qué punto está nuestro motor

untrunc es la herramienta gratuita de referencia para exactamente esta reconstrucción, y funciona. Pero la fricción es real: lo compilas tú mismo (o confías en una compilación de terceros), lo ejecutas desde la línea de comandos y necesita un archivo de referencia: una grabación en buen estado del mismo dispositivo con los mismos ajustes, que se usa para interpretar los fotogramas en bruto del archivo dañado.

Nuestra postura, dicha claramente: el motor en el navegador de IntactFile realiza hoy la reparación estructural por remux: archivos cuyo moov sobrevivió de forma dañada. La reconstrucción tipo untrunc de un archivo con ningún moov está en desarrollo, y no vamos a fingir que ya está disponible antes de que lo esté. Si tu moov falta por completo y necesitas la solución ahora mismo, untrunc es la recomendación honesta; si el diagnóstico de arriba muestra un índice dañado pero presente, la reparación en el navegador ya lo resuelve: sin compilar, sin buscar un archivo de referencia y sin subir nada.

Qué puede y qué no puede reparar

Reconstruir un índice, con cualquier herramienta, funciona cuando los datos multimedia sobrevivieron. Y normalmente lo hicieron: el mdat se escribe de forma continua durante la grabación, así que todo lo anterior a la interrupción está físicamente en el archivo. Lo que ningún software puede hacer es reparar un archivo cuyos datos nunca se escribieron. La pista es el tamaño: una «grabación de una hora» que ocupa 12 KB, o un archivo que aparece casi todo ceros porque la tarjeta SD murió a mitad de escritura, no tiene nada dentro que indexar. Compara el tamaño con la duración de la grabación antes de perder tiempo con cualquier herramienta, la nuestra o la de quien sea. Y una reparación fallida nunca se cobra.

Preguntas frecuentes

¿Cómo se corrige «moov atom not found» con ffmpeg?

No se puede, no con ffmpeg a solas. El demultiplexor de ffmpeg necesita el átomo moov para interpretar la entrada, así que toda receta basada en leer el archivo (-c copy, -movflags faststart, recodificar) choca contra el mismo muro. Arreglar el archivo implica reconstruir el índice a partir de los datos multimedia en bruto, un tipo de herramienta distinto: untrunc en la línea de comandos, o la reparación para la que está hecho IntactFile.

¿Puede ffmpeg recuperar un MP4 sin átomo moov?

No. ffmpeg es un conversor, no un reconstructor: transforma archivos que puede leer, y un MP4 sin moov es ilegible para su demultiplexor. Su única utilidad aquí es el diagnóstico: el error confirma que falta el índice sin decir nada sobre los datos multimedia, que normalmente sobrevivieron.

¿Qué causa «moov atom not found»?

La grabación nunca se finalizó. El átomo moov se escribe cuando la grabación se detiene limpiamente, así que un bloqueo, un corte de corriente, un disco o una tarjeta SD llenos, o una app cerrada a la fuerza dejan los datos en el disco sin índice. El mismo error aparece también cuando una descarga o transferencia se cortó, porque el moov suele estar al final: la parte que nunca llegó.

¿untrunc necesita un archivo de referencia?

Sí. untrunc necesita un vídeo en buen estado grabado por el mismo dispositivo o software con los mismos ajustes. Lee los parámetros del códec y la estructura de esa referencia para dar sentido a los fotogramas en bruto del archivo dañado; sin una referencia que coincida, no puede interpretar los datos que encuentra.

¿Siguen los datos de vídeo en el archivo si falta el átomo moov?

Normalmente sí: los datos multimedia se escriben de forma continua mientras grabas; solo el índice se deja para el final. Comprueba el tamaño: si coincide aproximadamente con la duración de la grabación (unos pocos GB por una hora en 1080p), los fotogramas casi con seguridad están ahí. Un archivo de 0 bytes o de una fracción mínima del tamaño esperado no tiene nada que reparar.

El mismo error, con un origen concreto:OBS se bloqueó a mitad de emisión ·la GoPro se quedó sin batería mientras grababa ·la batería del dron murió en pleno vuelo ·cualquier otro daño en un MP4