On Tuesday 22 Jul 2008, Thomas Hilber wrote:
solution
graphics cards basically are not designed for variable frame rates. Once you have setup their timing you are not provided any means like registers to synchronize the frame rate with external timers. But that's exactly what's needed for signal output to stay in sync with the frame rate provided by xine-lib or other software decoders.
To extend/reduce the overall time between vertical retrace I first dynamically added/removed a few scanlines to the modeline but with bad results. By doing so the picture was visibly jumping on the TV set.
{snippage}
Interesting...
I looked at this sort of thing a few years back and came to the conclusion that the only cards that could be convinced to sync at such low rates, i.e. 50 Hz for PAL, were the Matrox G400, G450, etc. Whenever I tried setting modelines with any other cards, I never got any output or an error when starting X.
I take it that more modern cards are a lot more flexible in this respect!
I'm currently using a G450 with softdevice connected to a CRT TV and it works pretty well most of the time with the odd flicker due to dodgy sync every now and than.
Using hardware to do the deinterlacing is _definitely_ the way forward, especially for CRT. (Not sure whether LCDs display an interlaced streame "properly" or whether they try to interpolate somehow and refresh the whole screen at once. I'm not buying one until 1. terrestrial is available in the UK, 2. my current TV dies, 3. there is a solution like this which utilises older hardware!).
Looks interesting...
Cheers,
Laz