What size is the display fifo ?
Remember that if you queue n buffer before starting the display, and you are able to feed the display driver, then your fifo will always be full, and you will get a delay :


If you start by doing :

for( i = 0; i < bufcount; i++) {
        ioctl(fd,VIDIOC_QBUF, ...);
}
ioctl(fd,VIDIOC_STREAMON);

And then loop :
        select();
        ioctl(fd, VIDIOC_DQBUF,...); // dequeue buffer from display
        ... // fill buffer
        ioctl(fd, VIDIOC_QBUF..);

this buffer will be displayed after the other buffer
already present in te _driver_ input queue have been displayed.

Reduce the initial buffer count, and you may see improvements, assuming this description fits the way you are using the V4L2 driver.

Ondrej Pindroch a écrit :

Hi
I have simple loop trought which is proccessing images from CMOS sensor. Proccessing take sallmost 7ms. In front end I am skipping frames which are older than 1 frame. Still I have latency from input to outpu 120ms and some times more. I am sure that I can not spare significant amount of time in front end. That means that I have more than 2 frames latency on VPBE (I am useing PAL as output 25fps => 40ms/f) Is there some special settings to improve this timing on VPBE. I am useing V4L2. Best regards */ Ondrej Pindroch
SoftHard Technology ltd.
/*


------------------------------------------------------------------------

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to