Как я могу восстановить поврежденный файл AVI?

38776
Paolo Bergantino

У меня есть файл .avi, который составляет около 110 МБ. Когда я пытаюсь воспроизвести его с помощью VLC Media Player, он говорит что-то вроде: «Этот файл поврежден. Попытка восстановить?» и после того, как он делает свое дело, он все еще не может играть.

Есть ли какое-либо другое программное обеспечение, которое может извлечь из него любое видео? Может быть, тот, который специализируется на таких вещах? Я не очень надеюсь, потому что я решил, что если из этого что-нибудь удастся воспроизвести, VLC мог бы это сделать, но я решил, что все равно попробую ...

19

6 ответов на вопрос

11
Nick Josevski

В прошлом мне повезло с большим количеством сломанных / неполных AVI, использующих DivFix, но я не уверен, что он работает хорошо на чем-то более позднем, чем Windows XP.

Более новая версия - DivFix ++ :

DivXFix ++ предназначен для восстановления поврежденных потоков файлов AVI путем перестройки индексной части файла. Это очень полезно при предварительном просмотре фильмов, у которых нет индексной части, как, например, некоторые файлы в настоящее время загружаются из ed2k или битовых сетей. DivFix ++ - это полное переписывание программы DivFix из-за ее ошибок и низкой производительности.

Потрясающие. Я сделал это для видео файла 799 МБ, и это сработало как шарм. Фактически, этот файл AVI при воспроизведении с VLC приводил к той же ошибке. Он никогда не воспроизводился на проигрывателе Windows Media. Теперь он отлично воспроизводится и в Windows Media Player. Ник - Большое спасибо! Kanini 14 лет назад 2
@Kanini, рад, что DivFix помог :) Nick Josevski 14 лет назад 0
11
slhck

Here are some programs that might help:

  • VLC should offer you to fix a broken AVI file's index when you open the file.
  • DivFix++
  • AviFiXP (only runs on Windows)

There's an extensive tutorial on repairing broken AVI files here: Repair broken or corrupt AVI files - AfterDawn: Guides

You can also try rebuilding the container by doing a bitstream copy with FFmpeg:

ffmpeg -i input.avi -c copy output.avi 
В ffmpeg 0.6.2 используйте `-vcodec copy -acodec copy` вместо` -c copy`. Я использовал (для Windows) [эта версия] (http://lame1.buanzo.com.ar/). У меня была куча файлов, чтобы исправить. DivFix ++ обрушился на меня. ffmpeg был великолепен. Благодарю. sinelaw 10 лет назад 1
Я исправил ваш комментарий. Обратите внимание, что это действительно относится только к (сейчас) устаревшим версиям ffmpeg. slhck 10 лет назад 0
3
Electrons_Ahoy

VirtualDub может делать довольно удивительные вещи с испорченными файлами AVI. Просто откройте файл в VirtualDub, дайте ему готовить, а затем, если он был успешно открыт, повторно сохраните его как новый файл AVI. Обычно вам даже не нужно менять настройки сжатия.

Ах, VirtualDub - хорошая рекомендация, но он не мог с ней приседать. Paolo Bergantino 14 лет назад 0
Человек, жаль это слышать. Надеюсь, вы найдете что-то, что работает - отметив больше разочарований, чем файл размером 100 мегабайт, который вы не можете использовать! Electrons_Ahoy 14 лет назад 0
2
M.N

Есть игра под названием SuperDecoder .

смог воспроизвести действительно испорченные файлы и CD / DVD с ним. Вы можете дать ему шанс.

1
William Turrell

I had some AVIs which VLC didn't even attempt to repair and DivFix++ gave me seek errors for. Passing them through ffmpeg didn't work, but mencoder did (it's very quick):

mencoder -idx input.avi -ovc copy -oac copy -o output.avi

(mencoder is part of the mplayer package on most systems, e.g. brew install mplayer on Homebrew.)

See also: How can I check the integrity of an avi file and repair it automatically in Linux?

0
Rook

До сих пор у меня был хороший опыт работы с Media Player Classic и The KMPlayer. Они могут воспроизводить файлы, которые были частично загружены или разбиты на части (например, hjsplit).

Я думаю, что они могут играть в твои.

Хотя, это также зависит от типа кодека и так далее ...

Похожие вопросы