我有一个 AVI 视频,需要知道是否有人过去从中剪掉了某些部分。
有没有什么软件可以帮助做这样的检查?
答案1
我会说,你不能确实知道。
看看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 文件中剪切部分内容。然后你观察这个文件。有三种可能性:
该文件具有正确构建的索引块:这意味着文件完好无损,你根本无法判断它是否被剪切过。它与原始文件没有任何区别(文件大小除外)。
该文件根本没有索引块:这暗示文件以某种方式被编辑过,但编辑器未能写入索引。这并不能证明文件被编辑过,但却是一个非常强烈的暗示。为了获得“完整”的文件,您需要重新索引它并生成索引块。
该文件的索引块已损坏:这意味着有人手动编辑了该文件,要么从末尾截断字节,要么以其他方式破坏它。
现在剩下的唯一问题是:我怎么知道是否有索引块?我不能尝试,也许艾维菲XP有一个选项可以验证这一点。还有DivFix++它可以检查错误。
总而言之,仅从文件来看,你无法真正分辨出来。索引损坏或丢失可能是一个提示,但不是完整的证据。