Podłączenie TV do X-ów


Poniższy opis przedstawia konfigurację pliku xorg.conf umożliwiającą podłączenie telewizora jako drugiego monitora do oglądania filmów. Istotne jest to, że obraz na telewizorze nie jest przylepiony do ekranu desktopu, zatem mysz nie wywędruje w pewnym momencie poza ekran. Mogę puścić film z mplayera na telewizorze, a w tym samym czasie druga osoba może swobodnie korzystać z komputera, przeglądać www itd. poniżej zawartośc pliku /etc/X11/xorg.conf

Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Default Screen" 0 0
Screen 1 "Screen[1]” 1400 1200
InputDevice “Generic Keyboard”
InputDevice “Configured Mouse”
EndSection
Section “Files”
# paths to defoma fonts
FontPath “/usr/share/X11/fonts/misc”
FontPath “/usr/share/X11/fonts/cyrillic”
FontPath “/usr/share/X11/fonts/100dpi/:unscaled”
FontPath “/usr/share/X11/fonts/75dpi/:unscaled”
FontPath “/usr/share/X11/fonts/Type1″
FontPath “/usr/share/X11/fonts/CID”
FontPath “/usr/share/X11/fonts/100dpi”
FontPath “/usr/share/X11/fonts/75dpi”
FontPath “/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType”
FontPath “/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID”
EndSection
Section “Module”
Load “i2c”
Load “bitmap”
Load “ddc”
Load “extmod”
Load “freetype”
Load “glx”
Load “int10″
Load “type1″
Load “vbe”
EndSection
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/input/mice”
Option “Protocol” “ImPS/2″
Option “Emulate3Buttons” “true”
Option “ZAxisMapping” “4 5″
EndSection
Section “Monitor”
VertRefresh 43-60
Identifier “Generic Monitor”
Option “DPMS”
HorizSync 28-64
EndSection
Section “Monitor”
Identifier “Monitor[1]” #TV
HorizSync 30-50
VertRefresh 50
Option “DPMS”
EndSection
Section “Device”
Identifier “NVIDIA Corporation NV34 [GeForce FX 5200]”
Driver “nvidia”
BusID “PCI:1:0:0″
Screen 0
Option “NoLogo” “1″
Option “ConnectedMonitor” “CRT, TV”
EndSection
Section “Device”
Driver “nvidia”
Identifier “Device[1]”
Screen 1
Option “TVOutFormat” “SVIDEO”
Option “TVStandard” “PAL-B”
BusID “PCI:1:0:0″
Option “NoLogo” “1″
EndSection
Section “Screen”
Identifier “Default Screen”
Device “NVIDIA Corporation NV34 [GeForce FX 5200]”
Monitor “Generic Monitor”
DefaultDepth 24
SubSection “Display”
Depth 1
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
SubSection “Display”
Depth 4
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
SubSection “Display”
Depth 8
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
SubSection “Display”
Depth 15
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
SubSection “Display”
Depth 16
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
SubSection “Display”
Depth 24
Modes “1280×1024″ “1024×768″ “800×600″ “640×480″
EndSubSection
EndSection
Section “Screen”
Device “Device[1]”
Identifier “Screen[1]”
Monitor “Monitor[1]”
DefaultDepth 24
SubSection “Display”
Depth 24
Modes “1024×768_50″
EndSubSection
EndSection

Kilka słów o mojej konfiguracji.
Posiadany monitor ma proporcje 4:3 i rozdzielczość 1280×1024, karta Nvidia GeForce FX5200 z wyjściami na dwa monitory i dodatkowym wyjściem s-video. Można przy tym wykorzystać jednocześnie dwa z nich.

W sekcji ServerLayout definiuję dodatkowy Screen. Screen 0, to domyślny już ustawiony Default screen, Screen 1 będzie odpowiadał telewizorowi. Aby nie stykał się, przesuwam go o 1400 pixeli w prawo i 1200 pixeli w dół.

Dodano drugą sekcję Monitor[1] opisującą parametry telewizora.

W sekcji Device przypisywane są odpowiednie Screeny do odpowiedniego monitora. Ważne jedt Option „ConnectedMonitor” „CRT, TV”, ktore włącza konfigurację monitor crt plus tv. Bez niej domyślnie jest uruchamiane drugie wejście monitora (crt,crt).

Jak tego używać?

Po zmianie konfiguracji xorg.conf teoretycznie wystarczy zrestartować X’y CTRL+ALT+BACKSPACE. Praktycznie czasem trzeba zrestartować kompa.

sudo X :1 -layout tv
DISPLAY=:0.1

Komenda wydana w terminalu sprawia, że wszystkie programy uruchomione będą na monitorze tv. Można teraz uruchomić mplayera z filmem.

mplayer  /sciezka/do/filmu.avi

Można też poradzić sobie bez pierwszej komendy. Mplayer ma parametr -display dzięki któremu możemy podać na którym ekranie ma być wyświetlany film.

W poniższym przykładzie, jako, że posiadam wyjście spdif a telewizor mam panoramiczny, dodane są opowiednie parametry -oa oraz -monitoraspect. Pobierane są też windowsowe fonty do poprawnego wyświetlania napisów i ustawione kodowanie (-subcp) na windowsowe cp125, bo takie najczęściej napisy są dostępne. Parametr -subfont-text-scale skaluje tekst do mojej ulubionej wielkości. Parametr -fs uruchamia od razu tryb pełnoekranowy, nie trzeba naciskać F (fullscreen)

mplayer -ao alsa:device=spdif -monitoraspect 16:9 -font /sciezka/do/fontu/arial.ttf -subcp cp1250 -subfont-text-scale 4 -display :0.1 -fs /sciezka/do/filmu.avi

Jeśli film zawiera dźwięk zakodowany w ac3 to należy dodać parametr określający kodek -ac hwac3 i już możemy cieszyć się dźwiękiem we wszyskich kolumnach

mplayer -ao alsa:device=spdif -ac hwac3 -monitoraspect 16:9 -font /sciezka/do/fontu/arial.ttf -subcp cp1250 -subfont-text-scale 4 -display :0.1 -fs /sciezka/do/filmu.avi

Czego nie opisałem? Jak sprawić aby proporcje pikseli na panoramicznym telewizorze były inne niż niż na podłączonym do komputera monitorze. Może w przyszłości podłączę klawiaturę i drugą mysz i aby surfować na ekranie tv. Dobrze by bylo wtedy mieć właściwe proporcje obrazu, a nie rozciągnięte. Póki co muszę przełaczać telewizor w tryb 4:3.

, , , , , , , ,

  1. Brak komentarzy, jeszcze.

Komentarze nie są dozwolone.