[gst-devel] How to control pipeline frame rate when my camera needs some time to get one frame data

Zhao, Halley halley.zhao at intel.com
Wed Nov 18 00:11:52 CET 2009


Hi all:
My camera needs ~20ms to get one frame of data, and a video sink in the pipeline needs ~4ms to render it.
But when I set pipeline fps to 35, I only got 20 fps (calculate by GST CLOCK). CPU is not busy at this time, only 60%.

I guess the reason is following:
When we got nth frame at time 0, gst framework schedule to get next frame after 30ms (1000/35), and when the camera src element got scheduled to create one frame, it needs 20ms to get the data.
Then the time between n frame and n+1 frame is 30+20=50ms, so I just got 20 fps.
Is my assumption right?
If yes, is there any way to adjust it?

I had though to create another thread inside camera source, and prepare the frame data in a buffer before it is schedule.
However, I think it is hack, and make timestamp differ. I think it's better settled inside gst framework.


ZHAO, Halley (Aihua)
Email: halley.zhao at intel.com<BLOCKED::mailto:aihua.zhao at intel.com>
Tel: +86(21)61166476
iNet: 8821-6476
SSG/OTC/Moblin 3W038 Pole: F4

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20091118/dfeffbc8/attachment.htm>


More information about the gstreamer-devel mailing list