Here is the relevant portion of my xorg.conf:
Code:
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "TV-0"
Option "TVStandard" "HD720p"
Option "ConnectedMonitor" "TV"
SubSection "Display"
Viewport 0 0
Depth 16
Modes "720p" "1280x720"
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "720p" "1280x720"
EndSubSection
EndSection
You'll see that I have the TVStandard set, and have two modes listed. The "720p" mode makes reference to a modeline I set in the Monitor section.
Code:
Section "Monitor"
Identifier "TV-0"
VendorName "Mitsubishi"
ModelName "HD1000"
HorizSync 15.73 - 68.68
VertRefresh 50 - 75
ModeLine "720p" 73.78 1280 1312 1592 1624 720 735 742 757 +hsync +vsync
EndSection
It turns out the Nvidia driver does not accept custom modelines when connecting through the TV out. Instead, it only accepts specific modes as detailed in the driver documentation (see
Appendix H and
Appendix J--"Because these TV modes only depend on the TV encoder and the TV standard, TV modes do not go through normal mode validation. The X configuration options HorizSync and VertRefresh are not used for TV mode validation.
Additionally, the NVIDIA driver contains a hardcoded list of mode sizes that it can drive for each combination of TV encoder and TV standard. Therefore, custom modelines in your X configuration file are ignored for TVs.")
So the nvidia driver does not accept my 720p modeline, it rejects it as invalid. But it accepts my "1280x720" mode as valid, even though it is not defined. Its definition is supplied by the driver itself. Without specifying the "1280x720" mode, the driver finds no valid modes, and defaults to an 800x600 "safe mode."
Here is the relevant output of my X log with this xorg.conf:
Code:
(**) NVIDIA(0): Option "ConnectedMonitor" "TV"
(**) NVIDIA(0): Option "TVStandard" "HD720p"
(**) NVIDIA(0): Option "RenderAccel" "true"
(**) NVIDIA(0): Enabling RENDER acceleration
(**) NVIDIA(0): TV Standard string: "HD720p"
(**) NVIDIA(0): ConnectedMonitor string: "TV"
(II) NVIDIA(0): NVIDIA GPU GeForce 6200 at PCI:1:0:0
(--) NVIDIA(0): VideoRAM: 131072 kBytes
(--) NVIDIA(0): VideoBIOS: 05.44.a2.05.00
(II) NVIDIA(0): Detected AGP rate: 8X
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(--) NVIDIA(0): Connected display device(s) on GeForce 6200 at PCI:1:0:0:
(--) NVIDIA(0): NVIDIA TV Encoder (TV-0)
(--) NVIDIA(0): NVIDIA TV Encoder (TV-0): 400.0 MHz maximum pixel clock
(--) NVIDIA(0): TV encoder: NVIDIA
(II) NVIDIA(0): Assigned Display Device: TV-0
(WW) NVIDIA(0): No valid modes for "720p"; removing.
(II) NVIDIA(0): Validated modes:
(II) NVIDIA(0): "1280x720"
(II) NVIDIA(0): Virtual screen size determined to be 1280 x 720
...
(II) NVIDIA(0): Setting mode "1280x720"
Revised to add: I've considered trying a 1080i or even 1080p resolution just to see how it would look on the HD1000 (after reading some threads that suggest that it may actually "look better"), but haven't gotten around to the effort. It looks great now so why mess with success? Plus, I use my myth box to play DDR, so by providing a native resolution image I don't have to worry about scaling or deinterlacing delay introduced by driving the projector with a non-native resolution.
If anyone tries, I'd be interested to hear about the results.