Re: Optimum Display Resolution (to CRT Television over S-Video)



M wrote:

I playback recorded Tv to a standard CRT television (as the
secondary display) over an S-Video cable from the Inno3d
Graphics card.

What is the best display resolution setting for the CRT
television for best picture quality of a DVB-T broadcast?
currently the graphics card for this display is configured
for "I/PAL" and the resolution is set 1024x768 (the other
options are 960/600 or 800x600)?

The desktop resolution does not _need_ to have anything to do with the "tv out" resolution - and in a decent implementation, it doesn't. For example, when playing back full-screen video, the driver could grab the overlay surface video data and process it separately for tv output in its native resolution, without bothering with the desktop (and its resolution) at all. But the implementation details are ultimately up to the manufacturer of the display card and whoever wrote the drivers for it. The problem is that the manufacturers usually don't tell anything useful about these kind of things, trying to make them seem "easier" by hiding them from the view, or by "branding" them with silly names.

But to answer your question (although this probably won't help you), the optimum resolution for a DVB framebuffer is 720×576. No scaling or deinterlacing should be applied - or allowed. The pixels should be output with a 13.5 MHz pixel clock, and with 864 clocks per scanline. The hsync and vsync timings should operate in an interlaced fashion, generating a scanning raster that has 15625 scanlines and 50 interlaced fields per second (each comprising of 312.5 scanlines.) That's pretty much it. (Whatever processing or scaling will be applied to this picture data when it is displayed in a window on a desktop should not concern the "tv out" output at all, in a decent implementation.)

In more detail, the correct output mode would be something similar as defined by the following modeline:

ModeLine "720x576@25i" 13.5 720 732 795 864 576 581 586 625 \
interlace -hsync -vsync

(See here for a more thorough explanation on modelines:
<http://en.tldp.org/HOWTO/XFree86-Video-Timings-HOWTO/>)

But while Linux would perhaps be able to handle things in a bit more graceful way, the Windows drivers almost certainly won't let you get down to any dirty details like that. Instead, if the correct kind of output mode is implemented at all, the manufacturer will probably call it with a silly name - such as SuperMaxOverdriveMovieView(TM) - and even if you use that special mode, it is likely that there will still be problems with interlacing, or with a pixel clock that is slightly off and non-standard, or with odd scaling/clipping of colour values, or whatever - so you're not going to get exactly the same kind of pristine and problem-free interlaced output as a standard Freeview box or a DVD player would provide. (There are countless ways how someone who writes drivers for these cards could mess things up.)

(OK, perhaps I'm being a bit overly pessimistic here - and I haven't really sampled the recent cards or drivers - but I've yet to see a "tv out" driver implementation on Windows that would be on par with simple consumer electronics devices, such as DVD players and DVB set-top boxes, that play back standard 13.5 MHz ITU-R BT.601 video. There always seems to be _something_ wrong with the "tv out" picture if you care to do some tests and comparisons against a "proper" video device.)

--
znark

.