ffmpeg bash подстановка нескольких наборов чисел друг за другом
Есть такая команда для ffmpeg как замена цвета:
ffmpeg -y -i "/storage/emulated/0/Download/in.gif" -vf "yadif,format=rgb24,lutrgb=r='if(eq(val,0),3,val)':g='if(eq(val,0),223,val)':b='if(eq(val,0),3,val)'" "/storage/emulated/0/Download/out.gif"
где
r='if(eq(val,0),3,val)
красный канал значение 0 заменить на 3
g='if(eq(val,0),3,val)
зеленый канал значение 0 заменить на 3
b='if(eq(val,0),3,val)
синий канал значение 0 заменить на 3
В примере выше меняем цвет 0 0 0 на цвет 3 3 3
Нужно осуществить в пределах одного скрипта несколько последовательных замен цвета, каждый раз подставляя результирующий файл выполнения команды как исходный файл для выполнения следующей команды.
То есть мне надо в in.gif заменить пять цветов:
конвертация in.gif в tmp01.gif 0 0 0 на 3 3 3
конвертация tmp01.gif в tmp02.gif 50 240 0 на 0 0 65
конвертация tmp02.gif в tmp03.gif 66 66 90 на 200 200 0
конвертация tmp03.gif в tmp04.gif 60 60 90 на 200 200 70
конвертация tmp04.gif в out.gif 100 100 100 на 0 0 0
Удаление tmp01.gif tmp02.gif tmp03.gif tmp04.gif
Количество замен цвета не всегда будет именно пять, поэтому желательно рабочий скрипт для количества замен от 2-х и более.