Как определить маркер EOF для MPEG?

1022
rism

Я использую WinHex для восстановления файлов с диска. В основном это очень хорошо, за исключением файлов MPEG. Кажется, что почти каждый из них усекается в файлы разных размеров, почти всегда меньше 1 МБ.

Он обнаруживает начало синкода файла, 0x000001BAно, просматривая шестнадцатеричные смещения конца файла, EOFвыбранные маркеры кажутся совершенно случайными. Есть много концовок, 0000но тогда я понимаю, что формат - это то, что поток MPEG может использовать заполнение нулевым битом, чтобы обеспечить строгое соблюдение общей скорости передачи данных ... поэтому я не ожидал бы, что 00000 будет концом маркера файла по этой причине.

0000 EOF

Тогда есть другие, которые заканчиваются случайными байтовыми кодами:

случайный

То, что я ищу и не могу найти, - это либо «правильные» EOFкоды маркеров (не знаю, почему WinHex их не использует), либо, альтернативно, какие-то поля заголовка длины содержимого, такие как HTTP, которые я могу использовать для вывода EOFот SOF.

3
Мпег что? Я бы сказал, что конец Vids Vids. отметив несколько, я получил программу, с которой она была обработана в конце, или она просто заканчивается на 00 или 00 00. Размер должен быть в заголовках, потому что программы будут искать в этих заголовках. Поток (по крайней мере, живой) не знает, где он закончится, поэтому он не может знать его размер, и он может закончиться холодом. Есть ли у вас непрерывные, обработанные точно так же? Не можете найти конец, найти начало следующего файла? Это все за мной. Разве в структуре диска данные, заканчивающиеся в кластере, помогают найти конец? Psycogeek 10 лет назад 0

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

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