FFMPEG фильтрует Байера

Итак, у меня есть скрипт, который я использую для преобразования видеоклипов в GIF, но у меня проблемы с моим скриптом, раньше он работал, а теперь не работает.

в моем сценарии здесь есть предопределенные переменные и флаги, но он дает сбой в AVFilterGraph, говоря No such filter: 'dither', но я проверил документацию для FFMPEG, и там есть флаг фильтра dither, но по какой-то причине он не работает, когда он работал раньше.

#!/bin/sh 

start_time=00:00                                          # start time of GIF
duration=5                                            # duration of GIF
palette="/tmp/palette.png"                                    # temporary palette
filters="fps=20,scale=440:-1:flags=lanczos,dither=bayer:bayer_scale=1"    # FPS and Scale of GIF

ffmpeg -v warning -ss $start_time -t $duration -i $1 -vf "$filters,palettegen" -y $palette
ffmpeg -v warning -ss $start_time -t $duration  -i $1 -i $palette -lavfi "$filters [x]; [x][1:v] paletteuse" -y $2

для этого

filters="fps=20,scale=440:-1:flags=lanczos,dither=bayer:bayer_scale=1"

дизеринг должен считаться флагом, т.е. flags=lanczos и используйте метод дизеринга с bayer_scale.

Я не понимаю, почему это больше не работает, если раньше работало. С моим пакетом ffmpeg ничего не изменилось, в моей системе установлен пакет ffmpeg version 3.3.3-2~ubuntu16.04.1~ppa1, и раньше он работал нормально. Я следовал этому руководству здесь http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html

так что в основном использовать мой сценарий, это так;

$ ./makegif.sh input_file.mp4 output_file.gif

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

Эти флаги и параметры ДОЛЖНЫ работать, но это глупо и не делает то, что предполагается.


person Community    schedule 03.10.2017    source источник


Ответы (1)