2007年8月9日星期四

nvidia 7300GT TV-out 的配置

昨天晚上和今天早上都在搞新买显卡的电视输出。本来这个要求并不迫切,但是新买的显卡支持TV-out,忍不住,手痒。好在最后基本搞定。现在唯一的遗憾就是不能做到显示器和电视真正分离(在看TV显示的同时在显示器上干别的)。各位看官如果有什么高招,欢迎留言。
我的显卡是七彩虹的,nvidia 7300GT,因为我实在忍受不了VIA的显卡驱动,最近刚买了这个显卡(VIA的显卡驱动不支持3D,且很不稳定。)。nvidia 7300GT可以用两种方法来实现TV-out。一种是把显卡看成两个设备,一种是把显卡看成一个设备。现在分别贴到下面。其中有两条容易忽视。一个是所谓CRT-0不一定是0,有时会是CRT-1,这就在这上面吃了亏。还有一条就是如果设了虚拟桌面,在用扩展模式时因为screen变大了,我的变成2048×768了,这个参数可能会超过虚拟桌面,造成X无法启动。
看成一个设备的xorg.conf:
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
    RgbPath      "/usr/share/X11/rgb"
    ModulePath   "/usr/lib64/xorg/modules"
    FontPath     "/usr/share/fonts/misc/"
    FontPath     "/usr/share/fonts/TTF/"
    FontPath     "/usr/share/fonts/OTF"
    FontPath     "/usr/share/fonts/Type1/"
    FontPath     "/usr/share/fonts/100dpi/"
    FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
    Load  "glx"
    Load  "xtrap"
    Load  "GLcore"
    Load  "extmod"
    Load  "record"
    Load  "dbe"
    Load  "dri"
    Load  "wfb"
    Load  "freetype"
    Load  "type1"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    HorizSync    30-70
    VertRefresh    50-160
EndSection

Section "Monitor"
    Identifier   "Monitor1"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    HorizSync    30-50
    VertRefresh    60
EndSection

Section "Device"
    Identifier  "Card0"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "G70 [GeForce 7300 GT]"
    BusID       "PCI:2:0:0"
    Option        "NoLogo"
    Option        "TwinView"
#    Option "UseEdidDpi" "no"
    #Option        "TwinViewOrientation" "RightOf"
    Option        "TwinViewOrientation" "Clone"
    Option       "MetaModes"           "CRT-1: 1024x768,  TV-0: 1024x768"
    Option       "HorizSync"           "CRT-1: 30-70;  TV-0: 30-50"
    Option       "VertRefresh"         "CRT-1: 50-160;  TV-0: 60"
     Option       "ConnectedMonitor"    "CRT-1, TV-0"
    Option      "TVStandard" "PAL-D"
    Option      "TVOutFormat" "SVIDEO"
#    Option      "TVOverScan" "0.6"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        modes "1024x768" "800x600"
    #    virtual 1280 960
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

看成两个设备的xorg.conf:
#Section "ServerLayout"
#    Identifier     " X.org Configured"
#    Screen      0  "Screen0" 0 0
#    InputDevice    "Mouse0" "CorePointer"
#    InputDevice    "Keyboard0" "CoreKeyboard"
#EndSection
Section "ServerFlags"
 Option "Xinerama"  "true"
EndSection

Section "Files"
    RgbPath      "/usr/share/X11/rgb"
    ModulePath   "/usr/lib64/xorg/modules"
    FontPath     "/usr/share/fonts/misc/"
    FontPath     "/usr/share/fonts/TTF/"
    FontPath     "/usr/share/fonts/OTF"
    FontPath     "/usr/share/fonts/Type1/"
    FontPath     "/usr/share/fonts/100dpi/"
    FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
    Load  "glx"
    Load  "xtrap"
    Load  "GLcore"
    Load  "extmod"
    Load  "record"
    Load  "dbe"
    Load  "dri"
    Load  "wfb"
    Load  "freetype"
    Load  "type1"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    HorizSync    30-70
    VertRefresh    50-160
EndSection

Section "Monitor"
    Identifier   "Monitor1"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
    HorizSync    30-50
    VertRefresh    60
EndSection

Section "Device"
    Identifier  "Card0"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "G70 [GeForce 7300 GT]"
    BusID       "PCI:2:0:0"
    Option        "NoLogo"
    Option          "TwinView"
    Screen 0
EndSection

Section "Device"
    Identifier  "Card1"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "G70 [GeForce 7300 GT]"
    BusID       "PCI:2:0:0"
    Option      "TVStandard" "PAL-D"
    Option      "TVOutFormat" "SVIDEO"
    Option      "TVOverScan" "0.6"
    Option      "ConnectedMonitor" "TV" # Add this if you're having problems
    Screen 1
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        modes "1024x768" "800x600"
    #    virtual 1280 960
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "Screen"
   Device "Card1"
   Identifier "Screen1"
   Monitor "Monitor1"
   DefaultDepth 24
   SubSection "Display"
         Depth 24
         Modes "320x240_50"
   EndSubSection   
EndSection

Section "ServerLayout"
   Identifier  "Simple Layout"
   Screen 0 "Screen0"
   #Screen 1 "Screen1"
   Screen 1 "Screen1" RightOf "Screen0"
   InputDevice "Mouse0" "CorePointer"
   InputDevice "Keyboard0" "CoreKeyboard"
EndSection


没有评论: