Mailing List archive

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

[linux-dvb] Re: dvb/v4l: what's that with the tuners?




Johannes Stezenbach schrieb:
Hi,

I never looked at that code because I assumed it must be correct
because xawtv works with it. OTOH, zapping doesn't work for me.
If you some idea how to fix it, please let me know, or send a patch.
I think that it is okay for `zapping` to fail to tune,
it just prints error messages. The problems with `zapping`
seem more to be in the area of setting up the overlay
window - see the other mail for a (partial?) fix. With
that other patch, you should see `zapping` start to work.

what's the reason behind this setup?

If my understanding of what you say is correct, then with
  struct video_channel dvb_chan = { 0, "DVB", 0, VIDEO_VC_AUDIO,
                                    VIDEO_TYPE_TV, 1 };

zapping should recognize that there is no tuner?

I'm not sure, just digging into the things, it looks like yes,
because `zapping` uses VIDIOCGCHAN (looping over all channels)
and copies some capabilities into internal structures. Among
that we see in tveng1_get_inputs()
     ioctl(info->fd, VIDIOCGCHAN, &channel
     info->inputs[info->num_inputs].tuners = channel.tuners;
all other functions later in the text
seem to check for info->*->tuners and shortcircuit
into a return-from-function instead of trying to call
any tuner ioctl, e.g. in tveng1_tune_input() we see
  /* Check that there are tuners in the current input */
  if (info->inputs[info->cur_input].tuners == 0)
    return 0; /* Success (we shouldn't be tuning, anyway) */
Whenever there is a tuners != 0 then it starts trying
some tune ioctl, prints errno descriptions as a result,
and returns an error code to the caller.
    Again, I am not sure whether the caller does just go
on, and while putting a message-box on the screen, it still
tries to put a video overlay window. Fixing the above
problems (as described) did not led to `zapping` to
start working. The fix for VIDIOCGWIN was more succesful.

cheers,
-- guido                                  http://google.de/search?q=guidod
GCS/E/S/P C++/++++$ ULHS L++w- N++@ d(+-) s+a- r+@>+++ y++ 5++X- (geekcode)



--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index