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

Edward Hervey bilboed at gmail.com
Wed Nov 18 09:41:41 CET 2009


On Wed, 2009-11-18 at 16:24 +0800, Zhao, Halley wrote:
> But the timestamp will be mess.
> 
> You could get some frames in a short time, then idle some time, then
> another some frames.

  What thiagoss recomended is correct (you basically end up with one
thread dedicated to capture the image and the other threads doing the
extra processing).
  Timestamping is done at the source element (i.e. the timestamp will be
the moment at which the image is captured).

  If you were to give the gst-launch pipeline you're testing with we
could give you more info.


    Edward

> 
>  
> 
>  
> 
>                                    
> ______________________________________________________________________
> From:thiagossantos at gmail.com [mailto:thiagossantos at gmail.com] 
> Sent: 2009年11月18日7:19
> To: Discussion of the development of GStreamer
> Subject: Re: [gst-devel] How to control pipeline frame rate when my
> camera needs some time to get one frame data
> 
> 
>  
> 
>  
> 
> On Tue, Nov 17, 2009 at 8:11 PM, Zhao, Halley <halley.zhao at intel.com>
> wrote:
> 
> 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?
> 
> 
> You can speed it up by adding a queue right after your source element.
> It will create another thread to push data after it, the thread used
> to request a frame from the camera will quickly return to the source
> and it will request another one.
>  
> 
> 
>          
>         
>         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
>         
>         Tel: +86(21)61166476
>         
>         iNet: 8821-6476
>         
>         SSG/OTC/Moblin 3W038 Pole: F4
>         
>         
>          
>         
>         
>         
>         ------------------------------------------------------------------------------
>         Let Crystal Reports handle the reporting - Free Crystal
>         Reports 2008 30-Day
>         trial. Simplify your report design, integration and deployment
>         - and focus on
>         what you do best, core application coding. Discover what's new
>         with
>         Crystal Reports now.  http://p.sf.net/sfu/bobj-july
>         _______________________________________________
>         gstreamer-devel mailing list
>         gstreamer-devel at lists.sourceforge.net
>         https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>         
> 
> 
> 
> -- 
> Thiago Sousa Santos
> 
> 
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
> trial. Simplify your report design, integration and deployment - and focus on 
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________ gstreamer-devel mailing list gstreamer-devel at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gstreamer-devel






More information about the gstreamer-devel mailing list