Я прекрасно провожу время, пересматривая ffmpeg и возясь с ним, но кто-нибудь может мне помочь с оптимизацией процесса 'неподвижное изображение / добавить кроссфейд / сохранить как рисунок', пожалуйста?

Я пытаюсь избавиться от необходимости конвертировать неподвижные изображения в промежуточный видеофайл (для добавления плавного перехода) перед чтением видео для извлечения файла палитры GIF, а затем повторным чтением, чтобы преобразовать видео в GIF. , (Мои усилия неприятно видеть, и файл палитры пока не читается).

Кто-нибудь может сказать нам, возможно ли использовать подпрограмму создания видео ниже для подачи создания палитры, а затем - финального gif-файла напрямую? (Или взять поток палитры и сделать это за один проход?) Дело не в том, что rm и del не являются опциями, зависящими от системы, но чем меньше промежуточных процессов, тем меньше ошибается, когда моя спина поворачивается.

 ffmpeg -i "nlm%2d.png" -vf 
zoompan=d=4/3:fps=1/3,framerate=25:interp_start=0:interp_end=255:scene=100 - 
c:v mpeg4 -b:v 5M -q:v 0 out.mp4

F:\Users\QuinB\WF - ffmpeg\crossfade>dir

13/11/2018  21:35            28,553 nlm01.png
13/11/2018  21:35            26,351 nlm02.png
13/11/2018  21:35            28,400 nlm03.png
13/11/2018  21:35            31,235 nlm04.png
13/11/2018  21:35            34,553 nlm05.png
14/11/2018  11:50         1,177,150 out.mp4

Создав файл mp4, мы используем хорошо известную (и почти неизмененную) последовательность:

ffmpeg -v warning -i out.mp4 -vf fps=10,palettegen -y out_palette.png

ffmpeg -v warning -i out.mp4 -i  out_palette.png -lavfi "fps=10[x]; [x][1:v] paletteuse" -y out.gif

Благодаря форуму людей, которые поделились своими знаниями и уже были ответственны за большую часть моего образования ffmpeg. QB

Источники:FFMPEG Промежуточное руководство / последовательность изображений

Высокое качество GIF с FFmpeg

1 ответ1

0

использование

 ffmpeg -i "nlm%2d.png"
  -filter_complex  "zoompan=d=4/3:fps=1/3,framerate=25:interp_start=0:interp_end=255:scene=100,
                    fps=10,split=2[pal][vid];[pal]palettegen[pal];[vid]fifo[vid];
                    [vid][pal]paletteuse" -y out.gif

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .