Tengo un archivo .avi de unos 110 MB. Cuando intento reproducirlo con VLC Media Player dice algo como "Este archivo está roto. ¿Intento repararlo?" y después de hacer lo suyo todavía no puede jugarlo.
¿Existe algún otro software que pueda obtener el video que pueda? Tal vez uno que se especializa en ese tipo de cosas? No tengo muchas esperanzas porque pensé que si se podía jugar algo, VLC lo habría logrado, pero pensé que de todos modos le daría una oportunidad ...
He tenido algo de suerte en el pasado con muchos AVI rotos/incompletos usando DivFix , pero no estoy seguro de si funciona bien en algo posterior a Windows XP.
Una versión más nueva es DivFix ++ :
DivXFix ++ está diseñado para reparar secuencias de archivos AVI rotas mediante la reconstrucción de la parte del índice del archivo. Esto es muy útil cuando se intenta obtener una vista previa de películas que no tienen parte de índice, como algunos archivos que se están descargando actualmente de ed2k o redes bittorent. DivFix ++ es una reescritura completa del programa "DivFix" debido a sus errores y bajo rendimiento.
Aquí hay algunos programas que pueden ayudar:
Aquí hay un extenso tutorial sobre cómo reparar archivos AVI rotos: Repare archivos AVI rotos o corruptos - AfterDawn: Guías
También puede intentar reconstruir el contenedor haciendo una copia de flujo de bits con FFmpeg :
ffmpeg -i input.avi -c copy output.avi
VirtualDub puede hacer cosas bastante sorprendentes con archivos AVI rotos. Simplemente abra el archivo en VirtualDub, déjelo cocinar y, si se abre con éxito, vuelva a guardarlo como un nuevo archivo AVI. Por lo general, ni siquiera necesita cambiar la configuración de compresión.
Todas buenas ideas sobre cómo reparar el índice AVI roto (mi preferencia es ffmpeg
), pero contribuyendo aquí una forma de encontrar archivos avi que tienen el índice roto para probarlos y repararlos proactivamente. Después de intentar sin éxito usar mediainfo
ffprobe
y otros para detectar archivos de los que vlc se quejaría, finalmente decidí usar vlc
ya que era el único que se quejaba. Aquí hay un fragmento que puede ser útil como parte de un script de escaneo y reparación automática.
if grep -q "avi demux error" \
<(cvlc --vout null --aout null --stop-time 2 "${VIDFILE}" vlc://quit 2>&1 )
# alternate ways to stop after two seconds
#<(timeout 2 cvlc --vout null --aout null "${VIDFILE}" 2>&1)
#<(cvlc --vout null --aout null "${VIDFILE}" 2>&1 & sleep 2; kill $!)
then
echo "avi demux error: ${VIDFILE}"
exit 1
fi
Nota: se incluyen los métodos de detención alternativos (para que no se reproduzca todo el video antes de salir) porque algunas versiones de VLC tienen un error en --stop-time y otros sistemas pueden no tener timeout
.
Tenía algunos AVI que VLC ni siquiera intentó reparar y DivFix ++ me dio errores de búsqueda. Pasarlos a través de ffmpeg no funcionó, pero mencoder
sí lo hizo (es muy rápido):
mencoder -idx input.avi -ovc copy -oac copy -o output.avi
(mencoder es parte del paquete mplayer
en la mayoría de los sistemas, por ejemplo, brew install mplayer
en Homebrew.)
Consulte también: ¿Cómo puedo verificar la integridad de un archivo avi y repararlo automáticamente en Linux?
Hay un juego llamado SuperDecoder.
he podido reproducir archivos y CD/DVD realmente desordenados con él. Puedes darle una oportunidad.