2011/06/27

Ubuntu sur sa télé - Partie 1 : Se battre avec Nvidia

Hier, j'ai commencé à préparer l'ordinateur que je veux ajouter au cinéma maison familial. Après m'être battu avec deux de mes clefs USB, pendant une partie de la matinée, j'ai été sauvé par un lecteur CD externe qui m'a permis d'installer Ubuntu 11.04 convenablement en début d'après-midi.

La bataille pour l'installation étant gagnée, je suis ensuite allé connecter l'ordinateur sur notre récepteur audio/vidéo qui lui-même est connecté à une télé 60 pouces à rétroprojection. J'ai utilisé la prise HDMI provenant de la carte Nvidia 9600 GS installée dans l'ordinateur. Dès l'allumage, j'étais content de voir que les informations du BIOS s'affichaient bien et que l'image affichée était belle et en 1080i sans avoir à rien sélectionner. Le son était aussi très clair.

Cependant, une fois passé l'écran d'accueil, je me suis retrouvé sur un bureau dont tous les côtés étaient coupés d'environ 5% à 10%, comme si on avait fait un agrandissement sur le centre. Sans m'en douter, la bataille pour les paramètres Nvidia commençait.

Mon premier réflexe a été d'aller voir le gestionnaire de pilotes supplémentaires. Dans Ubuntu, les pilotes de compagnies privées (comme Nvidia) sont rarement installés par défaut. Il faut aller les sélectionner soi-même pour les installer et les activer. En vérifiant ce gestionnaire, je me suis rendu compte, qu'étrangement, le pilote 173 de Nvidia était installé, mais inutilisé.

La deuxième étape a consisté à utiliser le panneau de configuration Nvidia pour voir s'il était possible de régler le problème d'affichage par là. La meilleure manière d'y accèder pour être capable de l'utiliser avec les droits d'administrateurs est de passer par le terminal et de taper sudo nvidia-settings. De cette manière, on aura pas d'erreur si on choisit de sauvegarder nos modifications d'écran en cliquant sur « Save to X Configuration File ». (Pour ceux qui se le demandent, le fichier de configuration est à /etc/X11/xorg.conf)

Le programme nvidia-settings une fois lancé.
Dans cette version du programme, j'ai été incapable de trouvé quelque option que ce soit qui aie un effet sur la perte de pixels qui se produit sur ma télévision.

Avec quelques recherches, j'ai appris comment mettre à jour le pilote Nvidia à une version plus récente grâce à quelques commandes en terminal et au gestionnaire de pilotes supplémentaires. La version que j'ai été en mesure d'installer est la 270.41.19 qui est beaucoup plus récente que la 173. Les commandes que j'ai trouvées sont les suivantes :
sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get install nvidia-current 
(lien externe en anglais : http://www.multimediaboom.com/install-nvidia-driver-ubuntu-1-04-11-10-ppa/)
Normalement, avec la dernière commande, les bons pilotes auraient dû s'installer. Mais, quand j'ai redémarré l'ordinateur, rien n'avais changé à l'écran et nvidia-settings me disait toujours que les pilotes utilisés étaient de la version 173.

Avec un peu plus de recherche, j'en suis arrivé à la conclusion que j'aurais dû désinstaller le pilote 173 avant d'installer le 270 et de vérifier que le pilote à code source libre « Nouveau » soit lui aussi désinstallé puisqu'il est installé par défaut dans Ubuntu 11.04. J'ai donc exécuté la commande suivante :
sudo apt-get --purge remove xserver-xorg-video-nouveau 
qui désinstalle le pilote « Nouveau » (documentation externe en anglais : https://help.ubuntu.com/community/BinaryDriverHowto/Nvidia).

Pour désinstaller le pilote 173, je suis allé dans le gestionnaire de pilotes supplémentaires. Ensuite, j'ai activé le 270 au même endroit en choisissant le pilote Nvidia dit « courant » (ou « current » en anglais). Dans la documentation que j'ai liée précédemment, il est écrit qu'il peut être nécessaire de lancer la commande sudo nvidia-xconfig pour que le pilotes s'initialise complètement après.
Gestionnaire de pilotes supplémentaires (version anglaise)

J'ai redémarré par la suite juste pour être sûr que la modification se soit bien faite (vieille habitude souvent profitable sous Windows, mais souvent inutile sous Linux). J'ai remarqué que l'image affichée était plus belle, mais ça ne réglait par pour autant le problème de coupure des bordures de l'écran. Encore une fois, nvidia-settings ne m'offrait aucune option utile pour régler ce problème.

Après quelques recherches dans la documentation des pilotes de Nvidia, j'ai été incapable de trouver une option qui puisse m'aider même en modifiant manuellement le fichier xorg.conf où sont enregistrés les paramètres de l'écran.

Après toutes mes recherches, je sais maintenant que ma télé fait du « surbalayage » ( « overscan » en anglais ). C'est pour ça que tant de lignes en périphérie de la zone du bureau sont perdues. Je suis déçu du fait que Nvidia n'offre pas dans ses paramètres une option pour régler ce problème.

Nvidia gagne pour l'instant. Ce n'est pas par l'angle du pilote que je vais gagner. Cependant, Linux est plein de ressources et plusieurs autres solutions s'offrent à moi pour pallier le manque d'options offertes par nvidia-settings.

La recherche continue!
xrandr, xvidtune, xorg.conf ? ...

Aucun commentaire:

Publier un commentaire