Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: Help on use of DMX_OUT_TAP (II)
On Tue, 2003-06-03 at 10:15, Tim Wiffen wrote:
> I am not convinced that the poll method is better. When I switched from
> GCC 2.95 to GCC 3.2 I found that dvbtune stopped being able to read PSI
> tables.
I had some discussion with Dave Chapman the author of dvbtune about
this.
Basically, the code misuses the poll system call (Johannes alludes to
this in his reply).
I've got a half-baked patch to the code if anyone wants it. I probably
out to give it do Dave to put back into the master source code.
In a nutshell I found two related problems.
Firstly, the timeout is too short. The 2 seconds given isn't long enough
for my local transmitter which sends the information every 10 seconds.
Allowing for a little error I replaced the 2000 with 12000 to allow 12
seconds which should give it two attempts with a little space for
overlap.
More serious is the use of the return code.
To summarise the manual page Johannes referred to, poll returns -1 on an
ERROR, 0 on a TIMEOUT and a positive value for the number of file
descriptors that actually worked. So the correct test should be
something like poll (&ufd, 1, 12000) <= 0.
Even that isn't perfect as it assumes that all the data is available at
once (which, I admit, it does seem to be).
It would appear to me that what we need is a nice user-mode interface to
the DVB API. There seems to be a serious attempt at this with dvbsak's
libdvbsak. However, I can't seem to find any documentation on it which
is a pity as it seems an excellent starting point.
Comments anyone?
Jim.
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index