Dopo un mese di attesa dall'uscita ufficiale ho deciso di compilare da me i driver open radeon 6.10 (aggiornati ora alla versione 6.11.0 6.12.1), la manna per i possessori di schede video Radeon perché unici, fra i driver ATI, al momento in grado di eliminare il fastidiosissimo problema del tearing video, e invece ancora ufficialmente assenti dai repository di Intrepid.
Per chi non sapesse di cosa sto parlando,
il tearing è quel difetto di visualizzazione di un file video, a causa del quale vediamo comparire, per pochi istanti e in posizioni diverse, linee orizzontali casuali che attraversano tutta la larghezza del filmato da destra a sinistra.
L'effetto visibile è un'immagine composta da un pezzo del fotogramma corrente (per esempio la parte in basso), sovrapposta al fotogramma precedente. La linea di separazione fra i due fotogrammi è la linea di strappo, in inglese tearing.
La causa è l'errata sincronizzazione tra la velocità di scorrimento dei fotogrammi del film e quella di aggiornamento dell'immagine a schermo, il cosiddetto refresh del monitor.
O per dirla alla Big Buck Bunny...
con una vistosa "linea di strappo" nel mezzo
Per eliminare il tearing basterebbe, in teoria, attivare la sincronizzazione verticale nei propri driver. Dico basterebbe perché purtroppo, per le schede ATI non esistevano fino ad oggi driver in grado di farlo, e farlo bene visto che i Catalyst includevano quest'opzione ma anche abilitandola il tearing rimaneva tutto.
Con l'uscita dei radeon 6.10 e seguenti invece, le cose sono cambiate radicalmente e l'Olimpo della perfetta visione di film su computer ha spalancato le porte anche agli utilizzatori di Linux in abbinamento a schede video ATI, che possono finalmente smettere di sentirsi figli di un dio minore e iniziare a vedere film a livelli decenti sul proprio Ubuntu
Quelle che trovate allegate nel paragrafo Installazione e utilizzo sono le versioni aggiornate (6.10.0 6.11.0 6.12.0) dei pacchetti xserver-xorg-video-ati, il wrapper dei diversi driver ati, e xserver-xorg-video-radeon, i driver veri e propri.
Sono versioni compilate da me a partire dal codice sorgente xserver-xorg-video-ati dei repository di Ubuntu Jaunty che è a sua volta ottenuto da Canonical riadattando l'originale codice sorgente di freedesktop xf86-video-ati,
pertanto...
... non sono in alcun modo da considerare ufficiali né supportate da Canonical, dal momento che non ne esiste ancora una versione così aggiornata nei repository di Intrepid, né vi so dire se mai esisterà. Se decidete di installarli lo fate di vostra iniziativa e assumendovi responsabilità e conseguenze. Inoltre non mi ritengo minimamente responsabile se dopo aver installato i driver il vostro computer inizierà a fumare come una locomotiva, smetterà di funzionare del tutto o se inizierà invece a funzionare due volte meglio di prima (così abbiamo coperto tutto il copribile...
Sono pacchetti distribuiti sotto nessuna licenza per quanto riguarda me personalmente (io li ho solo compilati il che vuol dire che potete farne quel che vi pare senza che io possa impedirvelo o limitarvi in questo) se non quella che gli ha attribuito Canonical e con la quale è distribuito lo stesso Ubuntu.
Se a questo punto siete convinti ad installarli, queste sono le cose che dovete sapere:
- uso personalmente questi driver in sostituzione dei vecchi 6.9.0 dei repository ormai da parecchi giorni e finora non ho avuto alcun problema di nessun tipo.
Sono stabili e funzionano in tutto e per tutto come i radeon 6.9.0 con in più tutti i miglioramenti di questa nuova versione (sì, il tearing è sparito );- ho compilato e allegato per Intrepid Ibex due versioni degli stessi pacchetti, una per sistemi a 32 bit e una per sistemi a 64 bit;
- i driver funzionano per moltissime schede ATI escluse le serie HD per le quali si deve continuare ad usare i Catalyst ufficiali o i radeonhd incluse le ultime schede delle serie HDxxxx. Per quest'ultime tuttavia il supporto al 3D non è ancora completo e quindi non abilitabile (Compiz e le applicazioni 3D in generale non sono quindi ancora utilizzabili con le schede HDxxxx). Per una lista completa delle schede supportate e delle funzioni effettivamente disponibili per ogni scheda vi consiglio di scaricarvi il manuale dei radeon che di volta in volta aggiornerò insieme ai pacchetti: [url=http://radeon_6.12.1.zip]radeon_6.12.1.zip[/url].
Una lista, non più attuale ormai, è quella presente nel Wiki: lista delle schede supportate dai driver open radeon 6.9.0;- la scheda per la quale li uso io è, a titolo informativo, una ATI Radeon x1950 Pro su slot PCI-Ex.
[center]Installazione e utilizzo
[/quote]In questa sezione è descritto come installare e configurare i nuovi radeon 6.10 6.11 6.12.1 dall'inizio fino al loro corretto funzionamento. Tuttavia tenete presente che essendo questi, driver immediatamente successivi ai "vecchi" 6.9, rimane valida, ed è da considerarsi sicuramente più ufficiale di questa discussione, la Guida all'installazione dei radeon open fornita dalla Comunità nel wiki.
Avrete ora su pc due archivi .deb pronti per essere installati, ma prima procediamo con la disinstallazione dei precedenti driver video.
Prima di tutto dovete individuare quali driver state utilizzando attualmente e disinstallarli.
Nel caso di driver Catalyst ufficiali
Li riconoscete aprendo una console e dando il comando:
Codice: Seleziona tutto
fglrxinfoCodice: Seleziona tutto
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon x1950 Pro
OpenGL version string: 2.1.7979 ReleaseDopo aver riavviato il computer e ottenuto uno xorg.conf pulito passate al paragrafo successivo.
Nel caso di driver radeon open versione 6.9.0
Sia che abbiate appena disinstallato i Catalyst ufficiali, sia che non li abbiate mai usati, a questo punto dovete disinstallare le vecchie versioni dei pacchetti xserver-xorg-video-ati e xserver-xorg-video-radeon presenti in Ubuntu di default.
Per fare questo aprite una console e date il comando:
Codice: Seleziona tutto
sudo apt-get --purge remove xserver-xorg-video-ati xserver-xorg-video-radeonCi siamo, a questo punto non riavviate ancora il vostro computer e procedete con l'installazione vera e propria dei nuovi radeon. Partite dal pacchetto xserver-xorg-video-radeon e proseguite con xserver-xorg-video-ati, doppio clic sui due pacchetti, la vostra password, e il gioco è fatto.
I nuovi driver sono stati installati e possiamo procedere con la configurazione dello xorg.conf.
Configurare manualmente lo xorg.conf
Date il comando:
Codice: Seleziona tutto
lspci | grep VGACodice: Seleziona tutto
02:00.0 VGA compatible controller: ATI Technologies Inc RV570 [Radeon X1950 Pro] (rev 9a)Ora date il comando
Codice: Seleziona tutto
sudo gedit /etc/X11/xorg.confCodice: Seleziona tutto
# xorg.conf (X.Org X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# Note that some configuration settings that could be done previously
# in this file, now are automatically configured by the server and settings
# here are ignored.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Device"
Identifier "Configured Device"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Device"
EndSectionCodice: Seleziona tutto
Section "Device"
Identifier "Card0"
Driver "ati"
BoardName "RV570 [Radeon X1950 Pro]"
BusID "PCI:2:0:0"
EndSection- Identifier: è un nome di fantasia che potete dare alla vostra scheda;
- Driver: è la parte essenziale per abilitare i radeon, deve esserci scritto "ati";
- BoardName: lo ricavate dal comando che vi ho fatto copiare e tenere da parte prima, in alternativa potete andare di fantasia;
- BusID: qui invece dovete andare molto meno di fantasia perché questo parametro identifica lo slot della scheda madre su cui la scheda video è inserita, anche questo lo ricavate dal comando precedente e fate molta attenzione a ricopiarlo in modo corretto eliminando gli zeri a sinistra prima della seconda cifra. Mi spiego, se il comando lspci vi restituisce la dicitura 02:00.0, convertite tutto ad una cifra e trasformate quindi in "PCI:2:0:0". La voce "PCI" si usa sia per schede PCI-Ex sia per schede AGP.
Adesso portatevi nella sezione "Screen" e modificatela come di seguito:
Codice: Seleziona tutto
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Card0"
EndSectionSalvate e chiudete lo xorg.conf.
Abbiamo finito! I driver sono installati e lo xorg.conf configurato
Riavviate il computer e una volta effettuato il login aprite una console e date il comando:
Codice: Seleziona tutto
glxinfo | grep vendorCodice: Seleziona tutto
server glx vendor string: SGI
client glx vendor string: SGI
OpenGL vendor string: DRI R300 ProjectOra potete provare a dare anche i seguenti comandi e verificare l'output. Lanciando il seguente comando:
Codice: Seleziona tutto
xvinfoCodice: Seleziona tutto
X-Video Extension version 2.2
screen #0
Adaptor #0: "Radeon Textured Video"
number of ports: 16
port base: 57
operations supported: PutImage
supported visuals:
depth 24, visualID 0x21
number of attributes: 2
"XV_BICUBIC" (range 0 to 2)
client settable attribute
client gettable attribute (current value is 2)
"XV_VSYNC" (range 0 to 1)
client settable attribute
client gettable attribute (current value is 1)
maximum XvImage size: 4096 x 4096
Number of image formats: 4
id: 0x32595559 (YUY2)
guid: 59555932-0000-0010-8000-00aa00389b71
bits per pixel: 16
number of planes: 1
type: YUV (packed)
id: 0x32315659 (YV12)
guid: 59563132-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
id: 0x30323449 (I420)
guid: 49343230-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
id: 0x59565955 (UYVY)
guid: 55595659-0000-0010-8000-00aa00389b71
bits per pixel: 16
number of planes: 1
type: YUV (packed)Codice: Seleziona tutto
glxinfo | grep directCodice: Seleziona tutto
direct rendering: YesCodice: Seleziona tutto
glxgearsAvete già provato a lanciare un film col vostro player preferito, non è vero? (rotfl)
Allora innanzitutto bisogna specificare che la nuova funzione di sincronizzazione verticale per l'uscita video Xv è attiva di default e funziona bene solo con Compiz disattivato.
Se Compiz è disattivato e fate partire un filmato in vlc o qualunque altro lettore multimediale potrete godervi il film senza più tearing!
Se Compiz invece è attivato il tearing ci sarà ancora ma..... non dipenderà più da un problema di sincronizzazione dell'uscita video, bensì dal fatto che il compositore di Compiz continuerà a mostrare tutti i suoi difetti di sincronizzazione con schede ATI e dopo aver corrotto il lavoro certosino dell'uscita video dei nuovi radeon, rispedirà l'immagine così "tearizzata" al player multimediale.
Una mezza delusione quindi?
Niente affatto, perché l'aver risolto il problema a monte, e cioé a livello di uscita Xv, ci permette di "fregare" Compiz e guardare film senza tearing anche con Compiz attivo (good)
Esiste infatti in Compiz un plugin che effettua il re-indirizzamento della finestra attiva (o dello schermo in caso di lettore a schermo intero) e che ci permette quindi di tenere Compiz abilitato e nello stesso tempo "disattivarlo" per un'applicazione a scelta, in altre parole, permette all'applicazione scelta di sfuggire al compositore di Compiz per tutto il tempo che ci serve (la durata del nostro film).
Si imposta così:
- aprite il Gestore configurazione CompizConfig dal menu Sistema > Preferenze;
- cliccate sul plugin Azioni aggiuntive gestore finestre:



Adesso anche con Compiz attivo sarà possibile guardare un film senza più tearing, basterà aprire il lettore multimediale che preferiamo, caricare il film che vogliamo guardare e dopo aver cliccato su play o dopo aver allargato a tutto schermo il player, ricordarsi di premere la combinazione di tasti impostata in Compiz.
n.b.
Il sistema del re-indirizzamento delle finestre è una funzione molto interessante e può tornare utile non solo in questo caso.
Chi di voi usa Blender per fare grafica 3D su Ubuntu forse s'è imbattuto in questa discussione dove per la prima volta ho segnalato la funzione del plugin su questo forum, applicata a tutt'altro ambito.
1 - La nuova funzione di vsync dei radeon 6.10.0 6.11.0 6.12.1 è scritta per funzionare di default sull'uscita video Xv. Questo vuol dire che per poterla usare dovete assicurarvi proprio che l'uscita video di default di Ubuntu sia Xv. Per farlo date da console il comando:
Codice: Seleziona tutto
gstreamer-properties
n.b.
Sebbene importante, scrivo quest'avviso solo qui perché in realtà, provando sulla mia configurazione, ho potuto constatare che con questi driver anche le uscite non accelerate, tipo X11, sono ora trattate in modo diverso e messe in sincrono con il refresh del monitor. In pratica il tearing è sparito anche per le uscite diverse da Xv. Provate pure voi e fatemi sapere.
2 - Esiste in questi nuovi radeon una funzione in grado, sulla carta, di sincronizzare anche il compositore di Compiz. Si chiama EXAVSync e per abilitarla bisogna aggiungere queste righe:
Codice: Seleziona tutto
Option "AccelMethod" "EXA"
Option "EXAVSync" "on"Io l'ho fatto e sinceramente non mi sembra sia cambiato nulla, non so se sbaglio io o semplicemente non funziona ancora bene. Anche in questo caso provate e magari fatemi sapere.
3 - Questo è il mio xorg.conf con le impostazioni che sperimentando ho deciso di lasciare abilitate. Può servire come spunto per iniziare a sperimentare a vostra volta coi diversi parametri configurabili:
Codice: Seleziona tutto
# xorg.conf (X.Org X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# Note that some configuration settings that could be done previously
# in this file, now are automatically configured by the server and settings
# here are ignored.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Device"
Identifier "Card0"
Driver "ati"
BoardName "RV570 [Radeon X1950 Pro]"
BusID "PCI:2:0:0"
Option "AccelMethod" "EXA"
Option "EXAVSync" "on"
Option "AccelDFS" "on"
Option "ColorTiling" "on"
Option "DMAForXv" "on"
Option "DRI" "on"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Card0"
EndSection4 - Esistono molte voci di configurazione valide per settare e ottimizzare i radeon e migliorarne le prestazioni anche di molto. Una di queste è la prima delle due righe che ho postato proprio sopra al secondo punto, ma vi consiglio di darvi una lettura a:
Codice: Seleziona tutto
man radeon5 - Solo più una precisazione sui pacchetti che ho allegato. Sono proprio le versioni che ho usato per me, ricompilate per uso personale quindi non vi stupite se come Mantainer trovate scritto il mio nickname del forum. Ho inoltre modificato la descrizione dei pacchetti per evitare di fare confusione coi pacchetti ufficiali di Ubuntu da Synaptic e ricordare a me, e fare presente a chi li installerà, che questi sono pacchetti ricompilati e non ufficialmente distribuiti da Canonical.




