Как открыть первые n байтов файла в шестнадцатеричном формате и отредактировать его?

Я хочу отредактировать некоторые видео.avi (вырезать их, если быть точным) в VirtualDub, но он не смог открыть файлы. Они закодированы в xvid, который я установил, и играют в KMPlayer без проблем. Кроме того, все другие видео xvid могут быть легко открыты и вырезаны VirtualDub.

Я подозреваю, что что-то не так в первых нескольких байтах этих видео (магическое число?). Это означает, что я должен открыть файлы, нарушающие работу, в шестнадцатеричном редакторе и внести некоторые необходимые изменения в заголовок. Проблема в том, что они очень большие (> 3 ГБ каждая) и открываются в UltraEdit очень долго.

Может ли UltraEdit открыть только первые несколько байтов файла? Если нет, знаете ли вы приложение, которое может это сделать?

Изменить: я использую Windows XP.

2 ответа

Решение

Нет, насколько мне известно (пользователь UltraEdit с 1998 года) UltraEdit считывает весь файл в память, и есть также некоторые недостатки, которые описаны в комментариях к этому вопросу (и дальнейшие недостатки при открытии больших файлов HTML).

Однако, если ваша система работает (64-битная Windows и достаточно оперативной памяти) и временные файлы отключены для больших файлов (меню "Дополнительно" /"Конфигурация" /"Обработка файлов" /"Временные файлы" /"Отключить временные файлы при открытии больших файлов (больше 2) Мб)") тогда должно получиться немного терпения.

Шестнадцатеричные редакторы для больших файлов

  1. HxD. Из функций: "Мгновенное открытие независимо от размера файла. Открытие и редактирование очень быстро"

  2. Из списка шестнадцатеричных редакторов я нашел wxHexEditor, который выглядит многообещающе:

    • Он не копирует весь файл в вашу оперативную память.
    • Использование памяти: в настоящее время ~25 МБ при открытых нескольких файлах> ~8 ГБ.
    • Вы можете работать с байтами удаления / вставки в файл более одного раза, не создавая временный файл!
    • Он поддерживает файлы размером до 2^64 байт. Помимо Linux его можно использовать с другими операционными системами, такими как Windows и Mac OS.

Я не проверял их, хотя.

Недавно я опубликовал Hexinator - бесплатный шестнадцатеричный редактор для Windows и Linux, который позволяет мгновенно открывать файлы неограниченного размера - в память загружается только видимая часть.

Несвободная часть позволяет вам применять "грамматику" к двоичным файлам, которая позволяет автоматически декодировать файлы. Уже есть (бесплатная) грамматика для файлов WAV, которая основана на RIFF, как AVI. Вы можете попытаться применить эту грамматику и посмотреть, где она плохо разбирается.

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