Этот пакетный файл извлекает кадры каждые X секунд, а затем геотегирует его: https://gist.github.com/Krzysiu/345c37b08d79d5f47971167e33bb2bd3
Требуется ffmpeg
и exiftool
. Все настройки должны быть заполнены вручную (строки 28-68).
Как это работает внутри?
- Сначала он извлекает кадры, используя фильтр ffmpeg с правильными параметрами (стандартные по умолчанию не сработают)
- Он устанавливает одинаковую метку времени для всех извлеченных кадров *. Временная метка может быть указана вручную или любая метка / файл изменяет и создает время из видеофайла.
- Сдвиг по времени для каждого изображения применяется. Я использовал этот метод, так как, кажется, нет простого способа сдвинуть время в случае ручной отметки времени.
- Фреймы геотегируются с использованием файла gpx.
* фактически для всех файлов, соответствующих %output_directory%\%frame_prefix%*.jpg
, поэтому, если вы извлекли сначала 150 кадров, а затем 100 в один и тот же каталог и с тем же префиксом, он обработает все 150 кадров, включая 101 -150 с раннего перевала.
Возможно, это можно сделать гораздо быстрее - выражение в Exiftool, которое будет умножать индекс файла на X от "кадра каждые X секунд". Я не очень хорош с выражениями Perl и Exiftool, поэтому я сделал это так.