Создание видео (.mp4) с использованием каждой N-й нумерации нанесенных изображений (.png) с помощью ffmpeg - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть файл изображений в формате, начиная с номера 10000 с каждым шагом 500, как показано здесь "Qen_10000.png, Qen_10500.png, Qen_11000.png, Qen_11500.png..." до Qen_80500.png

Я хочу объединить их и сделать видео .mp4

Я пробовал ffmpeg -r 5 -i Qen_%1d000.png video.mp4 и некоторые другие комбинации, но только каждые 10000 номеров.

Я также пытался ffmpeg -start_number 10000...., но показывал нераспознанную опцию.

/usr/bin/ffmpeg -start_number 10000 -r 1 -i   Qen_distribution_*.png  video.mp4
    FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers
      built on Jan 29 2012 23:55:02 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51)
      configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-avfilter-lavf --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab
      libavutil     50.15. 1 / 50.15. 1
      libavcodec    52.72. 2 / 52.72. 2
      libavformat   52.64. 2 / 52.64. 2
      libavdevice   52. 2. 0 / 52. 2. 0
      libavfilter    1.19. 0 /  1.19. 0
      libswscale     0.11. 0 /  0.11. 0
      libpostproc   51. 2. 0 / 51. 2. 0
Unrecognized option 'start_number'

Пожалуйста, предложите несколько вариантов. Спасибо.

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019
  1. Ваш ffmpeg очень старый. Вы должны обновить. Либо скомпилируйте , либо загрузите и поместите в /usr/local/bin.

  2. Используйте шаблон глобуса, как описано в документации по демультиплексору файлов .

    ffmpeg -framerate 5 -pattern_type glob -i "*.png" -r 25 -vf format=yuv420p -movflags +faststart output.mp4
    
    • Некоторые игроки могут отказаться играть с такой низкой частотой кадров. В этом случае увеличьте значение -framerate или добавьте -r 25 (или любое другое значение, подходящее для вашего проигрывателя) в качестве параметра вывода.

    • Используйте -framerate вместо -r для ввода частоты кадров при использовании демультиплексора файла изображений.

    • Вывод формата пикселя yuv420p для совместимости.

    • Добавить -movflags +faststart при представлении видео через прогрессивную загрузку.

    • Если вы получите not divisible by 2, тогда добавьте масштабный фильтр: "scale=trunc(in_w/2)*2:trunc(in_h/2)*2,format=yuv420p"

0 голосов
/ 03 апреля 2019

Попробуйте использовать -pattern_type glob. Так что-то вроде этого:

ffmpeg -r 5 -pattern_type glob -i "Qen_*.png" video.mp4

Кавычки вокруг аргумента -i важны, чтобы не допустить расширения оболочки глобусом вместо ffmpeg.

Подробнее о глобусе и порядке файлов вы можете прочитать в викибуках о ffmpeg

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...