[Savage40] Xv and interlaced modelines

William Uther willu.mailingLists at cse.unsw.edu.au
Sat Jan 1 04:44:35 PST 2005


Hi all,

   I'm building myself a digital video recorder using Linux and MythTV 
(http://www.mythtv.org/).  I'm having some interesting times getting a 
decent video signal into my TV.  My current battle is with the Savage 
driver, Xv and interlaced modelines.  Pascal Sclafer's recent post was 
quite helpful in confirming that it was the interlacing that was 
disabling Xv.  I'm wondering if it is possible to fix this... but I'm 
new to X, Xv, interlacing etc.  It's a wonderful learning curve :)

   Anyway, on with the story...  I'm getting video into my box as 
720x576 at 50Hz interlaced 16:9 aspect ratio MPEG2 (no, the pixels are not 
square).  I want the video to go out from my box as 720x576 at 50Hz 
interlaced 4:3 aspect ratio signal (PAL timings, and still without 
square pixels).  I'm using a cheap ASUS P4VP-MX motherboard with a 
built-in S3 video chipset and VGA connector.  I have a VGA->SCART cable 
to connect the computer to the TV ( 
http://www.nexusuk.org/projects/vga2scart/index.php ).

   To change the aspect ratio from 16:9 to 4:3, I need to either stretch 
the video horizontally (and so lose the sides of the image) or stretch 
(shrink) the video vertically (letterboxing the video with black 
stripes).  Ideally I'd like to be able to switch between these two 
modes dynamically.

   If I connect a normal, non-interlaced, computer monitor then Xv is 
enabled, and Myth is quite happy stretching the image as required.  
Unfortunately this leaves ugly interlacing effects.  None of the myth 
de-interlacing algorithms is as good as I'd like.

   It seems to me that the horizontal stretching shouldn't affect the 
interlacing at all (assuming no internal driver/chipset weirdness 
(which is why I'm asking here)).  That's one of the two modes.

   Vertical stretching is a little stranger, but I would have thought 
that you could just stretch the two frames individually - stretch the 
odd and even lines separately.  That would be my first thought anyway.

   Before I started digging into the driver code to try and make this 
happen, I thought I ask here for advice.  Am I on the right track?  Is 
this likely to be easy or hard?

   BTW, I'm currently using the Debian Sarge XFree86 4.3 savage driver 
(version 1.1.27t).  Is this even the right place to be asking?  Has 
this already been fixed?

Thanks for any help,

Will           :-}

--
Dr William Uther                            National ICT Australia
Phone: +61 2 9385 6357             School of Computer Science and 
Engineering
Email: willu at cse.unsw.edu.au             University of New South Wales
Web: http://www.cse.unsw.edu.au/~willu/        Sydney, Australia



More information about the Savage40 mailing list