Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ov51x [Le 11/11/2007, 14:50]
Skippy le Grand Gourou
— (Version actuelle)
Ligne 1: Ligne 1:
-{{tag>​webcam materiel hercules}} 
----- 
  
- 
- 
-====== Installation du module OV51x ====== 
- 
- 
-===== Introduction ===== 
- 
-Les drivers linux "​officiels"​ ov511 et ov51x ne gèrent pas toujours la décompression JPEG, que nécessitent pourtant certaines webcams afin d'​être utilisées avec les applications ne gérant pas le JPEG (amsn, kopete...). Ce tutoriel portera sur l'​installation du driver ov51x modifié en ce sens (voir [[http://​www.rastageeks.org/​ov51x-jpeg/​index.php/​Main_Page|cette page]]). 
- 
-De nombreuses webcam sont supportées par ce module, notamment la Trust 320 spacecam et les Hercules Deluxe et Classic. Une liste de webams à jour se trouve [[http://​www.ovcam.org/​ov511/​cameras.html|ici]]. 
- 
-NB: L'​installation est probablement la même pour les drivers OV51x/OV511 "​officiels"​ disponibles [[http://​www.ovcam.org/​ov511/​|ici]]. 
- 
-<note importante>​Vous devrez malheureusement refaire ces opérations à chaque nouvelle version du noyau.</​note>​ 
- 
- 
- 
-===== Prérequis ===== 
- 
-=== Support de la webcam === 
-Avant toute chose, soyons certains que notre webcam est supportée par ce module. Tapez dans un terminal : 
-  lsusb 
-Branchez votre webcam, puis retapez la commande précédente. Une nouvelle ligne devrait s'​être ajoutée, du style : 
-  Bus 001 Device 005: ID 05a9:4519 OmniVision Technologies,​ Inc. 
-(tous les chiffres seront sans doute différents,​ ainsi que les noms). Notez les deux suites de chiffres suivant le "​ID"​ (ici, 05a9 et 4519), puis rendez vous sur [[http://​www.ovcam.org/​ov511/​cameras.html#​chipsets|cette page]] pour vérifier (grâce aux deux premières colonnes) que le driver correspondant à votre webcam (dernière colonne) est bien ov51x ou ov511. 
- 
-=== Divers === 
-Vous devez savoir quelle version du noyau vous utilisez. Pour cela, tapez dans une console : 
-  uname -r 
- 
-Vous aurez également besoin des //headers// de votre noyau. Si vous utilisez le noyau fourni par défaut avec Ubuntu, installez-les (si vous avez compilé vous-même votre noyau, vous les avez déjà !) : 
-<​code>​ 
-sudo apt-get install linux-headers-`uname -r` 
-</​code>​ 
- 
-Enfin, il faut installer le compilateur gcc qui va bien, car il n'est pas installé en standard sur Ubuntu : 
-<​code>​ 
-sudo apt-get install gcc 
-</​code>​ 
- 
- 
- 
-===== Noyaux 2.6.17 ou inférieurs ===== 
- 
-<note importante>​La prise en charge des noyaux inférieurs au 2.6.17 a été supprimée depuis la version 1.* du module. Si vous utilisez un tel noyau, vous devez utiliser la version 0.5.4. </​note>​ 
- 
-=== Préparation du module === 
- 
-On télécharge les sources, on les décompresse et on se place dans leur dossier : 
-<​code>​ 
-wget http://​www.rastageeks.org/​downloads/​ov51x-jpeg/​old-releases/​ov51x-jpeg-0.5.4.tar.gz 
-tar -xzvf ov51x-jpeg-0.5.4.tar.gz 
-cd ov51x-jpeg-0.5.4 
-</​code>​ 
- 
- 
-=== Compilation === 
- 
-On compile le module en utilisateur normal et on l'​installe en root : 
-<​code>​ 
-make 
-sudo make install 
-</​code>​ 
- 
- 
-=== Chargement des modules === 
- 
-On vérifie les dépendances : 
- 
-<​code>​ 
-sudo depmod 
-</​code>​ 
- 
-Et on charge le module : 
-<​code>​ 
-sudo modprobe ov51x 
-</​code>​ 
- 
-Et voilà ! La caméra est fonctionnelle. 
- 
-Pour que le module soit chargé automatiquement au démarrage, on rajoute simplement une ligne **ov51x** dans le fichier **/​etc/​modules** (ou **/​etc/​modprobe.conf** pour certaines distributions autres qu'​Ubuntu). 
- 
- 
- 
-===== Noyaux 2.6.18 ou supérieurs ===== 
- 
-C'est le cas (par défaut) des versions d'​Ubuntu supérieures à Feisty Fawn. 
- 
- 
-=== Préparation du module === 
- 
-Il faut tout d'​abord télécharger et préparer le module. Le module est disponible sur [[http://​www.rastageeks.org/​downloads/​ov51x-jpeg/​|rastageeks]] : allez donc y faire un tour pour voir le numéro de la dernière version, que l'on nommera dans la suite XXX). 
- 
-On le télécharge donc, puis on le décompresse et on se place dans le dossier ainsi créé : 
-<​code>​ 
-wget http://​www.rastageeks.org/​downloads/​ov51x-jpeg/​ov51x-jpeg-XXX.tar.gz 
-tar xzvf ov51x-jpeg-XXX.tar.gz 
-cd ov51x-jpeg-XXX 
-</​code>​ 
- 
- 
-=== Compilation === 
- 
-Pour cette étape, les //headers// du noyau sont nécessaires --- ils sont déjà là si l'on a lu correctement les prérequis. 
- 
-<note importante>​Depuis le noyau 2.6.19, le fichier **config.h** est devenu **autoconf.h**. Si vous avez un noyau 2.6.18, vous devez remplacer toutes les ocurrences de **autoconf.h** par **config.h** dans les fichiers du répertoire **ov51x-jpeg-XXX**. On peut le faire manuellement,​ ou on recopie simplement cette ligne qui nous permettra au passage de nous convaincre une fois de plus de la puissance du terminal : 
-<​code>​ grep -l autoconf.h * | xargs sed -i '​s/​autoconf.h/​config.h/​g'​ 
-</​code></​note>​ 
- 
-On compile le module en utilisateur normal et on l'​installe en root : 
-<​code>​ 
-make 
-sudo make install 
-</​code>​ 
- 
- 
-=== Chargement des modules === 
- 
-On vérifie les dépendances,​ puis on charge le module : 
- 
-<​code>​ 
-sudo depmod 
-sudo modprobe ov51x-jpeg 
-</​code>​ 
- 
-Et voilà ! La caméra est fonctionnelle. 
- 
-Le module est normalement chargé automatiquement au démarrage. Toutefois si cela n'​était pas le cas, il suffit de rajouter simplement une ligne **ov51x-jpeg** dans le fichier **/​etc/​modules** (ou **/​etc/​modprobe.conf** pour certaines distributions autres qu'​Ubuntu). 
- 
- 
- 
- 
-===== FAQ ===== 
- 
-==== Video0 not found ==== 
- 
-Si camorama (logiciel utile pour tester cotre webcam) vous retourne le message "​device video0 not found",​ créez ce //device// : 
-<​code>​sudo mknod /dev/video0 c 81 0 
-sudo chmod 666 /dev/video0 
-sudo ln -s /dev/video0 /​dev/​video</​code>​ 
- 
- 
-==== Conflit avec la carte TV (ou autre) ==== 
- 
-Si vous avez plusieurs matériels liés à la vidéo, il peut y avoir des conflits. En effet, un numéro leur est attribué aléatoirement au démarrage. Ce qui fait que si vous avez par exemple une carte tuner et une webcam, elles peuvent se voir attribuer **/​dev/​video0** et **/​dev/​video1** à un démarrage, et l'​inverse à un autre, ce qui peut être assez agaçant à l'​usage... 
- 
-Une solution est de créer des liens définitifs,​ **/​dev/​tuner** et **/​dev/​webcam** par exemple. Voici comment procéder : grâce à la commande suivante, notez soigneusement les champs **device** et **vendor** : 
-  udevinfo -a -p /​sys/​class/​video4linux/​video0 
-(ou video1, selon où est située votre carte) 
- 
-Puis créez le fichier **/​etc/​udev/​rules.d/​83-duplicate_devs.rules** en y plaçant : 
-<​code>#​ Persistent symlinks for webcam and tuner 
-KERNEL=="​video*",​ ATTRS{idProduct}=="​AAAA",​ ATTRS{idVendor}=="​BBBB",​ SYMLINK+="​webcam"​ 
-KERNEL=="​video*",​ ATTRS{device}=="​0xCCCC",​ ATTRS{vendor}=="​0xDDDD",​ SYMLINK+="​tvtuner"</​code>​ 
-en prenant soin de remplacer AAAA et BBBB par les identifiants de votre webcam (cf. [[ov51x#​Prérequis]]),​ et CCCC et DDDD par le valeurs que vous venez d'​obtenir. 
- 
- 
- 
-==== Des Martiens dans Kopete ! ==== 
- 
-Malheureusement,​ utilisé tel quel le module donne pour certaines webcam une image entièrement verte sous kopete. Afin de réparer ce léger désagrément,​ il faut charger le module en forçant la palette à 13 (fonctionne aussi avec 4, bien qu'il semble que ce soit [[http://​www.rastageeks.org/​ov51x-jpeg/​index.php/​FAQ#​My_webcam_image_is_green_under_kopete_for_KDE_3.5....3F.3F|plus gourmand]]). 
- 
-Si vous n'​utilisez votre webcam qu'​avec kopete, il suffit de remplacer dans **/​etc/​modprobe.conf** la ligne : 
-  ov51x-jpeg 
-par 
-  install ov51x-jpeg /​sbin/​modprobe -r ov51x-jpeg; /​sbin/​modprobe ov51x-jpeg force_palette=13;​ 
- 
-Mais si vous souhaitez jongler entre différentes applications (ou ne pas perdre trois heures à vous demander ce qui se passe le jour où vous en essaierez une autre), il va falloir ruser : certains logiciels n'​apprécient pas que la palette soit forcée à 13. Voici donc une petite rustine. 
- 
- 
-{{installation:​warning.png ​ }} 
-> ATTENTION : Cette astuce nécessite d'​autoriser l'​utilisateur à accéder à la commande **/​sbin/​modprobe** sans mot de passe, ce qui constitue une faille de sécurité. Il y a peu de chance pour que votre chat entre cette commande suivie d'un nom de module valide juste en marchant sur votre clavier, mais si c'​était le cas vous pourriez être considéré comme pénalement responsable de toute la misère du monde ! 
- 
-On commence par éditer (en root !) le fichier **/​etc/​modprobe.conf** avec notre éditeur préféré ([[vi]] bien sûr), et on y ajoute les lignes suivantes : 
-<​code>​install ov51x-kopete /​sbin/​modprobe -r ov51x-jpeg; /​sbin/​modprobe ov51x-jpeg force_palette=13;​ 
-remove ov51x-kopete /​sbin/​modprobe -r ov51x-jpeg && /​sbin/​modprobe ov51x-jpeg; 
-</​code>​ 
- 
-Ainsi, charger le module **ov51x-kopete** rechargera en fait **ov51x-jpeg** avec l'​option **force_palette**,​ et le décharger rechargea **ov51x-jpeg** sans option. 
- 
-On va ensuite remplacer la commande **kopete** pour y ajouter le chargement et le déchargement du module personnalisé. Toujours avec notre éditeur préféré, on crée un fichier **kopete_launcher**,​ et on le remplit avec : 
-<​code>#​!/​bin/​bash 
-sudo modprobe ov51x-kopete 
-shift 1 
-/​usr/​bin/​kopete --nofork $@ && sudo modprobe -r ov51x-kopete 
-</​code>​ 
- 
-Puis on le rend exécutable et on crée un lien vers ce fichier dans **/​usr/​bin** : 
-<​code>​chmod +x /​le/​chemin/​vers/​kopete_launcher 
-sudo ln -s /​le/​chemin/​vers/​kopete_launcher /​usr/​bin/​kopete</​code>​ 
- 
-Enfin, comme il a déjà été précisé, vous devez autoriser votre utilisateur à utiliser la commande **modprobe** sans mot de passe (attention, sécurité toussa... [bis]). Pour ce faire, on édite le fichier sudoers : 
-  sudo visudo 
-et on y ajoute (ou on modifie en fonction) : 
-  votre_login ​  ALL = NOPASSWD : /​sbin/​modprobe * 
- 
-Voilà, ça devrait être bon. 
  • ov51x.1194789042.txt.gz
  • Dernière modification: Le 22/12/2007, 19:29
  • (modification externe)