8.20. Gestione uscita TV-out

8.20.1. Schede Matrox G400

Sotto Linux hai due modi per far funzionare l'uscita TV delle G400:

Importante

Per le istruzioni per l'uscita TV-out su Matrox G450/G550, vedi per favore la sezione successiva!

XFree86

Usando il driver e il modulo HAL, disponibile dal sito Matrox. Questo ti farò avere X sulla TV.

Questo metodo non ti fornirà una riproduzione accelerate come sotto Windows! La seconda uscita ha solo il framebuffer YUV, il BES (Back End Scaler, il ridimensionatore sulle schede G200/G400/G450/G550) non funziona su di esso! Il driver per Windows in qualche modo aggira il problema, probabilmente usando il motore 3D per ridimensionare, e il framebuffer YUV per mostrare l'immagine ridimensionata. Se vuoi davvero usare X, uitlizza le opzioni -vo x11 -fs -zoom, ma sarà LENTO, e avrà la protezione di copia Macrovision abilitata (puoi "correggere" Macrovision usando questo script perl).

Framebuffer

Usando i moduli matroxfb nei kernel 2.4. I kernel 2.2 non hanno in sé la funzionalità TVout, indi sono inutilizzabili per questo fine. Devi abilitare TUTTE le caratteristiche specifiche per matroxfb durante la compilazione (tranne MultiHead), e compilarle dentro ai moduli! Devi anche avere I2C abilitato.

  1. Entra in TVout e scrivi ./compile.sh. Installa TVout/matroxset/matroxset da qualche parte nella tua PATH.

  2. Se non hai fbset installato, metti TVout/fbset/fbset in qualche dove nella tua PATH.

  3. Se non hai con2fb installato, metti TVout/con2fb/con2fb da qualche parte nella tua PATH.

  4. Poi entra nella directory TVout/ nei sorgenti di MPlayer, ed esegui ./modules come root. La tua console in modalità testuale entrerà in modalità framebuffer (nessuna via di ritorno!).

  5. Poi, MODIFICA ed esegui lo script ./matroxtv. Questo ti presenterà un menu molto semplice. Premi 2 e Enter. Ora dovresti avere la stessa immmagine sul tuo monitor e sulla TV. se l'immagine sulla TV (di default PAL) mostra alcune strane strisce, lo script non è stato in grado di impostare adeguatamente la risoluzione (a 640x512 di default). Prova altre risoluzioni dal menu e/o fai dei tentativi con fbset.

  6. Evvai. L'operazione successiva è far sparire il cursore a blocco di tty1 (o quello che è) e disabilitare lo spegnimento dello schermo. Esegui i comandi seguenti:

    echo -e '\033[?25l'
    setterm -blank 0

    or

    setterm -cursor off
    setterm -blank 0

    Probabilmente vuoi mettere i suddetti in uno script e anche vuotare lo schermo. Per ripristinare il cursore:

    echo -e '\033[?25h'

    o

    setterm -cursor on

  7. Yeah kewl. Avvia la riproduzione del film con

    mplayer -vo mga -fs -screenw 640 -screenh 512 nomefile

    (se usi X, adesso passa alla matroxfb con per esempio Ctrl-Alt-F1.) Sostituisci 640 e 512 se imposti la risoluzione ad un'altra...

  8. Goditi la ultra-veloce ultra-accessoriata uscita TV Matrox (megli di Xv)!

Costruire un cavo per uscita TV-out Matrox.  Nessuno si assume alcuna responsabilità, né risponde di alcuna danno causato da questa documentazione.

Cavo per G400.  Il quarto pin del connettore CRTC2 è il segnale video composito. La terra sono il sesto, settimo e ottavo pin (informazioni fornite da Balázs Rácz).

Cavo per G450.  Il primo pin del connettore CRTC2 è il segnale video composito. La terra sono il quinto, sesto, settimo e quindicesimo pin (5, 6, 7, 15) (informazioni fornite da Balázs Rácz).

8.20.2. Schede Matrox G450/G550

