[FFmpeg-user] Rgbashift T value

Paul B Mahol onemda at gmail.com
Sat Dec 23 00:14:34 EET 2023


On Fri, Dec 22, 2023 at 10:55 PM emmanuel martin <ask.emmanuel at gmail.com>
wrote:

> I used this command in the terminal to have some details on how to use it :
>
> ffmpeg -h filter=rgbashift
>
> Because I couldn’t find informations I asked to Chat GPT what ..FV.....T.
> means and here is the answer :
>
> The string ..FV.....T. provides information about the capabilities and
> options of the filter. Each character in the string represents a specific
> feature or attribute of the filter. Here's the breakdown:
>
> . (dot): Placeholder for a feature that is not applicable or not available.
> F: The filter supports frame-level multithreading, meaning it can process
> multiple frames concurrently.
> V: The filter supports slice-level multithreading, which allows for
> parallel processing of different slices of a frame.
> T: The filter supports temporal multithreading, indicating that it can
> take advantage of temporal dependencies between frames.
> So, in the case of ..FV.....T., the filter supports frame-level
> multithreading (F), slice-level multithreading (V), and temporal
> multithreading (T). The dots in other positions suggest that some features
> might not be applicable or available for this specific filter.
>

This is completely wrong and typical hallucinations from that "service" I
would like not use at all - ever.

F - filtering flag
V - filter option for video
A - filter option for audio
T - option can be changed at runtime
X - exported option available for reading
R - read only option (non-writable)

Timeline and slice threading is directly mentioned in 'ffmpeg -h
filter=rgbashift' output.

For your issue, see sendcmd filter for expr sending commands, because
rgbashift does not supports direct expressions.
(And adding such support for every filter is maintenance hell, that is why
its better to move such functionality to special filter)


> > Le 22 déc. 2023 à 22:45, Paul B Mahol <onemda at gmail.com> a écrit :
> >
> > On Fri, Dec 22, 2023 at 10:43 PM emmanuel martin <ask.emmanuel at gmail.com
> <mailto:ask.emmanuel at gmail.com>>
> > wrote:
> >
> >> 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?
> >>
> >
> > Do you see anywhere in rgbashift documentation that it mentions
> > *explicitly* the _t_ parameter ?
> >
> > Thank you very much.
> >> _______________________________________________
> >> ffmpeg-user mailing list
> >> ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> >> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
> >>
> >> To unsubscribe, visit link above, or email
> >> ffmpeg-user-request at ffmpeg.org <mailto:ffmpeg-user-request at ffmpeg.org>
> with subject "unsubscribe".
> >>
> > _______________________________________________
> > ffmpeg-user mailing list
> > ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-user
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-user-request at ffmpeg.org <mailto:ffmpeg-user-request at ffmpeg.org>
> with subject "unsubscribe".
>
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-user mailing list