Por qué el cierre te dejó un archivo que no se reproduce
Un MP4 son dos cosas en un mismo archivo: las imágenes, un largo bloque de vídeo y audio comprimidos, y el índice, una pequeña tabla que le dice a un reproductor dónde está cada fotograma y cómo se alinea el audio. Mientras OBS graba, vuelca las imágenes al disco de forma continua. Todavía no puede escribir el índice, porque el índice registra tamaños y desplazamientos finales que no se conocen hasta que la grabación termina. Así que OBS escribe el índice el último, en el instante en que pulsas detener.
Un cierre inesperado nunca llega a ese instante. El proceso muere con las imágenes ya en el disco y el índice nunca escrito. En términos de MP4 el archivo tiene su cabecera ftyp y su bloque mdat de medios, y le falta el átomo moov que los indexa, y por eso todos los reproductores lo rechazan y ffmpeg dice moov atom not found. Horas de imágenes pueden estar en un archivo que, para cualquier reproductor normal, parece completamente vacío. Para la anatomía completa de ese índice y por qué vive al final, mira el átomo moov del MP4 explicado, y para el error exacto y sus causas, «moov atom not found».
Un cierre de OBS, dibujado: la grabación llegó al disco, pero el índice que OBS escribe al detener nunca se escribió.
¿De verdad está perdido? Sí y no
Busca este problema y encontrarás hilo tras hilo en los foros, muchos con un colaborador de OBS diciendo que un MP4 sin finalizar está esencialmente perdido. No se equivocan, y vale la pena entender exactamente qué quieren decir, porque es una afirmación precisa, no un encogimiento de hombros.
Lo que quieren decir es que no puedes remuxar el archivo. El remuxado copia los flujos a un contenedor limpio, y es la forma normal de salvar un MP4 con problemas. Pero el remux tiene que leer el índice existente para saber dónde están los flujos, y un archivo sin finalizar no tiene índice que leer. Así que el remux falla en el acto, y con él fallan todos los trucos de ffmpeg -c copy y faststart construidos sobre el remuxado. Frente a esa definición de «arreglar», el archivo está genuinamente perdido.
La mitad que se dejan es que el remuxado no es la única opción. La reconstrucción del índice es una operación distinta: en lugar de leer un índice que no está ahí, escanea las imágenes directamente en busca de los límites de los fotogramas y reconstruye el índice a partir de lo que mide. Esta es la clase de reparación que hacen herramientas de línea de comandos como untrunc, y es lo que recupera una grabación que los foros daban por perdida. Las imágenes nunca fueron el problema; el índice ausente lo era, y un índice se puede reconstruir.
El enfoque de la grabación de referencia
Reconstruir el índice significa reconstruir la estructura del archivo a partir de las propias imágenes, y la forma más fiable de hacerlo es con unagrabación de referencia: un clip sano, detenido con normalidad, hecho en OBS con la misma configuración, el mismo codificador, resolución, tasa de fotogramas y contenedor. Ese archivo sano lleva un índice completo y válido para exactamente el formato que usó tu grabación rota, lo que le da a la reconstrucción una plantilla que encaja con las imágenes que sobrevivieron.
Producir una lleva menos de un minuto: abre OBS con el mismo perfil bajo el que grababas, captura unos segundos y detén con normalidad para que el archivo se finalice. La reconstrucción lee esa referencia para interpretar tus datos y luego escribe un archivo reproducible sobre las imágenes que sobrevivieron.
Ahora los límites honestos, dichos con claridad. Los últimos segundos antes del cierre aún estaban en memoria y nunca llegaron al disco, así que se han ido; la reconstrucción devuelve todo hasta ese punto. Una grabación hecha con un bitrate muy variable puede volver con un ligero desfase de audio y vídeo. La referencia tiene que coincidir de verdad, porque un clip hecho con otra configuración da una plantilla que no cuadra. Y si el archivo marca 0 bytes o es una fracción minúscula de su tamaño esperado, no hay imágenes en él con las que reconstruir, lo que es un problema de almacenamiento o de recuperación de datos, no de reparación. Lo que devuelve una reconstrucción es tu grabación real, indexada y reproducible, nunca fotogramas inventados.
Evítalo la próxima vez: cómo se supone que graba OBS
Todo este modo de fallo es evitable, y el proyecto OBS ha creado las herramientas para evitarlo. Tres ajustes, por orden de cuánto ayudan:
Graba en MKV y luego remuxa a MP4
El consejo de siempre, y todavía el más seguro: configura OBS para grabar en MKV. El MKV se escribe de forma que una grabación sigue siendo utilizable aunque OBS se detenga de forma inesperada, porque no depende de un único índice escrito al final. Cuando tu sesión termine limpiamente, usa el remux integrado de OBS para convertir el MKV a MP4 sin pérdidas, sin recodificar, en segundos. Incluso puedes hacer que OBS remuxe a MP4 automáticamente tras cada grabación.
Usa Hybrid MP4 en OBS 30.2 y posteriores
Si necesitas MP4 directamente, quizá para un editor al que no le gusta el MKV, activa Hybrid MP4, añadido en OBS 30.2. Escribe el MP4 en una estructura fragmentada y resistente a cierres inesperados, así que una grabación interrumpida sigue siendo en buena medida utilizable en lugar de quedar varada sin índice. Es lo más cerca que llega el MP4 de la seguridad del MKV.
Entiende el truco del MP4 fragmentado
Hybrid MP4 funciona gracias al MP4 fragmentado, una estructura que escribe pequeños fragmentos de índice autocontenidos por todo el archivo en lugar de un único índice al final. Si configuras a mano una salida personalizada, el ajuste del muxer es movflags=frag_keyframe+empty_moov, que produce el mismo comportamiento resistente a cierres inesperados. Es el mecanismo que hay debajo del interruptor amigable.
Preguntas frecuentes
¿Puedo recuperar una grabación de OBS tras un cierre inesperado?
A menudo sí, si OBS estaba grabando en MP4 o MOV y el archivo tiene un tamaño saludable. OBS escribe las imágenes en el disco de forma continua durante la grabación y escribe el índice que lo une todo solo cuando pulsas detener. Un cierre inesperado se salta ese paso, así que las imágenes están en el disco sin índice y no se reproducen. Reconstruir el índice hace que la grabación vuelva a reproducirse, menos los últimos segundos que aún estaban en memoria cuando OBS murió. Un archivo de 0 bytes es un problema distinto, sin imágenes con las que reconstruir.
¿Por qué mi MP4 de OBS no se reproduce después de que OBS se cerrara?
Porque el MP4 nunca se finalizó. El índice que un reproductor necesita, el átomo moov, se escribe en el momento en que detienes la grabación, una vez conocidos los tamaños finales. Un cierre inesperado corta la corriente al proceso antes de esa escritura, así que el archivo contiene todas sus imágenes pero nada del indexado que apunta a ellas. Los reproductores y ffmpeg lo informan como «moov atom not found». Las imágenes sobrevivieron; el mapa no.
¿Debería grabar en MKV o en MP4 con OBS?
Graba en MKV si te importa la seguridad ante cierres inesperados, cosa que en sesiones largas sí importa. El MKV se escribe de forma que una grabación sigue siendo utilizable aunque OBS se detenga de forma inesperada, porque no depende de un único índice escrito al final. Cuando termines, remuxa el MKV a MP4 sin pérdidas desde dentro de OBS en segundos, sin recodificar. Si tienes que grabar directamente a MP4, usa la opción Hybrid MP4 en OBS 30.2 y posteriores, que mantiene una estructura resistente a cierres inesperados.
¿Puedo remuxar un MP4 de OBS dañado para arreglarlo?
No, y este es el malentendido detrás de la mayoría de los consejos de «está perdido». Remuxar copia los flujos a un contenedor nuevo, pero para hacerlo primero tiene que leer el índice existente, y un MP4 sin finalizar no tiene índice que leer. El remux falla al instante en estos archivos. Eso es un límite real del remuxado, no una prueba de que las imágenes se hayan ido. Reconstruir el índice, una operación distinta, es lo que de verdad recupera una grabación sin finalizar.
¿Qué es Hybrid MP4 en OBS?
Hybrid MP4 es una opción de grabación añadida en OBS 30.2 que escribe el MP4 de forma fragmentada y resistente a cierres inesperados, de modo que una grabación interrumpida por un cierre sigue siendo en buena medida utilizable en lugar de quedar varada sin índice. Te da la comodidad de un MP4 que la mayoría de los editores aceptan directamente, con gran parte de la seguridad que convirtió al MKV en el consejo estándar para grabar con OBS.
El índice ausente que está en el centro de todo esto, en detalle: anatomía del MP4 y el átomo moov.