Uwaga! Znajdujesz sie na starej wersji portalu, jego nowa odslona dostepna jest pod adresem dug.net.pl.

Linux FAQ
; TOP 10 FAQ ;
  1. Montowanie partycji FAT i NTFS
  2. Szybka instalacja Javy
  3. Kompilacja jadra
  4. polskie znki w konsoli locales
  5. Bardzo szybka instalacja flasha
  6. przekierowanie adresu zewnetrznego w lan
  7. Polskie fonty w KDE
  8. Samba - LDAP - Debian
  9. mplayer napisy pod filmem
  10. zablokowanie internetu + przekierowanie
  • Media
  • Oprogramowanie
  • Sieć
  • Skrypty
  • Sprzęt
  • System
  • X windows

  • wyszukiwarka

    tematopistresc

    zaloguj sie


    TV-OUT (NVIDIA)
    » 2006-09-21 16:08:58 » dodal: jaccki »
    » czytan: 9556 » dzial: Sprzęt »

    Trzy sposoby na uruchomienie TV-OUT pod linuksem

    Troche sie naszukalem zanim ostatecznie skonfigurowalem wyjscie tv, a poniewaz pamiec ulotna jest postanowilem gdzies zgromadzone rzeczy zapisac. Stad ten poradnik ;) Mam nadzieje, ze komus sie przyda.
    Nie jestem informatykiem, wiec pisze tak jak ja to rozumiem, byc moze niekiedy blednie. Poza tym caly ten poradnik jest wlasciwie tlumaczeniem innych znalezionych w sieci, do ktorych postaralem sie podawac przynajmniej linki.
    Nastepna rzecz jest taka, ze sprawa dotyczy kart nvidii i to z zainstalowanymi poprawnie sterami producenta!. Jak zrobic, by dzialalo z ati tego nie wiem ale podejrzewam, ze chociaz w czesci moze byc to podobne.

    Moja konfiguracja:
    - Debian (etch)
    - jajo dystrybucyjne 2.6.16-2-k7
    - karta GF FX5200 (S-VIDEO)
    - sterowniki karty 1.0-8762
    - Xorg 7.0
    - monitor Philips 107P50
    - telewizor: Sony Trinitron


    A teraz do rzeczy. Istnieje kilka sposobow na uzywanie wyjscia tv-out. Ponizej przedstawiam te ktore znalazlem. Wiem, ze istnieje tez nvtv (jest nawet w repo debiana) ale poniewaz nie dziala on ze wszystkimi kartami (takze z moja) pomijam go bez zalu ;)


    |=============== [ SPOSOB PIERWSZY - Dwa ekrany ] ===============|


    Linki:
    http://ubuntuforums.org/showthread.php?t=98456

    [1.] Robimy kopie bezpieczenstwa pliku konfiguracyjnego xorg.conf
    # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.kopia

    Oznaczenia znakow przed poleceniami:
    "$" znaczy, ze polecenie wklepujemy jako zwykly uzyszkodnik
    "#" oznacza, ze polecenie wpisujemy jako root (in. administrator, super user). W tryb ten przechodzimy wpisujac:
    su [ENTER]

    i podajac haslo root'a.

    Polecenia wpisuje sie w konsoli ;)

    [2.] Otwieramy do edycji plik xorg.conf
    # mcedit /etc/X11/xorg.conf

    lub dla kde
    # kedit /etc/X11/xorg.conf

    lub dla gnome'a
    # gedit /etc/X11/xorg.conf

    Jesli pojawi sie:
    Xlib: connection to ":0.0" refused by server
    Xlib: No protocol specified
    kedit: cannot connect to X server :0.0

    musimy zezwolic root'owi na dostep do iksow:
    $ xhost +

    pamietajac, by po wykonaniu polecen z powrotem wstukac:
    $ xhost -

    [3.] Znajdujemy sekcje "Monitor" wygladajaca mniej wiecej tak:
    Section "Monitor"
    ### Comment all HorizSync and VertSync values to use DDC:
    Identifier "Monitor0"
    VendorName "PHL"
    ModelName "PHILIPS 107P5"
    HorizSync 30.0 - 97.0
    VertRefresh 50.0 - 160.0
    Option "DPMS"
    EndSection

    i zmieniamy ja by wygladala mniej wiecej tak:
    Section "Monitor"
    Identifier "Monitor[0]" #CRT
    VendorName "PHL"
    ModelName "PHILIPS 107P5"
    HorizSync 30.0-97 0
    VertRefresh 50.0-160.0
    Option "DPMS"
    EndSection

    Czyli zmieniamy Identifier na "Monitor[0]" i ewentualnie dopisujemy HorizSync i VertRefresh jesli ich nie ma. Parametry VendorName i ModelName nie maja wiekszego znaczenia wiec jesli ich nie mamy nie nalezy sie przejmowac (dotyczy to takze dalszej czesci poradnika;).
    Jesli wartosci HorizSync i VertRefresh sa juz podane zostawiamy je bez zmian. W przeciwnym przypadku wartosci te nalezy podac samemu. Do ich odnalezienia wykorzystujemy instrukcje obslugi monitora, strone producenta lub Pana google'a. HorizSync to przedzial odswiezania poziomego, a VertRefresh pionowego.

    UWAGA! Wpisanie blednych wartosci HorizSync i VertRefresh moze spowodowac uszkodzenie monitora.

    [4.] Dodajemy nasz telewizor jako drugi monitor, czyli ponizej wyedytowanej wczesniej sekcji "Monitor" dodajemy kolejna (po wyrazeniu "EndSection"):
    Section "Monitor" 
    Identifier "Monitor[1]" #TV
    HorizSync 30-50
    VertRefresh 60
    EndSection

    Jesli chcemy mozemy wyedytowac wartosci HorizSync i VertRefresh ale podane wyzej powinny dzialac z wiekszoscia telewizorow.

    [5.] Przechodzimy do sekcji "Device" i zmieniamy wartosc Identifier na "Device[0]" oraz dodajemy parametr "Screen 0"

    U mnie przed zmianami bylo:
    Section "Device"
    Identifier "Card0"
    Driver "nvidia"
    VendorName "nVidia Corporation"
    BoardName "NV34 [GeForce FX 5200]"
    EndSection

    a po:
    Section "Device"
    Identifier "Device[0]"
    Driver "nvidia"
    VendorName "nVidia Corporation"
    BoardName "NV34 [GeForce FX 5200]"
    BusID "PCI:2:0:0"
    Screen 0
    EndSection

    Parametr BusID nie jest konieczny w przypadku jednej karty graficznej ale jesli chcemy go podac to odpowiednia wartosc znajdujemy wydajac polecenie:
    $ lspci

    [6.] Dodajemy nasze TV-OUT jako kolejna sekcje ponizej wyedytowanej wczesniej:
    Section "Device" 
    Driver "nvidia"
    Identifier "Device[1]"
    Screen 1
    Option "TVOutFormat" "SVIDEO" #or COMPOSITE etc
    Option "TVStandard" "PAL-G" #or NTSC etc
    Option "ConnectedMonitor" "Monitor[1]"
    BusID "PCI:2:0:0" #adjust using 'lspci' or cat /proc/pci
    EndSection

    Jesli nasze wyjscie TV-OUT to COMPOSITE to wpisujemy to zamiast SVIDEO.
    Tak jak poprzednio mozemy dodac BusID jesli chcemy.

    [7.] Przechodzimy do sekcji "Screen", która powinna wyglądać mniej więcej tak:
    Section "Screen"
    Identifier "Default Screen"
    Device "Card0"
    Monitor "Monitor0"
    DefaultDepth 24
    SubSection "Display"
    Depth 1
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 4
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 8
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 15
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 16
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 24
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    EndSection

    Nas interesuja tylko parametry: Identifier, Monitor oraz Screen, ktore zmieniamy w nastepujacy sposob:
    Section "Screen"
    Identifier "Screen[0]"
    Device "Device[0]"
    Monitor "Monitor[0]"
    (...reszta pozostaje bez zmian)
    EndSection

    [8.] Ponizej wyedytowanej w punkcie 7 sekcji dodajemy nowa:
    Section "Screen" 
    Device "Device[1]"
    Identifier "Screen[1]"
    Monitor "Monitor[1]"
    DefaultDepth 24
    SubSection "Display"
    Depth 24
    Modes "1024x768_60"
    EndSubSection
    EndSection

    Jesli nasz telewizor nie obsluguje czestotliwosci odswiezania 60Hz zmieniamy wpis "Modes "1024x768_60"" na "Modes "1024x768_50""

    Jesli wszystko zrobilismy dobrze calosc (modyfikowana przez nas) powinna wygladac mniej wiecej tak:
    Section "Monitor"
    Identifier "Monitor[0]" #CRT
    VendorName "PHL"
    ModelName "PHILIPS 107P5"
    HorizSync 30.0-97 0
    VertRefresh 50.0-160.0
    Option "DPMS"
    EndSection

    Section "Monitor"
    Identifier "Monitor[1]" #TV
    HorizSync 30-50
    VertRefresh 60
    EndSection

    Section "Device"
    Identifier "Device[0]"
    Driver "nvidia"
    VendorName "nVidia Corporation"
    BoardName "NV34 [GeForce FX 5200]"
    BusID "PCI:2:0:0"
    Screen 0
    EndSection

    Section "Device"
    Driver "nvidia"
    Identifier "Device[1]"
    Screen 1
    Option "TVOutFormat" "SVIDEO" #or COMPOSITE etc
    Option "TVStandard" "PAL-G" #or NTSC etc
    Option "ConnectedMonitor" "Monitor[1]"
    BusID "PCI:2:0:0" #adjust using 'lspci' or cat /proc/pci
    EndSection

    Section "Screen"
    Identifier "Screen[0]"
    Device "Device[0]"
    Monitor "Monitor[0]"
    DefaultDepth 24
    SubSection "Display"
    Depth 1
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 4
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 8
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 15
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 16
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 24
    Modes "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
    EndSection

    Section "Screen"
    Device "Device[1]"
    Identifier "Screen[1]"
    Monitor "Monitor[1]"
    DefaultDepth 24
    SubSection "Display"
    Depth 24
    Modes "1024x768_60"
    EndSubSection
    EndSection

    [9.] Kolejna rzecza jakiej szukamy w pliku xorg.conf jest sekcja "ServerLayout" wygladajaca mniej wiecej tak:
    Section "ServerLayout"
    Identifier "Default Layout"
    Screen "Default Screen" 0 0
    InputDevice "Generic Keyboard"
    InputDevice "Configured Mouse"
    EndSection

    Zmieniamy ja, by wygladala tak:
    Section "ServerLayout" 
    Identifier "Simple Layout"
    Screen 0 "Screen[0]"
    Screen 1 "Screen[1]" RightOf "Screen[0]"
    InputDevice "Configured Mouse" "CorePointer"
    InputDevice "Generic Keyboard" "CoreKeyboard"
    EndSection

    Przy czym wyrazenia(w moim przypadku) "Configured Mouse" i "Generic Keyboard" bierzemy z wyrazen stojacych przy parametrze Identifier w sekcjach "InputDevice", czyli stad:
    Section "InputDevice"
    Identifier "Generic Keyboard"
    Driver "kbd"
    Option "CoreKeyboard"
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc105"
    Option "XkbLayout" "pl"
    EndSection

    Section "InputDevice"
    Identifier "Configured Mouse"
    Driver "mouse"
    Option "CorePointer"
    Option "Device" "/dev/psaux"
    Option "Protocol" "ExplorerPS/2"
    Option "Emulate3Buttons" "true"
    EndSection

    Poza tym zamiast RightOf mozemy wpisac LeftOf jesli telewzior stoi po lewej stronie monitora. Mozna takze wpisac Above lub Below.

    [10.] Zapisujemy nasz xorg.config. Upewniamy sie, ze wszystko jest podlaczone (kabel podlacza sie przy wylaczonym sprzecie) i uruchamiamy ponownie komputer (ewentualnie restartujemy iksy wciskajac CTRL-ALT-BACKSPACE). Po zalogowaniu sie powinnismy zobaczyc na ekranie telewizora nasz drugi Desktop. Nie jest on klonem tego co mamy na monitorze - ma wlasna rozdzielczosc i mozna go uzywac niezaleznie od pierwszego, np. ogladajac film na telewizorze i serfujac po sieci lub piszac prace w edytorze na naszym monitorze. Przejscie miedzy ekranem telewizora i monitora odbywa sie za pomoca przesuniecia kursora myszy daleko w strone ktora wybralismy wczesniej (jesli zostawilismy RightOf w xorg.conf bedzie to strona prawa, jesli LeftOf - lewa, itd.)

    [11.] Uruchamianie filmow

    Film mozemy uruchomic wybierajac na telewizorze odpowiedni program, tzn. przesuwajac mysz na desktop telewizora i wybierajac z jego menu np. gmplayer'a.

    Mozemy tez to zrobic uruchamiajac z ekranu monitora program z parametrem:
    -display :0.1

    np.
    xclock -display :0.1
    mplayer -display :0.1 JakisFilm.avi

    lub taki sposob:
    DISPLAY=:0.1 mplayer JakisFilm.avi

    Innym sposobem jest utworzenie pliku (np./home/mojkatalog/tvplay) z zawartoscia:
    # !/bin/sh
    DISPLAY=:0.1 /usr/bin/gmplayer -fs "$*"

    Jesli chcemy uzywac innego programu niz gmplayer do odtwarzania filmow(standardowo znajduje sie w katalogu /usr/bin) podajemy do niego sciezke zamiast /usr/bin/gmplayer.
    Nastepnie dodamy opcje odtwarzania w telewizorni do menu kontekstowego. Jesli mamy kde, to kilkamy na film prawym przyciskiem myszy i wybieramy z menu "Otworz w...", a nastepnie "Inne". W polu "Otworz za pomoca:" wpisujemy:
    sh /sciezka/do/naszego/pliku

    czyli np.
    sh /home/mojkatalog/tvplay

    Zaznaczamy "Zapamietaj program skojarzony z tym plikiem" i klikamy OK. Teraz filmy beda domyslnie otwierane na ekranie telewizora. Jesli chcemy to zmienic ponownie klikamy na filmie=>"Otworz w..."=>"Inne" i wybieramy lub wpisujemy program ktorym chcemy domyslnie otwierac filmy np. gmplayer i ponownie zaznaczamy "Zapamietaj program skojarzony z tym plikiem". Teraz filmy beda domyslnie otwierane w wybranym przez nas programie, a w menu kontekstowym "Otworz w..." bedziemy mogli wybrac odtwarzanie na telewizorze.(za pomoca sh /home/mojkatalog/tvplay)

    Inne sposoby można znaleźć tutaj:
    http://ubuntuforums.org/showthread.php?t=23628

    [12.] Dostrojenie

    Taka konfiguracja powoduje, ze majac kde, za kazdym razem uruchamiaja nam sie dwa Desktopy, dwa Kicker'y itd. Pewnie zuzywa to troche naszych cennych zasobow ;) Poza tym powoduje to kilka innych problemow takich jak np. to, ze Alt-f2 otwiera nam okno "Wykonaj polecenie" raz na ekranie telewziora raz monitora. Inny przyklad to korzystanie z Krusader'a, ktory przy tworzeniu katalogow badz ich kasowaniu przenosi aktywnosc na Desktop telewizora, co jest niewygodne i nieco denerwujace, bo trzeba klikac mycha ;) Itd.

    Rozwiacac to mozna wywalajac Kde z ekranu telewziora co osiaga sie poprzez dodanie do pliku ~/.kde/share/config/kcmdisplayrc wpisu w sekcji [X11] o takiej tresci:
    disableMultihead=true

    Kolejna rzecz, ktora moze przeszkadzac to uciekanie kursora poza ekran monitora. Kursor mozna zablokowac zmieniajac w pliku /etc/X11/xorg.conf sekcje "ServerLayout" na mniej wiecej taka:
    Section "ServerLayout" 
    Identifier "Simple Layout"
    Screen 0 "Screen[0]" 0 0
    Screen 1 "Screen[1]" 2000 0
    InputDevice "Configured Mouse" "CorePointer"
    InputDevice "Generic Keyboard" "CoreKeyboard"
    EndSection

    Aby przeniesc kursor myszy miedzy naszymi ekranami wykorzystujac tylko klawiature mozemy uzyc programu switchscreen. Sa dwa takie programy.

    (a)Jeden znajduje sie tutaj:
    http://homepages.ihug.co.nz/~david.antliff/switchscreen-0.4.tar.gz

    Od razu zaznaczam, ze u mnie nie dzialal on poprawnie. Do jego skompilowania potrzebny byl pakiet:
    libxtst-dev

    A kompiluje sie go wydajac w rozpakowanym katalogu ploecenie:
    $ gcc -g switchscreen.c -o switchscreen -L /usr/X11R6/lib -lX11 -lXtst -lXext

    (b)Drugi, bardziej moim zdaniem przydatny dostepny jest tutaj:

    http://users.tkk.fi/~spniskan/switchscreen/switchscreen-0.1.0.tar.gz

    Kompiluje sie po prostu wydajac polecenie
    $ make
    w rozpakowanym katalogu.
    Uzycie tez jest proste:
    switchscreen <numer ekranu>

    np.
    switchscreen 1

    Aby uruchomic skrypt togglescreen.sh (znajdujacy sie w rozpakowanym katalogu) nalezy wczesniej zmienic w nim sciezki do pliku switchscreen. Skrypt ten nie do konca dziala poprawnie. W sytuacji, gdy wylaczylismy kde z ekranu telewizora skrypt nie zorientuje sie gdzie znajduje sie kursor (polecenie switchscreen -p). Gdy desktop kde dziala na tv i monitorze togglescreen zadziala ponownie po kliknieciu mysza na Desktopie.

    Skrypt ten zmodyfikowalem metoda "prob i bledow" (nie znam sie kompletnie na tworzeniu skryptow) tak, ze pelni swoja funkcje. Oto on:
    #!/bin/bash
    STOREFILE=~/.switchscreen/.togglescreen
    SWITCHSCREEN=~/.switchscreen/switchscreen
    LASTSTATUS=~/.switchscreen/.laststatus

    CURRENT="`$SWITCHSCREEN -P`"
    CURSCR=`echo "$CURRENT" | gawk '{ print $2 }'`
    CURPOS=`echo "$CURRENT" | gawk '{ print $4 }'`
    LASTSCR="`cat $LASTSTATUS 2>/dev/null`"

    echo $CURPOS > $STOREFILE.$CURSCR

    if [ "$LASTSCR" = "0" ]; then
    NEWSCR=1
    else
    NEWSCR=0
    fi

    #echo $NEWSCR
    #echo $LASTSCR

    NEWPOS="`cat $STOREFILE.1 2>/dev/null`"
    #echo $NEWPOS
    if [ "$NEWPOS" ]; then
    POSOPT="-c $NEWPOS"
    else
    POSOPT=""
    fi

    $SWITCHSCREEN -q $POSOPT $NEWSCR
    echo $NEWSCR > $LASTSTATUS

    Skrypt ten zaklada, ze rozpakowany katalog ze skompilowanym switchscreen'em znajduje sie w ~/.switchscreen. Nalezy jeszcze utworzyc w nim plik .laststatus z poczatkowa wartosci, np. 0.

    Do switchscreen lub togglescreen mozna utworzyc dla wygody skroty klawiaturowe. W tym celu nalezy otworzyc edytor menu (prawy przycisk na przycisku menu) i dodac do niego np. skrypt togglescreen. (Dodajemy nowa pozycje, wpisujemy dowolna nazwe, jako polecenie wpisujemy sh i sciezke do naszego skryptu, np sh ~/.switchscreen/togglescreen.sh, dodajemy skrot klawiatury,np. CTRL_ALT_TAB i zapisujemy zmiany)

    Linki:
    http://www.kde-forum.org/post/57994/lastpost.html#post57994%3C/a%3E
    http://doc.gwos.org/index.php/DualMonitors#Moving_focus_between_screens
    http://users.tkk.fi/~spniskan/switchscreen/


    |=============== [ SPOSOB DRUGI - Dwa serwery X ] ===============|


    Linki:
    http://en.wikibooks.org/wiki/NVidia/TV-OUT

    Idea jest taka, ze w momencie, gdy bedziemy chcieli obejrzec film na tv odpalimy drugi serwer iksow i na nim odpalimy filma. Wada tego rozwiazania jest taka, ze na raz tylko jedno urzadzenie bedzie moglo byc aktywne (czyli albo tv albo monitor). Przelaczac miedzy nimi bedziemy sie kombinacja klawiszy CTRL-ALT-F7 iCTRL-ALT-F8.

    Mamy wiec dzialajacy plik xorg.conf (czyli bez modyfikacji opisanych w sposobie pierwszym). Koncepcja jest taka, ze nie bedziemy niczego edytowac, a jedynie dodawac nowe rzeczy do pliku konfiguracyjnego.

    [1.] Oczywiscie pierwsza rzecza, ktora nalezy wykonac jest kopia bezpieczenstwa, czyli:
    # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.kopia2

    '#' oznacza, ze polecenie wykonujemy jako root ;)

    [2.] Otwieramy teraz plik xorg.conf do edycji podobnie jak przy sposobie pierwszym, czyli np. :
    # kedit /etc/X11/xorg.conf

    [3.] Dodajemy nowa sekcje Device, czyli wklejamy do naszego pliku konfiguracyjnego:
    Section "Device" 
    Identifier "Card_tv"
    Driver "nvidia"
    #BusID "PCI:2:0:0" # May differ (not needed unless you have two or more cards)
    Option "TVOutFormat" "SVIDEO" # Or "COMPOSITE"
    Option "TVStandard" "PAL-G"
    Option "ConnectedMonitor" "TV"
    EndSection

    Jesli potrzebujemy (mamy dwie lub wiecej karty graficzne) odkomentowujemy (kasujemy '#') parametr BusID i podajemy poprawna wartosc (mozna ja znalezc wydajac polecenie $lspci)
    Jesli mamy inne wyjscie tv na karcie niz SVIDEO wpisujemy je, np. zastepujac SVIDEO przez COMPOSITE.

    [4.] Dodajemy nowa sekcje Monitor:
    Section "Monitor"
    Identifier "tv"
    HorizSync 30-50
    VertRefresh 60
    EndSection

    Podane wyzej wartosci HorizSync i VertRefresh sa poprawne dla wiekszosci tv ale jesli potrzbujemy mozemy je zmienic (przyda sie instrukcja do telewizora).

    [5.] Dodajemy nowa sekcje Screen:
    Section "Screen"
    Identifier "Screen_tv"
    Device "Card_tv"
    Monitor "tv"
    DefaultDepth 16
    SubSection "Display"
    Depth 16
    Modes "1024x768" "800x600"
    EndSubSection
    EndSection

    [6.] Ostatnia rzecza, ktora dodamy do xorg.conf jest sekcja ServerLayout:
    Section "ServerLayout"
    Identifier "tv"
    Screen 0 "Screen_tv" 0 0
    InputDevice "Mouse0" "CorePointer"
    InputDevice "Keyboard0" "CoreKeyboard"
    EndSection

    Musimy jeszcze zmienic dwa wyrazenia "Mouse0" i "Keyboard0". To co mamy wpisac znajdziemy we wlasnie edytowanym pliku xorg.conf ;)

    Szukamy wiec podobnej do tej sekcji:
    Section "InputDevice"
    Identifier "Generic Keyboard"
    Driver "kbd"
    Option "CoreKeyboard"
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc105"
    Option "XkbLayout" "pl"
    EndSection

    i to co jest po 'Identifier" wpisujemy zamiast "Keyboard0" w sekcji ServerLayout (czyli np. "Generic Keyboard")

    Nastepnie odszukujemy podobna do tej sekcje:
    Section "InputDevice"
    Identifier "Configured Mouse"
    Driver "mouse"
    Option "CorePointer"
    Option "Device" "/dev/psaux"
    Option "Protocol" "ExplorerPS/2"
    Option "Emulate3Buttons" "true"
    EndSection

    i to co jest po 'Identifier" wpisujemy zamiast "Mouse0" w sekcji ServerLayout (czyli np. "Configured Mouse")

    Nasza sekcja ServerLayout powinna ostatecznie wygladac podobnie:
    Section "ServerLayout"
    Identifier "tv"
    Screen 0 "Screen_tv" 0 0
    InputDevice "Configured Mouse" "CorePointer"
    InputDevice "Generic Keyboard" "CoreKeyboard"
    EndSection

    [7.] Zapisujemy zmiany, upewniamy sie, ze wszystko jest podlaczone jak powinno, wlaczamy telewizor i jako root wpisujemy w konsoli:
    # X :1 -layout tv

    Telewizor powinien zaskoczyc i po chwili powinnismy zobaczyc na nim logo nvidii i kursor myszy. Przelaczac sie miedzy tv i monitorem mozemy za pomoca kombinacji klawiszy CTRL-ALT-F7 i CTRL-ALT-F8.

    Zeby uruchomic cos na tv wpisujemy w konsoli np.:
    DISPLAY=:1 xterm

    Zeby zakonczyc prace z telewizorem wciskamy (gdy tv jest aktywny) kombinacje CTRL-ALT-BACKSPACE

    Zeby troche sobie uproscic prace z telewizorem tworzymy plik mplayer.tv w katalogu /usr/local/bin
    # touch /usr/local/bin/mplayer.tv

    a nastepnie dodajemy do niego dokladnie! taka oto zawartosc (najlepiej skopiowac):
    #!/bin/sh
    exec /usr/X11R6/bin/xinit /usr/bin/xterm -ut -e \
    /usr/bin/mplayer -stop-xscreensaver -fs -vo sdl "$@" -- /usr/X11R6/bin/X :1 -layout tv

    Ustawiamy nasz plik jako wykonywalny:
    # chmod +x /usr/local/bin/mplayer.tv

    Ostatnia rzecza, ktora mozemy chciec zrobic jest zezwolenie zwyklemu uzyszkodnikowi na odpalenie iksow. Ja robie to edytujac plik /etc/X11/Xwrapper.config i zmieniajac wpis
    allowed_user=console

    na
    allowed_user=anybody

    co moze najlepszym wyjsciem nie jest.

    Teraz mozemy odtwarzac filmy za pomoca polecenia:
    mplayer.tv JakisFilm.avi

    Oczywiscie mozemy dodac mplayer.tv do menu kontekstowego, by znalazlo sie w podmenu "Otworz w..." Opis jak to zrobic zostal podany przy sposobie pierwszym.


    |================= [ SPOSOB TRZECI - Twin View ] ================|


    Linki:
    http://en.wikibooks.org/wiki/NVidia/Twin_View
    ftp://download.nvidia.com/XFree86/Linux-x86/1.0-7676/README.txt
    http://www.ubuntuforums.org/showthread.php?t=85769&highlight=twinvie
    http://www.ublug.org/ubuntu/twinview/twinview-howto-breezy.html
    http://gentoo-wiki.com/TV-Out_with_GeForce
    http://www.sorgonet.com/linux/nv-online/help.html

    Ten sposob wykorzystuje opcje TwinView kart Nvidii. Dzieki niej bedziemy mogli sklonowac to co mamy na monitorze na tv. Kolejny plus to mozliwosc przesuwania okien miedzy tv i monitorem. Zakladam, ze mamy dzialajacy plik xorg.conf (bez modyfikacji opisanych wyzej).

    [1.] Najpierw wykonujemy kopie bezpieczenstwa, czyli:
    # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.kopia3

    '#' oznacza, ze polecenie wykonujemy jako root ;)

    [2.] Otwieramy plik xorg.conf do edycji podobnie jak przy sposobie pierwszym, czyli np. :
    # kedit /etc/X11/xorg.conf

    [3.] Znajdujemy sekcje Device, wygladajaca mniej wiecej tak:
    Section "Device"
    Identifier "Card0"
    Driver "nvidia"
    VendorName "nVidia Corporation"
    BoardName "NV34 [GeForce FX 5200]"
    EndSection

    i dopisujemy do niej kilka opcji, zeby ostatecznie wygladala tak:
    Section "Device"
    Identifier "Card0"
    Driver "nvidia"
    VendorName "nVidia Corporation"
    BoardName "NV34 [GeForce FX 5200]"
    Option "NoLogo"
    Option "CursorShadow" "on"
    Option "TwinView"
    Option "TwinViewOrientation" "Clone"
    Option "MetaModes" "1280x1024,1024x768"
    Option "ConnectedMonitor" "CRT, TV"
    Option "TVStandard" "PAL-G"
    Option "TVOutFormat" "SVIDEO"

    EndSection

    Opcja "NoLogo"Powoduje, ze logo Nvidii nie bedzie wyswietlane przy starcie Iksow - zawsze to pare sekund mniej ;)
    Opcja "CursorShadow" "on" wlacza cienie pod kursorem.
    Opcja "Clone" powoduje, ze na tv bedziemy mieli kopie tego co na monitorze. Zamiast tego mozemy wpisac: RightOf, LeftOf, Above, Below, zeby uzyskac dodatkowy obszar.
    Opcja "MetaModes" pokazuje pary rozdzielczosci (monitor,tv). W tym przypadku, gdy na monitorze jest 1280x1024 na tv bedzie 1024x768. Mozemy to dowolnie zmienic (pary oddzielamy srednikiem). Np "1280x1024,NULL;1024x768,1024x768" Wartosc NULL mowi, ze obraz nie bedzie wyswietlany (tutaj w przypadku gdy rozdzielczosc na monitorze bedzie ustawiona na 1280x1024)
    Opcja "ConnectedMonitor" "CRT, TV" oznacza, ze mamy podpiety monitor crt i telewizor. Jesli mamy plaski monitor podpiety przez DVI - "CRT" zastepujemy przez "DFP".
    Opcja "TVOutFormat" "SVIDEO" oznacza typ wyjscia TV-OUT. Jesli nie mamy S-VIDEO zastepujemy ten wpis przez np. "COMPOSITE"

    [4.] Restartujemy Iksy (CTRL-ALT-BACKSPACE) i cieszymy sie obrazem na tv ;)

    I to by bylo na tyle. Za ewentualne bledy przepraszam ;)

    Watek na forum:
    http://forum.dug.net.pl/viewtopic.php?t=5293



    FAQ skrypt © raixer