Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Format of /dev/video or where to get MPEG TS stream?



Terry Hardie writes:
 > The /dev/vbi stuff work mostly, but if I set filters in a loop, two at a
 > time as you suggest, with at least 1 second pauses between checks, after
 > 30 or so iterations, the filters won't report any more data, even though I
 > know there's data there, and it will show up if I start the scan closer to
 > the PID with know data. I've tried it with calling VIDIOCSSHUTDOWNFILTER
 > on each pass, and without, and it doesn't seem to change. Any suggestions?
 > 
 > Also, during the scan, it's possible for the kernel to start reporting
 > "outcommand error", and the only way to get rid of it is to remove the
 > modules and reload them.

"outcommand error" indicates that the firmware is no longer responding 
to command requests of the driver. This can e.g. happen when there is 
too much data coming in for the PID filters.
There is some overflow recovery code in the firmware but I guess it does
not always work.

I donīt understand why you have at least 1 second pause between
checks. This way you are actually asking for buffer overflows.
If you always expect data you should use an extra thread which always
waits for data using poll() or select().
Keep in mind that the current firmware is not really written to handle
high data rates >10MBits/s. The memory allocated for buffering on 
the card is rather small.


Ralph




Home | Main Index | Thread Index