Как сгенерировать зацикленный анимированный GIF для Facebook с помощью ffmpeg? - PullRequest
0 голосов
/ 06 февраля 2020

Когда я вставляю giphy url (, как этот ) в сообщение или комментарий на Facebook, gif проигрывается немедленно и зацикливается бесконечно. Когда я загружаю их из ffmpeg , ничего из этого не происходит. Вы должны нажать кнопку воспроизведения, чтобы запустить анимацию, а затем она заканчивается через один раз.

У меня есть пара команд ffmpeg, которые я использую для создания картинок. Это:

ffmpeg -ss 10 -t 5  -i input.m4v -vf "fps=15,scale=800:-2:flags=lanczos,palettegen" -y palette.png

и

ffmpeg -ss 10.6 -t 5 -i input.m4v -i palette.png -filter_complex "fps=15,scale=800:-1:lanczos[video];[video][1:v]paletteuse" output.gif

Первый генерирует собственный цветной палитру, который используется вторым для создания высококачественного анимированного GIF. Я также попытался добавить -loop 0 (то есть ffmpeg -ss 10.6 -t 5 -i input.m4v -i palette.png -filter_complex "fps=15,scale=800:-1:lanczos[video];[video][1:v]paletteuse" -loop 0 output.gif), но это тоже не сработало.

Я также пытался загрузить сгенерированные ffmpeg изображения на личный веб-сайт и вызывать их оттуда, но они вообще не загружались.

В случае, если это поможет, вот копия одного из картинок (который автоматически запускается и зацикливается на StackOverflow для меня, но не на FB)

enter image description here

Как один go о создании GIF, который будет автоматически запускаться и l oop на неопределенный срок для Facebook?

(Примечание: у меня нет проблем, если мне нужно что-то делать с личным веб-сайтом, но я не хочу использовать Giphly или другие анимированные GIF-сайты напрямую, если это возможно. Также стоит отметить, что я обнаружил, что если я загружаю изображение с giphly и загружаю его, это не так. Также нет возможности автоматического запуска. Итак, это может быть что-то внутреннее для FB, но я все же хотел бы выяснить это.)

1 Ответ

0 голосов
/ 07 февраля 2020

Файл из Giphy выглядит как WebP, а не как GIF:

ffmpeg -i giphy
[…]
Stream #0:0: Video: webp, none, 25 tbr, 25 tbn, 25 tbc

Firefox и mediainfo concur.

Поэтому попробуйте вместо этого создать WebP:

ffmpeg -ss 10.6 -t 5 -i input.m4v -loop 0 output.webp
  • Ваш ffmpeg должен быть скомпилирован с --enable-libwebp.
  • См. ffmpeg -h encoder=libwebp и ffmpeg -h muxer=webp для дополнительных опций.
...