[FFmpeg-user] Rgbashift T value
emmanuel martin
ask.emmanuel at gmail.com
Fri Dec 22 23:42:41 EET 2023
Hello everyone,
The rgbashift command is causing me some trouble when I refer to its documentation. Perhaps the issue stems from a misunderstanding. Here's the part that interests me:
rgbashift AVOptions:
rh <int> ..FV.....T. shift red horizontally (from -255 to 255) (default 0)
rv <int> ..FV.....T. shift red vertically (from -255 to 255) (default 0)
gh <int> ..FV.....T. shift green horizontally (from -255 to 255) (default 0)
gv <int> ..FV.....T. shift green vertically (from -255 to 255) (default 0)
bh <int> ..FV.....T. shift blue horizontally (from -255 to 255) (default 0)
bv <int> ..FV.....T. shift blue vertically (from -255 to 255) (default 0)
ah <int> ..FV.....T. shift alpha horizontally (from -255 to 255) (default 0)
av <int> ..FV.....T. shift alpha vertically (from -255 to 255) (default 0)
edge <int> ..FV.....T. set edge operation (from 0 to 1) (default smear)
smear 0 ..FV.....T.
wrap 1 ..FV.....T.
If I understand correctly, 'T' indicates that the option can be set at the video filter level and over time, meaning the value can dynamically change based on the time in a video sequence. In other words, I can change the offset value of each color channel over time.
The simple command below works perfectly:
ffmpeg -i input.mp4 -vf "rgbashift=rh=20:bh=-20" -pix_fmt yuv420p output.mp4
However, as soon as I integrate the 'T' parameter into the offset value, I get error messages. For example:
ffmpeg -i input.mp4 -vf "rgbashift=rh='t*2':bh='t*-2'" -pix_fmt yuv420p output.mp4
Error message:
Undefined constant or missing '(' in 't*2' Unable to parse option value "t*2" Error applying option 'rh' to filter 'rgbashift': Invalid argument
Do I have a misunderstanding of the documentation (ffmpeg -h filter=rgbashift) ? Or do I have a syntax problem somewhere?
Thank you very much.
More information about the ffmpeg-user
mailing list