[FFmpeg-user] Why does the 'detelecine' filter exist?

Mark Filipak markfilipak.imdb at gmail.com
Thu May 29 21:35:34 EEST 2025


On 29/05/2025 13.38, Carl Zwanzig wrote:
> On 5/29/2025 9:40 AM, Mark Filipak wrote:
>> I can't "make patches". I'm not a 'C' programmer.
> 
> HAVE YOU EVEN LOOKED AT THE DOC SOURCE???????

How can I?

> Much of the doc is in textinfo format, not in c. but since apparently you haven't looked, you might 
> not know that. Try reading 
> https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/refs/heads/master:/doc/filters.texi

"
  117 A filtergraph has a textual representation, which is recognized by the
  118 @option{-filter}/@option{-vf}/@option{-af} and
  119 @option{-filter_complex} options in @command{ffmpeg} and
  120 @option{-vf}/@option{-af} in @command{ffplay}, and by the
  121 @code{avfilter_graph_parse_ptr()} function defined in
  122 @file{libavfilter/avfilter.h}.
"

That is not English. That is not for users like me.

> And even without knowing c but having some/any programming experience, this should be reasonably 
> comprehensible--
> 
> static const AVOption chorus_options[] = {
>       { "in_gain",  "set input gain",  OFFSET(in_gain), AV_OPT_TYPE_FLOAT,  {.dbl=.4}, 0, 1, A },
>       { "out_gain", "set output gain", OFFSET(out_gain), AV_OPT_TYPE_FLOAT,  {.dbl=.4}, 0, 1, A },
>       { "delays",   "set delays",      OFFSET(delays_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, A },
>       { "decays",   "set decays",      OFFSET(decays_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, A },
>       { "speeds",   "set speeds",      OFFSET(speeds_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, A },
>       { "depths",   "set depths",      OFFSET(depths_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, A },
>       { NULL }
> };
> (https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/refs/heads/master:/libavfilter/af_chorus.c)

Thank you for taking the time to ask. Answer: I have not a clue what that means. It's jibberish to 
me. I have mostly written assembly language. Oh, I know the table above is called a "C struct" (I 
think), but that's all I know. It's like trying to 'read' JSON that's been obfuscated. It's not English.

> Sure, might have to find how AVOption is defined, but it's pretty clear what "in_gain" does and a 
> rough guess suggests the default value is .4 .

If you say so.

> Make an effort. (And really, c isn't that difficult to read.)

So they -- 'C' codesmiths -- say.

There's an ocean between us, and I'm not a navigator.



More information about the ffmpeg-user mailing list