Входное изображение ffmpeg использует четные или нечетные значения на входном уровне в Windows

Входное изображение ffmpeg использует четные или нечетные значения на входном уровне в Windows

Есть несколько решений для выбора каждого нечетного или четного изображения на уровне фильтра, и все они работают. Но в моем случае у меня есть входные данные из файлов 15360x8640 .jpg, где имеет значение, ввожу ли я все изображения и отбрасываю каждую секунду в фильтре или пропускаю каждое второе входное изображение. Это значительно ускорит кодирование. Мой обычный входной сигнал (для пятизначных числовых файлов, работающий на win10 x64):

ffmpeg.exe -framerate 60 -i %05d.jpg -vcodec libx264 out.mkv

Что я пробовал (взято изэта тема, возможно, работает только на Linux, но я не смог проверить):

ffmpeg.exe -framerate 60 -i %04d%[13579%].jpg -vcodec libx264 out.mkv

и различные варианты с опциями glob и без них и т. д. Все терпят неудачу. Всегда выдает "%04d%[13579%].jpg: Нет такого файла или каталога" или что-то в этом роде.

Рабочий пример для каждого десятого кадра (т.е. 00001 00011 00021 и т.д.).

ffmpeg.exe -framerate 60 -i %04d1.jpg -vcodec libx264 out.mkv

Кто-нибудь уже решил проблему или у кого-нибудь появилась новая идея?

решение1

В настоящее время двухэтапное решение.
Создать список:

dir *1.jpg *3.jpg *5.jpg *7.jpg *9.jpg /b /on | c:\prog\unix\sed "s/^/file /" > "!list.txt"

Использовать список:

ffmpeg.exe -r 60 -f concat -safe 0 -i "!list.txt" -vcodec libx264 out.mkv

Плюс: Экономит мне около терабайта только для того, чтобы иметь копию этих файлов с разными именами в качестве входных данных или время декодирования на входном уровне. Почти в 1,5 раза быстрее по сравнению с конвертацией на уровне фильтра с моими огромными .jpg в качестве входных данных.
Минус: Кажется, требует больше оперативной памяти, чем при использовании на уровне фильтра, но почему?
У кого-нибудь есть лучшее решение?

Связанный контент