У меня есть видео AVI, и мне нужно знать, если кто-то вырезал из него какие-то части в прошлом.
Есть ли программное обеспечение, которое может помочь сделать такую проверку?
Я бы сказал, вы не можете знать наверняка.
Посмотрите на формат файла AVI:
RIFF RIFF HEADER
|-AVI AVI CHUNK
|-hdrl MAIN AVI HEADER
| |-avih AVI HEADER
| |-strl STREAM LIST[One per stream]
| | |-strh STREAM HEADER[Requiered after above]
| | |-strf STREAM FORAMT
| | |-strd OPTIONAL -- STREAM DATA
| | |-strn OPTIONAL -- STREAM NAME
|-movi MOVIE DATA
| |-rec RECORD DATA[SEE BELOW]
| |-[data subchunks] RAW DATA[SEE BELOW]
|-idx1 AVI INDEX
|-[index data] DATA
AVI (который по сути является файлом RIFF) содержит несколько блоков.
hdr
)movi
)idx
)Данные фильма должны быть найдены там, где написано RAW DATA
(под фрагментом movi
). Данные индекса не являются обязательными, но их можно использовать, чтобы указать, где найти какую часть видео. Это позволяет искать в видео.
Теперь предположим, что вы вырезали части из файла AVI с полным индексом. Затем вы наблюдаете этот файл. Есть три варианта:
Файл имеет правильно построенный индексный блок: это означает, что файл не поврежден, и вы не можете сказать, был ли он вырезан вообще. Его нельзя отличить от исходного файла (за исключением размера файла).
В файле вообще нет индекса: это был бы намек на то, что файл был каким-то образом отредактирован, но редактор не смог написать индекс. Это не доказательство того, что файл был отредактирован, но очень сильный намек. Чтобы получить "полный" файл, вам нужно будет переиндексировать его и сгенерировать индексный блок.
Файл имеет поврежденный индексный блок: это может означать, что кто-то вручную отредактировал файл, либо обрезал байты с конца, либо испортил его любым другим способом.
Теперь остается только один вопрос: как мне узнать, есть ли индексный блок? Я не могу попробовать, может быть, AviFiXP имеет возможность проверить это. Также есть DivFix++, который может проверять наличие ошибок.
Подводя итог, вы не можете сказать это, просто посмотрев файл. Сломанный или отсутствующий индекс может быть подсказкой, но не полным доказательством.