MP4 · MOV · Без перекодирования · Без ограничения размера
Удаление метаданных из видео
Бесплатный инструмент удаления метаданных из видео MP4 и MOV. Съёмка с телефона несёт GPS-координаты и модель вашего устройства ровно так же, как фотографии, — уберите их, не перекодировав ни одного кадра.
Что телефон записывает в ваше видео
Ролик, снятый на телефон, обычно несёт атом местоположения QuickTime с вашими координатами в формате ISO 6709, метки создания и изменения в заголовках фильма и дорожек, марку и модель устройства и название кодировщика. Приложения для монтажа затем добавляют собственные поля названия, комментария и исполнителя.
Ничего из этого не видно при воспроизведении, и всё это уходит вместе с файлом, когда вы его отправляете.
Почему мы не перекодируем
Очевидный способ убрать метаданные из видео — прогнать его через транскодер. Именно так
поступают инструменты на базе ffmpeg.wasm, и это стоит трёх вещей: это медленно,
это скачивает десятки мегабайт WebAssembly и это пересжимает ваше видео, так что результат
измеримо хуже исходника.
Контейнер позволяет пойти лучшим путём. В MP4 и MOV таблица stco внутри
moov хранит абсолютные байтовые смещения, указывающие в бокс mdat,
где живут кадры. Удаление бокса метаданных сдвинуло бы каждое из этих смещений и сломало бы
файл. Но формат определяет бокс free — заполнитель, который любой демультиплексор
пропускает. Поэтому мы переписываем тип каждого бокса метаданных на free, обнуляем
его содержимое и оставляем размер нетронутым. Ничего не сдвигается. Ничего не декодируется.
Результат — файл той же длины, что и оригинал, с идентичными кадрами и без метаданных.
Потоковое чтение вместо загрузки в память
У браузеров легко заканчивается память, если попросить их удержать файл на 2 ГБ. Мы никогда
так не делаем. Боксы верхнего уровня обходятся чтением 16-байтовых заголовков через
File.slice(), целиком читается только бокс moov, а результат
собирается как список ленивых ссылок на диапазоны исходного файла. Пиковый расход памяти
остаётся в пределах нескольких мегабайт, какой бы длины ни было ваше видео.
Вопросы