[vdr] channel-change-prediction, doable? stupid idea?

Artur Skawina art.08.09 at gmail.com
Fri Jan 23 16:23:11 CET 2009


Udo Richter wrote:
> On 21.01.2009 19:33, Gerald Dachs wrote:
>> Assumed I have 2 free Tuners and I zapp through the channels of one
>> tuner. Would it be possible to tune the 2. tuner to the same time to
>> the after next channel in change direction, so that for the next
>> channel change in the same direction it would be possible to
>> channge to the 2. tuner instead of changing the channels of
>> the 1. tuner
> 
> Channel switching delay is caused by two delays: First, the time to tune 
> and lock the new transponder, second, the time till the next compressed 
> stream starting point (I-Frame or audio syncword) is reached. This 
> second time can be up to a second by its own.
> 
> To get instant switching, you would have to also decode the second 
> stream in the background, so that the current frame is available the 
> moment it is needed. Or you can buffer the last GOP of the stream and go 
> back to that point on channel switch. You would have to ring-buffer up 
> to one complete GOP permanently in memory to keep the delay from there on.
> 
> Both things are tricky to implement, require work on the output devices, 
> and are probably not worth the effort.

Yes, the only case i think this could be useful is when the number of tuners >=
transponders/muxes and you always receive all of them. Hmm, it might actually
make sense for dvb-t (or -c) in some cases.
Anyway, back when i was using a dvb-s ff card the tuning itself seemed to be slow,
so what i did was cache some parms such as freq, srate, fec, voltage and tone in
the driver, to avoid touching the hw/firmware for those that didn't change
(the dvb api resulted in the driver always getting a new set of parms, even when 
some/most of them hadn't changed). That seemed to speed up the channel switches
a bit, but as the card was never 100% reliable and would sometimes fail to
correctly tune, i never went further with that. Now i think it was probably
the pci host that was causing the trouble, and the changes may have been fine.

artur



More information about the vdr mailing list