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?



Hi,

Guido Draheim wrote:
> I am currently debugging problems of `zapping` v4l viewer with the
> current dvb/cvs drivers. At the moment I do not quite understand
> the sourcecode, it seems just WRONG to me.
> 
> in drivers/av7110/av7110.c
> (a) VIDIOCGCHAN
>     here we return
>        struct video_channel dvb_chan = { 0, "DVB", 1, 3, 1, 1 };
>    where the third item (= 1) says "we have 1 tuner".

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.

> (b) the `zapping` applications does now think it should try to
>     tune the card to the last freq. (if it would be 0 then it
>     would just return on the exec path right there). First it
>     does check the current range of the tuner, and therefore
> (c) VIDIOCGTUNER
>     here we see however:
>                 /* only channel 0 has a tuner */	
>                 if(!v->tuner)
>                         return -EINVAL;
>     that looks plain wrong,
>     so I decided to patch it up as
>                 /* only channel 0 has a tuner */	
>                 if(v->tuner)
>                         return -EINVAL;
> (d) now the `zapping` app gets over this part, and tries to
>     actually...
> (e) VIDIOCSFREQ
>     which fails obviously since that ioctl values is not
>     handled anywhere, and so it fails here.
> 
> 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?


Johannes


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



Home | Main Index | Thread Index