[vdr] [PATCH] RGB/PAL over VGA at variable frame rate

Jouni Karvo Jouni.Karvo at iki.fi
Mon Aug 11 18:40:15 CEST 2008


hi,

with NVIDIA driver 169 and 173 at least, this does not yet work:

Thomas Hilber kirjoitti:
>
> I just use one big hammer instead:)
>
> Option "UseEDID" "FALSE"
>
> That works (mostly).
>   

And the reason is easily read from the driver's README:

    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.

Setting TV format to PAL-B results in the following modeline (with
prefedined 720x576):

DISPLAY=:0.0 xvidtune -show
"720x576"      31.50    720  760  840  880    576  585  588  597 -hsync
-vsync

and PAL-G:
DISPLAY=:0.0 xvidtune -show
"720x576"      31.50    720  760  840  880    576  585  588  597 -hsync
-vsync

(does not change at all...)

I have no idea on whether this is 50Hz or 60Hz - I guess not interlaced
at least.

So the question is if you have used VGA instead of TVout, or tricked the
driver somehow to respect your own modelines...

I add the relevant part of Xorg.0.log, so you can see what the modelines
available are:

(**) NVIDIA(0): Ignoring EDIDs
(II) NVIDIA(0): Support for GLX with the Damage and Composite X
extensions is
(II) NVIDIA(0):     enabled.
(II) NVIDIA(0): NVIDIA GPU GeForce FX 5200 (NV34) at PCI:1:0:0 (GPU-0)
(--) NVIDIA(0): Memory: 131072 kBytes
(II) NVIDIA(0): GPU RAM Type: DDR1
(--) NVIDIA(0): VideoBIOS: 04.34.20.87.00
(--) NVIDIA(0): Found 2 CRTCs on board
(II) NVIDIA(0): Supported display device(s): CRT-0, CRT-1, DFP-0, TV-0
(II) NVIDIA(0): Bus detected as AGP
(II) NVIDIA(0): Detected AGP rate: 8X
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(II) NVIDIA(0):
(II) NVIDIA(0): Mode timing constraints for  : GeForce FX 5200
(II) NVIDIA(0): Maximum mode timing values   :
(II) NVIDIA(0):     Horizontal Visible Width : 8192
(II) NVIDIA(0):     Horizontal Blank Start   : 8192
(II) NVIDIA(0):     Horizontal Blank Width   : 4096
(II) NVIDIA(0):     Horizontal Sync Start    : 8184
(II) NVIDIA(0):     Horizontal Sync Width    : 504
(II) NVIDIA(0):     Horizontal Total Width   : 8224
(II) NVIDIA(0):     Vertical Visible Height  : 8192
(II) NVIDIA(0):     Vertical Blank Start     : 8192
(II) NVIDIA(0):     Vertical Blank Width     : 256
(II) NVIDIA(0):     Veritcal Sync Start      : 8191
(II) NVIDIA(0):     Vertical Sync Width      : 15
(II) NVIDIA(0):     Vertical Total Height    : 8193
(II) NVIDIA(0):
(II) NVIDIA(0): Minimum mode timing values   :
(II) NVIDIA(0):     Horizontal Total Width   : 40
(II) NVIDIA(0):     Vertical Total Height    : 2
(II) NVIDIA(0):
(II) NVIDIA(0): Mode timing alignment        :
(II) NVIDIA(0):     Horizontal Visible Width : multiples of 8
(II) NVIDIA(0):     Horizontal Blank Start   : multiples of 8
(II) NVIDIA(0):     Horizontal Blank Width   : multiples of 8
(II) NVIDIA(0):     Horizontal Sync Start    : multiples of 8
(II) NVIDIA(0):     Horizontal Sync Width    : multiples of 8
(II) NVIDIA(0):     Horizontal Total Width   : multiples of 8
(II) NVIDIA(0):
(--) NVIDIA(0): Connected display device(s) on GeForce FX 5200 at PCI:1:0:0:
(--) NVIDIA(0):     NVIDIA TV Encoder (TV-0)
(--) NVIDIA(0): NVIDIA TV Encoder (TV-0): 350.0 MHz maximum pixel clock
(--) NVIDIA(0): TV encoder: NVIDIA
(II) NVIDIA(0): TV modes supported by this encoder:
(II) NVIDIA(0):   1024x768; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
(II) NVIDIA(0):     PAL-N, PAL-NC
(II) NVIDIA(0):   800x600; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0):   720x576; Standards: PAL-BDGHI, PAL-N, PAL-NC
(II) NVIDIA(0):   720x480; Standards: NTSC-M, NTSC-J, PAL-M
(II) NVIDIA(0):   640x480; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0):   640x400; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0):   400x300; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0):   320x240; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0):   320x200; Standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI,
PAL-N,
(II) NVIDIA(0):     PAL-NC
(II) NVIDIA(0): Frequency information for NVIDIA TV Encoder (TV-0):
(II) NVIDIA(0):   HorizSync   : 15.000-16.000 kHz
(II) NVIDIA(0):   VertRefresh : 43.000-72.000 Hz
(II) NVIDIA(0):     (HorizSync from HorizSync in X Config Monitor section)
(II) NVIDIA(0):     (VertRefresh from Conservative Defaults)
(II) NVIDIA(0): Note that the HorizSync and VertRefresh frequency ranges are
(II) NVIDIA(0):     ignored for TV Display Devices; modetimings for TVs will
(II) NVIDIA(0):     be selected based on the capabilities of the NVIDIA TV
(II) NVIDIA(0):     encoder.
(II) NVIDIA(0):
(II) NVIDIA(0): --- Modes in ModePool for NVIDIA TV Encoder (TV-0) ---
(II) NVIDIA(0): "nvidia-auto-select" : 1024 x 768; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "1024x768"           : 1024 x 768; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "800x600"            : 800 x 600; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "720x576"            : 720 x 576; for use with TV
standards: PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA Predefined)
(II) NVIDIA(0): "640x480"            : 640 x 480; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "640x400"            : 640 x 400; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "400x300"            : 400 x 300; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "320x240"            : 320 x 240; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): "320x200"            : 320 x 200; for use with TV
standards: NTSC-M, NTSC-J, PAL-M, PAL-BDGHI, PAL-N, PAL-NC (from: NVIDIA
Predefined)
(II) NVIDIA(0): --- End of ModePool for NVIDIA TV Encoder (TV-0): ---
(II) NVIDIA(0):
(II) NVIDIA(0): Assigned Display Device: TV-0
(II) NVIDIA(0): Requested modes:
(II) NVIDIA(0):     "720x576PAL"
(II) NVIDIA(0):     "720x576 at 50i"
(II) NVIDIA(0):     "720x576i"
(II) NVIDIA(0):     "720x576"
(WW) NVIDIA(0): No valid modes for "720x576PAL"; removing.
(WW) NVIDIA(0): No valid modes for "720x576 at 50i"; removing.
(WW) NVIDIA(0): No valid modes for "720x576i"; removing.
(II) NVIDIA(0): Validated modes:
(II) NVIDIA(0): MetaMode "720x576":
(II) NVIDIA(0):     Bounding Box: [0, 0, 720, 576]
(II) NVIDIA(0):     NVIDIA TV Encoder (TV-0): "720x576"
(II) NVIDIA(0):         Size          : 720 x 576
(II) NVIDIA(0):         Offset        : +0 +0
(II) NVIDIA(0):         Panning Domain: @ 720 x 576
(II) NVIDIA(0):         Position      : [0, 0, 720, 576]
(II) NVIDIA(0): Virtual screen size determined to be 720 x 576

It seems that NVIDIA also supports HD576i "TVStandard", but I don't know
what to put on the "Modes"-line for that.  At least 720x576 fails.

yours,
       Jouni




More information about the vdr mailing list