Hello,

I'm working on a kernel driver (module) for supporting video capture and
playback PCI board with hardware MJPEG compression

( http://pcisys.net/~vleo/linuxvideo.html )

Board works by transferring data (about 100k) into a buffer and issuing
an interrupt, there are 4 buffers in a ring. Every field compressed gets
a field sequence number.

When I don't touch anything fields are not lost, but as soon as I start
touching X11 windows, I'm getting several frames dropped. Since frames
are coming at a rate of 60Hz, and there are 4 buffers, if interrupt is
not serviced within 64 msec frame would be lost.  First of all - is this
normal for Linux to have a latency over 50msec, or something else is
wrong on my system (K6,233MHZ).

Second question would be - do you think that RTLinux is the solution to
this kind of problem. Note, it's not enough to service interrupt within
64msec, I also need to transfer the data into the application that is
reading from the driver. The total rate is about 3.5Mb/sec for the least
degree of compression. One of the simple ideas that comes to mind is to
create a BIG ring of buffers elswhere, say 20-30 of them in the hope
that Linux kernel would be quick enough on the average.

Is there some code around to measure the latency of interrupts handling
in regular Linux (2.0.34), and have somebody done a reserach on that?

If RTLinux is indeed a solution to the issue of dropped frames, then it
can be a significant advantage over Windows platforms for multimedia
applications.

Would appreciate any comment on this, either here or by e-mail to
[EMAIL PROTECTED]

Thank you, Vassili Leonov
--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to