hue (2) - saturation

Watch on youtube.com
doc

https://ffmpeg.org/ffmpeg-filters.html#hue

Specify the saturation in the [-10,10] range

hue=s=-10

00:00:00
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-10' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-9

00:00:01
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-9' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-8

00:00:03
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-8' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-7

00:00:04
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-7' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-6

00:00:06
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-6' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-5

00:00:07
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-5' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-4

00:00:09
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-4' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-3

00:00:10
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-3' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-2

00:00:12
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-2' \
  -an "${pref}_${ifnb}.mp4"

hue=s=-1

00:00:13
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=-1' \
  -an "${pref}_${ifnb}.mp4"

hue=s=0

00:00:14
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=0' \
  -an "${pref}_${ifnb}.mp4"

hue=s=1

00:00:16
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=1' \
  -an "${pref}_${ifnb}.mp4"

hue=s=2

00:00:17
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=2' \
  -an "${pref}_${ifnb}.mp4"

hue=s=3

00:00:19
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=3' \
  -an "${pref}_${ifnb}.mp4"

hue=s=4

00:00:20
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=4' \
  -an "${pref}_${ifnb}.mp4"

hue=s=5

00:00:22
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=5' \
  -an "${pref}_${ifnb}.mp4"

hue=s=6

00:00:23
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=6' \
  -an "${pref}_${ifnb}.mp4"

hue=s=7

00:00:24
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=7' \
  -an "${pref}_${ifnb}.mp4"

hue=s=8

00:00:26
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=8' \
  -an "${pref}_${ifnb}.mp4"

hue=s=9

00:00:27
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=9' \
  -an "${pref}_${ifnb}.mp4"

hue=s=10

00:00:29
#! /bin/sh
ifn="Pexels_2880_2877_fast.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=10' \
  -an "${pref}_${ifnb}.mp4"

Using expression

hue=s=(-10+t)

In this example, since “Pexels_2880_2877.mp4” is a video of 20 seconds, it instructs to change by 1 per second.

00:00:30
#! /bin/sh
ifn="Pexels_2880_2877.mp4"
ifnb="`basename \"${ifn}\" .mp4`"
pref="`basename $0 .sh`"

ffmpeg -y -i "${ifn}" -vf 'hue=s=(-10+t)' \
  -an "${pref}_${ifnb}.mp4"