Pod Linuksem istnieją dwa sposoby uruchomienia wyjścia TV na karcie Matrox G400:
instrukcje dla Matrox G450/G550 znajdują się w następnej sekcji!
Używając sterownika oraz modułu HAL, dostępnego na stronie Matroksa. Będziesz miał X na TV.
Ten sposób nie daje Ci przyśpieszanego odtwarzania jak pod Windowsami! Drugie wyjście ma tylko bufor ramki YUV, BES (Back End Scaler, układ skalujący YUV na kartach G200/G400/G450/G550) tam nie działa. Windowsowy sterownik jakoś to obchodzi, prawdopodobnie używając silnika (engine) 3D do powiększania, a bufora ramki YUV do wyświetlania obrazu. Jeżeli na prawdę musisz używać X, użyj opcji -vo x11 -fs -zoom. Ostrzegam, że będzie to WOLNE i będzie miało włączone zabezpieczenie przed kopiowaniem Macrovision (Macrovision copy protection). (możesz "obejść" Macrovision używając tego skryptu perla).
Używając modułów matroxfb w jądrach 2.4. 2.2 nie obsługują wyjścia TV, więc są do tego celu bezużyteczne. Musisz włączyć WSZYSTKIE specyficzne dla matroxfb podczas kompilacji (poza MultiHead) i skompilować je w moduły! Będziesz także potrzebował włączonego I2C.
Wejdź do TVout i wpisz
./compile.sh. Zainstaluj
TVout/matroxset/matroxset w jakimś katalogu
znajdującym się w zmiennej PATH
.
Jeżeli nie masz zainstalowanego fbset, umieść
TVout/fbset/fbset gdzieś w
swojej zmiennej PATH
.
Jeżeli nie masz zainstalowanego con2fb, umieść
TVout/con2fb/con2fb gdzieś w
swojej zmiennej PATH
.
Następnie wejdź do katalogu TVout/ w źródłach MPlayera i uruchom ./modules jako root. Twoja konsola tekstowa wejdzie w tryb framebuffer (nie ma odwrotu!).
Następnie, WYEDYTUJ i uruchom skrypt ./matroxtv. Ukaże Ci się bardzo proste menu. Naciśnij 2 i Enter. Teraz powinieneś mieć ten sam obraz na monitorze i TV. Jeżeli na obrazie TV (standardowo PAL) są jakieś paski, znaczy to, że skrypt nie był w stanie poprawnie ustawić rozdzielczości (standardowo na 640x512). Wypróbuj inne rozdzielczości z menu i/lub poeksperymentuj z fbset.
Tiaa. Następnym zadaniem będzie sprawienie aby kursor na tty1 (lub innym) zniknął oraz aby wyłączyć wygaszanie ekranu. Wykonaj następujące polecenia:
echo -e '\033[?25l' setterm -blank 0
lub
setterm -cursor off setterm -blank 0
Możliwe, że chcesz umieścić to w skrypcie, a także wyczyścić ekran. Aby z powrotem włączyć kursor:
echo -e '\033[?25h'
lub
setterm -cursor on
Tiaa git. Rozpocznij odtwarzanie filmu przez:
mplayer -vo mga -fs -screenw 640 -screenh 512 nazwa_pliku
(Jeżeli używasz X, przełącz się teraz na matroxfb używając np.
Ctrl+Alt+F1.)
Zmień 640
oraz 512
, jeżeli chcesz
ustawić inną rozdzielczość...
Ciesz się ultra-szybkim ultra-bajernym wyjściem TV Matroksa (lepsze niż Xv)!
Konstruowanie kabla TV-out do Matroksów. Nikt nie bierze na siebie żadnej odpowiedzialności za zniszczenia spowodowane tą dokumentacją.
Kabel dla G400. W złączu CRTC2 na czwartej nóżce (pin) jest sygnał composite video. Uziemienie jest na szóstej, siódmej i ósmej nóżce. (info dostarczone przez Balázs Rácz)
Kabel dla G450. W złączu CTRC2 na pierwszej nóżce jest sygnał composite video. Ziemia jest na piątej, szóstej, siódmej i pietnastej (5, 6, 7, 15) nóżce. (info dostarczone przez Balázs Kerekes)
Obsługa wyjścia TV dla tych kart została dodana dopiero niedawno i nie należy jeszcze do głównego drzewa jądra. . Z tego, co wiem, moduł mga_vid nie może być obecnie użyty ponieważ sterownik G450/G550 pracuje tylko w jednej konfiguracji: pierwszy układ CRTC (z wieloma możliwościami) na pierwszym ekranie (monitor) i drugi CRTC (bez BES - po objaśnienia do BES sięgnij do sekcji G400 wyżej) na TV. W chwili obecnej możesz więc używać tylko sterownika wyjścia fbdev MPlayera.
Obecnie pierwszy CRTC nie może być przekierowany na drugie wyjście. Autor sterownika jądra matroxfb - Petr Vandrovec - być może zrobi obsługę tego poprzez wyświetlanie wyjścia z pierwszego CRTC na obydwa złącza jednocześnie, jak to jest w tej chwili zalecane dla G400, patrz sekcja wyżej.
Potrzebną łatkę na jądro i dokładne HOWTO można ściągnąć z http://www.bglug.ca/matrox_tvout/
WSTĘP. Obecnie ATI nie chce obsługiwać pod Linuksem żadnego z układów TV-out, z powodu ich licencjonowanej technologii Macrovision.
STAN KART ATI Z TV-OUT POD LINUKSEM
ATI Mach64: obsługiwane przez GATOS.
ASIC Radeon VIVO: obsługiwane przez GATOS.
Radeon oraz Rage128: obsługiwane przez MPlayera! Sprawdź sekcje sterownik VESA oraz VIDIX.
Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4: obsługiwane przez atitvout.
Na innych kartach używaj sterownika VESA, bez VIDIX. Potrzebny jest jednak potężny CPU.
Jedyna rzecz, którą musisz zrobić to: Mieć podłączony odbiornik TV przez uruchomieniem swojego PC, ponieważ video BIOS inicjalizuje się tylko podczas procedury POST.
Najpierw MUSISZ ściągnąć sterowniki o zamkniętych źródłach z http://nvidia.com. Nie będę tutaj opisywał procesu instalacji i konfiguracji ponieważ nie jest to celem tej dokumentacji.
Jeżeli XFree86, XVideo i przyśpieszanie 3D już działa prawidłowo, przerób sekcję Device swojej karty w pliku XF86Config zgodnie z poniższym wzorcem (dostosuj do swojej karty/TV):
Section "Device" Identifier "GeForce" VendorName "ASUS" BoardName "nVidia GeForce2/MX 400" Driver "nvidia" #Option "NvAGP" "1" Option "NoLogo" Option "CursorShadow" "on" Option "TwinView" Option "TwinViewOrientation" "Clone" Option "MetaModes" "1024x768,640x480" Option "ConnectedMonitor" "CRT, TV" Option "TVStandard" "PAL-B" Option "TVOutFormat" "Composite" EndSection
Oczywiście najważniejsza jest część TwinView.
Układ NeoMagic można znaleźć w rożnych laptopach, niektóre wyposażone są w prosty analogowy koder TV, inne mają bardziej zaawansowaną wersję.
Układ analogowy: Doniesiono nam, że dobre wyjście TV można uzyskać używając -vo fbdev lub -vo fbdev2. Potrzebujesz wkompilowanego w jądro vesafb i przekazane do poleceń jądra: append="video=vesafb:ywrap,mtrr" vga=791. Powinieneś uruchomić X, następnie przełączyć się do konsoli używając np. CTRL+ALT+F1. Jeżeli nie wystartujesz X przed uruchomieniem MPlayera z konsoli obraz będzie powolny i będzie się ciął (mile widziane wytłumaczenie). Zaloguj się na konsoli, a następnie wykonaj następujące polecenie:
clear; mplayer -vo fbdev -zoom -cache 8192 dvd://
Powinieneś ujrzeć odtwarzany w konsoli film zajmujący około połowę ekranu LCD Twojego laptopa. Aby przełączyć się na TV naciśnij Fn+F5 trzy razy. Przetestowane na Tecra 800, jądro 2.6.15 z vesafb, ALSA v1.0.10.
Układ kodujący Chrontel 70xx: Obecny w IBM thinkpad 390E, a możliwe, że także w innych Thinkpadach lub notebookach.
Dla trybu PAL musisz użyć -vo vesa:neotv_pal. Dla trybu NTSC - -vo vesa:neotv_ntsc. Zapewni to funkcjonowanie wyjścia TV w następujących trybach 16 bpp i 8 bpp:
NTSC 320x240, 640x480, być może także 800x600.
PAL 320x240, 400x300, 640x480, 800x600.
Tryb 512x384 nie jest obsługiwany przez BIOS. Musisz przeskalować obraz do innej rozdzielczości aby aktywować wyjście TV. Jeżeli widzisz obraz na ekranie w rozdzielczości 640x480 lub 800x600, lecz nie w 320x240, lub w innych mniejszych rozdzielczościach, to musisz zamienić dwie tabele w vbelib.c. Więcej szczegółów znajdziesz w kodzie funkcji vbeSetTV. W tym przypadku skontaktuj się z autorem.
Znane problemy: Tylko VESA, nie są zaimplementowane ustawienia obrazu takie jak jasność, kontrast, poziom czerni (blacklevel) i filtr migotania (flickfilter).