Understanding videoencoder property min-force-key-unit-interval

min-force-key-unit-interval doc on setting it to value GST_CLOCK_TIME_NONE will cause all keyframe events to be ignored but in the code gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoencoder.c at 15c9bc4d2ad8760cc5df92614e61f94e05d0a624 · GStreamer/gstreamer · GitHub there is a check against this value.
Is there something I am not able to understand regarding this property and intended use of GST_CLOCK_TIME_NONE?

Ref - GstVideoEncoder

Not sure if I understand your question.

It’s a special value, and the code checks for that special value, what’s the problem you’re seeing?

(Even if it didn’t check for the special value it would still effectively ignore force-keyframe events for all practical purposes because the threshold time value is so big.)

If I set min-force-key-unit-interval to value GST_CLOCK_TIME_NONE, then this condition

priv->min_force_key_unit_interval != GST_CLOCK_TIME_NONE

will become false.
Hence throttled is false, hence key frames would not be throttled and they would be generated.
This check is effectively same as

priv->min_force_key_unit_interval != 0

So it should not matter if I set it to either of these values, effectively these values are same from the perspective of code. But according to doc these should behave differently.

Also even after setting it GST_CLOCK_TIME_NONE I am seeing these logs

0:00:15.405781371 e[33m931028e[00m 0xe5d8d00019f0 e[37mDEBUG  e[00m e[00m        videoencoder gstvideoencoder.c:1693:gst_video_encoder_chain:<x264enc>e[00m Forcing a key unit at running time 0:00:15.000000000
0:00:15.405791491 e[33m931028e[00m 0xe5d8d00019f0 e[36mINFO   e[00m e[00m             x264enc gstx264enc.c:2711:gst_x264_enc_encode_frame:<x264enc>e[00m Forcing key frame

Which means key frames are getting generated.
So I had to set it to very large value to prevent it but GST_CLOCK_TIME_NONE did not work.

@tpm does this explanation look good to you? Do you acknowledge that this me possible bug