La gestione dell'uscita TV per queste schede è stata aggiunta solo recentemente e non è ancora nel kernel ufficiale. Attualmente il modulo mga_vid non può essere utilizzato, per quanto ne so, perché il driver G450/G550 funziona solo in una modalità: il primo chip CRTC (con molte più funzioni) sul primo schermo (sul monitor), e il secondo CRTC (niente BES - per chiarimenti su BES, vedi la sezione sopra sulla G400) sulla TV. Perciò per ora puoi usare solo il driver di uscita fbdev di MPlayer.

The first CRTC can't be routed to the second head currently. The author of the kernel matroxfb driver - Petr Vandrovec - will maybe make support for this, by displaying the first CRTC's output onto both of the heads at once, as currently recommended for G400, see the section above.

La patch necessaria per il kernel e l'HOWTO dettagliato sono scaricabili da http://www.bglug.ca/matrox_tvout/

8.20.3. Schede ATI

PREAMBOLO.  Attualmente ATI non vuole supportare alcuno dei suoi chip TV-out sotto Linux a causa della loro tecnologia Macrovision sotto licenza.

SITUAZIONE USCITA TV DELLE SCHEDE ATI IN LINUX

  • ATI Mach64: supportata da GATOS.

  • ASIC Radeon VIVO: supportata da GATOS.

  • Radeon e Rage128: supportate da MPlayer! Controlla le sezioni driver VESA e VIDIX.

  • Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4: supportate da atitvout.

Con le altre schede usa semplicemente il driver VESA senza VIDIX. Tuttavia ti serve una CPU potente.

Un'unica cosa ti serve fare - Assicurati di avere il connettore TV collegato prima di avviare il tuo PC dato che il BIOS video si inizializza solamente durante il passaggio POST.

8.20.4. nVidia

Per prima cosa, DEVI scaricare i driver proprietari a sorgenti chiusi da http://nvidia.com. Non sarà spiegato il processo di installazione e configurazione visto che non esula lo scopo di questa documentazione.

Dopo che XFree86, XVideo, e l'accelerazione 3D funzionano correttamente, modifica la sezione Device della tua scheda nel file XF86Config, secondo l'esempio seguente (adattalo alla tua scheda/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

Sicuramente la cosa importante è la parte TwinView.

8.20.5. NeoMagic

Il chip NeoMagic si trova in unìampia gamma di portatili, alcuni dei quali sono equipaggiati con un codificatore TV analogico semplice, alcuni ne hanno uno avanzato.

  • E' stato riportato che si può ottenere un'uscita TV affidabile usando -vo fbdev o -vo fbdev2. Devi avere vesafb compilato nel kernel e passare i seguenti parametri sulla riga di avvio del kernel: append="video=vesafb:ywrap,mtrr" vga=791. Dovresti far partire X, poi passare alla modalità in console con per es. Ctrl-Alt-F1. Se non avvii X prima di lanciare MPlayer dalla console, il video diventa lento e frammentato (chiarimenti sono benvenuti). Collegati in console, poi lancia il comando seguente:

    clear; mplayer -vo fbdev -zoom -cache 8192 dvd://

    Ora dovresti vedere il filmato in console, che riempie circa la metà dello schermo LCD del tuo portatile. Per passare alla TV premi per tre volte Fn-F5. Provato su un Tecra 8000, kernel 2.6.15 con vesafb, ALSA v1.0.10.

  • Chip di codifica Chrontel 70xx: Si trova negli IBM Thinkpad 390E e facilmente altri Thinkpad o portatili.

    Devi usare -vo vesa:neotv_pal per PAL o -vo vesa:neotv_ntsc per NTSC. Fornirà la funzione di uscita TV nelle modalità a 16 e 8 bpp seguenti:

    • NTSC 320x240, 640x480 e forse anche 800x600.

    • PAL 320x240, 400x300, 640x480, 800x600.

    La modalità 512x384 non è supportata dal BIOS. Per attivare l'uscita TV devi ridimensionare l'immagine a una risoluzione diversa. Se riesci a vedere un immagine sullo schermo a 640x480 o a 800x600 ma non a 320x240 o ad altre risoluzioni inferiori devi sostituire due tabelle in vbelib.c. Vedi la funzione vbeSetTV per i dettagli. In questo caso per favore contatta l'autore.

    Problemi conosciuti: solo VESA, non è implementato alcun controllo come luminosità, contrasto, livello del nero, filtro per lo sfarfallio.