Aktualizováno dne 11. března 2011 - Scribus – vložení tabulky z Writeru

Linux v praxi

Různé drobnosti


Nastavení xorg.conf pro 2 nezávislé plochy

…pro karty nvidia

Článek v časopise Linux+ 7/2006 mne postrčil k tomu, abych se znovu pokusil zprovoznit nezávislý televizní výstup na své kartě, abych nemusel vždy při pouštění filmů přepisovat použitý displej v xorg.conf, a mohl při pouštění filmů navíc normálně dál pracovat.

Vysvětlili tam, že pro každý monitor je potřeba smaostatná sekce Monitor, Device, Screen, a složí se to dohromady v sekci ServerLayout

Budete potřebovat znát hodnotu BusId, kterou zjistíte příkazem lspci. Pokud na vás vyskočí to, co na mne (01:00.0 VGA compatible controller: …), bude to PCI:1:0:0, jinak si to přiměřeně upravte.

Všechno jsem tak nějak nastavil, ale ouha, nějak to nefungovalo. Chyběl jim tam totiž řádek Option "ConnectedMonitor" "DFP,TV" v každé sekci Screen

Section "Files"
    RgbPath         "/usr/share/X11/rgb"
    FontPath        "/usr/share/fonts/misc"
    FontPath        "/usr/share/fonts/75dpi"
    FontPath        "/usr/share/fonts/100dpi"
    FontPath        "/usr/share/fonts/TTF"
    FontPath        "/usr/share/fonts/Type1"
    FontPath        "/usr/share/fonts/windows"
EndSection

Section "Module"
    Load           "dbe"  	# Double buffer extension
    SubSection     "extmod"
        Option         "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection
    Load           "freetype"
    Load           "glx"
EndSection

Section "InputDevice"
    Identifier     "Keyboard1"
    Driver         "kbd"
    Option         "AutoRepeat" "500 30"
    Option         "XkbRules" "xorg"
    Option         "XkbModel" "pc102"
    Option         "XkbLayout" "cz"
EndSection

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

Section "Monitor"  #tehle monitor je mé LCD od Smasungu
    Identifier     "samsunglcd"
    HorizSync       31.5 - 82.0
    VertRefresh     40.0 - 150.0
EndSection

Section "Monitor"  #tehle monitor je má malá televizka
    Identifier     "televize"
    HorizSync       30 - 50
    VertRefresh     60
EndSection

Section "Device"   #sekce pro LCD
    BusId          "PCI:1:0:0"
    Identifier     "gt6600"
    Driver         "nvidia"
    Screen          0
    Option         "RenderAccel"  "true"
EndSection

Section "Device"   #sekce pro televizi
    BusId          "PCI:1:0:0"
    Identifier     "gt6600tv"
    Driver         "nvidia"
    Screen          1
    Option         "RenderAccel"  "true"
EndSection

Section "Screen"   #definice obrazovky LCD
    Identifier     "Screen0"
    Device         "gt6600"
    Monitor        "samsunglcd"
    Option         "NoLogo" "1"
    DefaultDepth    24
    SubSection     "Display"
        Viewport    0 0
        Depth       8
        Modes      "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       16
        Modes      "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection     "Display"
        Viewport    0 0
        Depth       24
        Modes      "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    Option         "ConnectedMonitor" "DFP,TV"
    Option         "UseDisplayDevice" "DFP"
EndSection

Section "Screen"   #definice obrazovky televize
    Identifier     "Screen1"
    Device         "gt6600tv"
    Monitor        "televize"
    Option         "NoLogo" "1"
    DefaultDepth    24
    SubSection     "Display"
        Viewport    0 0
        Depth       24
        Modes      "1024x768" "800x600" "640x480"
    EndSubSection
    Option         "TVStandard" "PAL-G"
    Option         "TVOutFormat" "SVIDEO"
    Option         "ConnectedMonitor" "DFP,TV"
    Option         "UseDisplayDevice" "TV"
EndSection

Section "ServerLayout"
    Identifier     "Simple Layout"
    Screen         0 "Screen0" 0 0
#   Screen         1 "Screen1" RightOf "Screen0"
#              - většina volí tuhle možnost - plocha na TV je vpravo
#              od plochy na displeji, myší do ní přejedete a můžete
#              normálně pracovat, pustit si tam film, atd...

    Screen         1 "Screen1" 0 0
#              - já používám tuto možnost, protože mi vadí, když si myška 
#              z displeje svévolně odcestuje jinam - plocha na TV je jakoby 
#              za plochou na displeji, takže se do ní myší nedostanete
#              a všechny aplikace si tam musíte poslat (jak, to napíšu níže)

    InputDevice    "Mouse1" "CorePointer"
    InputDevice    "Keyboard1" "CoreKeyboard"
EndSection

Po restartu X serveru by se vám vaše pracovní plocha měla ukázat na obou zařízeních. Aplikace můžeme na druhou plochu „poslat“ pomocí systémové proměnné DISPLAY. Například takto:

$DISPLAY=:0.1 xine -f -g /muj/oblibeny/film.avi

Když jsem v příkladu zmínil zrovna xine, musím doplnit, že ale zrovna xine umí poslat na druhý display jen přehrávaný film, stačí si to nastavit (parametr video_display).

xine_setup_.png

A například mplayer se dá spouštět nějak takto:

$ mplayer -fs -display :0.1 -noautosub -sub film.srt film.avi
nebo s video DVD takto:
$ mplayer -fs -display :0.1 -autosub dvd://1 -sid 1
Ovládat lze v konzoli klávesovými zkratkami.

Další změnu naleznete v programu NVIDIA X Server Settings. Máte zde nyní možnost nastavovat nezávisle parametry na obou displejích. Tato nastavení se ale po restartu X serveru ztratí, takže je vhodné přidat například do „programů po přihlášení“ v Gnome příkaz nvidia-settings -l

nvidia_settings_.jpg
Používáte browser CCBot/2.0 (http://commoncrawl.org/faq/)
„Proti blbosti i bohové bojují marně.“ Jan Werich