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 _______________________________________________ vdr mailing list email@example.com http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr