FFMPEG изображения в видео с обратной последовательностью с другими фильтрами - PullRequest
0 голосов
/ 04 июля 2019

Аналогично этому ffmpeg - преобразовать последовательность изображений в видео в обратном порядке

Но мне было интересно, смогу ли я создать цикл видео, указав диапазон изображения и добавив обратный порядокв одну команду.

В идеале я хотел бы объединить его с этим Сделать видео альфа-маску из файлов PNG

То, что я сейчас делаю, генерирует реверс, используяhttps://stackoverflow.com/a/43301451/242042 и объединение видеофайлов вместе.

Однако я думаю, что это будет похоже на Создайте видео с самим собой, но в обратном порядке, используя ffmpeg

Моя текущая попытка предполагала 60 изображений.что делает vframes x2

ffmpeg -y -framerate 20 -f image2 -i \
  running_gear/%04d.png -start_number 0 -vframes 120 \
  -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [v]" \
  -filter_complex alphaextract[a]
  -map 0:v -b:v 5M -crf 20 running_gear.webm 
  -map [a] -b:v 5M -crf 20 running_gear-alpha.web

Без альфа-маскировки я могу заставить его работать, используя

ffmpeg -y -framerate 20 -f image2 -i running_gear/%04d.png \
  -start_number 0 -vframes 120 \
  -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [v]" \
  -map "[v]" -b:v 5M -crf 20 running_gear.webm

С помощью альфа-маскировки я могу сделать

ffmpeg -y -framerate 20 -f image2 -i running_gear/%04d.png \
  -start_number 0 -vframes 120 \
  -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [vc];[vc]alphaextract[a]"
  -map [a] -b:v 5M -crf 20 alpha.webm

ТакЯ пытаюсь сделать это так, чтобы альфа-маска выполнялась в одно и то же время.

Хотя моим конечным идеалом было бы взять изображения, переверните его, чтобы получить альфа-маску, и расположите его рядом, чтобыможно использовать в Ren'py

1 Ответ

0 голосов
/ 04 июля 2019

Понял после нескольких проб и ошибок. Не совсем мое конечное желание, но все еще работает.

ffmpeg -y -framerate 20 -f image2 -i running_gear/%04d.png \
  -start_number 0 -vframes 120 \
  -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [vc];[vc]split[v][av];[av]alphaextract[a]" 
  -map [v] -b:v 5M -crf 20 running_gear.webm 
  -map [a] -b:v 5M -crf 20 running_gear-alpha.webm

После проверки некоторых других фильтров (узнав об этом из concat) я обнаружил hstack, поэтому тот, который может поставить его рядом, чтобы он лучше работал с Ren'Py, - это *. 1005 *

ffmpeg -y -framerate 20 -f image2 -i running_gear/%04d.png \
  -start_number 0 -vframes 120 \
  -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [vc];[vc]split[v][av];[av]alphaextract[a];[v][a]hstack[m]" 
  -map [m] -b:v 5M -crf 20 running_gear.webm 
...