Как проверить целостность загруженных больших файлов MKV

Только что скачал большой файл mkv, который больше 20ГБ. Мне потребовалось несколько дней, чтобы закончить загрузку. Но как проверить, была ли загрузка завершена или она была просто прервана на полпути? У меня есть этот вопрос, потому что для mkv-файла mplayer может воспроизводить его до тех пор, пока он не сломается.

Есть ли в Ubuntu утилиты для таких проверок?

7
задан 15 November 2013 в 22:36

2 ответа

Поскольку у вас нет информации о контрольной сумме для файла (CRC32, MD5, SHA-1, SHA-256 и т. Д.), Вы можете попытаться проверить сам формат Mastroska.

mkvalidator - это простой инструмент командной строки для проверки соответствия файлов Matroska и WebM спецификациям. Он проверяет различные фиктивные или недостающие ключевые элементы в версии файла EBML DocType и сообщает об ошибках / предупреждениях в командной строке.

Использовать:

mkvalidator --details your-big-mkv-file.mkv

Однако mkvalidator может проверять только структуру контейнера Mastroska, а не «полезную нагрузку» (т.е. данные A / V) в нем. Чтобы проверить часть данных, вам все еще нужен декодер, чтобы увидеть, правильно ли он декодируется. Из https://superuser.com/a/100290 :

ffmpeg -v error -i file.avi -f null - 2>error.log

Эта команда использует ffmpeg для чтения в файле mkv и пытается декодировать его кадр за кадром. Любые ошибки, обнаруженные в процессе декодирования, будут записаны в файл error.log.

0
ответ дан 15 November 2013 в 22:36

Matroska валидация инструмент отлично подходит для проверки целостности контейнера. Вот рекурсивный скрипт-обертка, который я написал на python и использую для больших библиотек. https://github.com/1010dvpt/mkv-validator

0
ответ дан 15 November 2013 в 22:36
  • 1
    Попробованный это, все еще получая ту же ошибку – Tim English 29 May 2015 в 20:54

Другие вопросы по тегам:

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