When i should use drop-frame-interval?And What's the relationship between it and frame rate

1 when i should use drop-frame-interval?And What’s the relationship between it and frame rate?

2 when I set drop-frame-interval=0 . log is “**PERF:42.28(41.28)”
When I set drop-frame-interval=2,the log is “**PERF:32.07(32.28)”

There is no direct relationship between them. “drop-frame-interval” is to control the hardware decoder output frame rate Gst-nvvideo4linux2 — DeepStream DeepStream Version: 5.0 documentation, and the “PERF” log is the statistics of the whole performance of the pipeline. The whole performance of the pipeline is decided by all elements in the pipeline but not just the hardware decoder (nvv4l2decoder).

Thank you!
I set the frame rate of the camera to 20,and drop-frame-interval=4.But PERF is 5.
when I set drop-frame-interval=1,PERF=20.
Why do I lose more frames and the frame rate goes down? Shouldn’t it go up? It does less work

“drop-frame-interval=4” means when there are 4 frames come into the decoder, the decoder will output only one frame and the other 3 frames are dropped. “drop-frame-interval=1” means no frame will be dropped. Can you read the document Gst-nvvideo4linux2 — DeepStream DeepStream Version: 5.0 documentation (nvidia.com)?

Yes, the pipeline does less job but it is because there are less frames in the pipeline. The fact is that there are only 5 frames in the pipeline in every second( the other 15 frames have been dropped but not skipped). So the frame rate is right.

thank you!
I read the document ,and it said:“Interval to drop frames. For example, 5 means decoder outputs every fifth frame; 0 means no frames are dropped.”

So drop-frame-interval=0 ,drop-frame-interval=1 all means no frames are dropped?