panda-9c.jpg

Les webcams sous Ubuntu

Une webcam (s'il est encore besoin de la présenter) est une petite caméra notamment utilisée pour les vidéos-conférences.
Le support des Webcam sous Linux est plutôt bon et en règle générale les webcams intégrées sont reconnues dès l'installation.
Si vous devez acheter une webcam externe (USB), choisissez de préférence une webcam compatible UVC (USB Video Class).

Vous trouverez ici une liste de webcams testées par la communauté et le niveau de leur compatibilité. Et ici une liste des matériels supportés . L'identifiant USB de votre webcam s'obtient via la commande :

 lsusb 

Utile pour trouver facilement votre webcam dans le tableau.

Par défaut, sous Ubuntu, c'est le module uvcvideo qui gère la webcam. Mais tous les logiciels ne supportent pas certaines webcams, même si le système la reconnaît par la commande lsusb. Camorama est assez restreint à ce sujet, préférez Cheese, qui semble mieux reconnaître les webcams installées.

Via le navigateur

Pour les néophytes, la solution la plus simple et rapide est de tester sa webcam par un site web

gstreamer

Pour vérifier si votre webcam est correctement reconnue, installez le paquet gnome-media puis saisissez dans un terminal :

gstreamer-properties

Cliquer alors sur l'onglet Vidéo puis, dans la partie Entrée par défaut, sur Test. L'image de la webcam devrait s'afficher.

Cette solution ne semble plus possible depuis Ubuntu 16.04 !
En essayant de télécharger ce paquet avec apt-get, j'ai eu le message retour :
Aucune version du paquet gnome-media n'est disponible, mais il existe dans la base de données. Cela signifie en général que le paquet est manquant, qu'il est devenu obsolète ou qu'il n'est disponible que sur une autre source Cependant les paquets suivants le remplacent : gnome-sound-recorder:i386 gnome-sound-recorder E: Le paquet « gnome-media » n'a pas de version susceptible d'être installée

Si gstreamer-properties allume la led de votre webcam mais n'affiche que du noir sur votre écran, vous pouvez alors installer le logiciel Cheese, puis redémarrer votre machine, avant de poursuivre votre recherche de pilote adapté. Ce logiciel semble apporter le support nécessaire pour le bon fonctionnement des webcams.
Si elle n'est pas reconnu automatiquement il peut également être utile d'installer le paquet libpt2.10.10 (Attention les chiffres peuvent varier en fonction de votre version d'Ubuntu.

VLC ou mplayer

Parmi ceux auxquels on ne pense pas forcément, mais qui sont pourtant très utiles pour les tests, figurent aussi mplayer avec la commande suivante :

mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480

ou vlc .

XawTV

XawTV :

$ xawtv -nodga
  • Utiliser son téléphone Android comme webcam :
    • Installer un client Android de webcam. Ex : droidcam
    • Installer DroidCam
      • Via les ppa (voir cette page (en anglais))
      • Manuellement (voir ce site (en anglais))
      • Lancer DroidCam sur Android
      • Lancer DroidCam sur Linux : taper "droidcam" en ligne de commande
      • Suivre les dernières indications… et enjoy…

Webcam pour messagerie instantanée

Voir la page visioconférence.

Prendre des photos/vidéos avec la webcam

  • Cheese : Programme permettant de prendre des photos et vidéos avec une webcam.
  • VLC : Programme de lecture vidéo capable de capturer votre webcam et de réaliser des captures instantanées (menu Vidéo)
  • guvcview : capture vidéo et audio, intéressant pour les webcams qui ne sont pas reconnues par Cheese
  • Camorama: Programme permettant de prendre des photos avec une webcam.
  • XawTV : Programme souvent utilisé pour tester les webcams !
  • TvTime : Programme pour regarder la télévision à partir d'une carte tuner, mais qui peut également utiliser votre webcam comme source.
  • Kamoso: Programme KDE permettant de prendre des photos et vidéos avec une webcam.
  • CamStream: Programme KDE permettant de faire beaucoup de choses avec sa webcam (prendre des photos, vidéos, les envoyer par FTP, vidéo conférences, …).
  • wxCam : logiciel qui permet de filmer et de prendre des photos il gère le déclenchement de mouvement.

Autres

  • Motion, camserv, zoneminder : Logiciels permettant d'utiliser sa webcam en vidéo surveillance et comme détecteur de mouvements.
  • Mjpg-Streamer : Logiciel permettant d'utiliser sa webcam comme caméra-réseau et de l'afficher sur une page Web.
  • webcamstudio : logiciel permettant de simuler une webcam, de lui ajouter des effets,streamer une vidéo où encore de faire fonctionner des webcams réfractaires avec flashplayer ! (Equivalent de ManyCam, WebcamMax, fake webcam).
  • eViacam : contrôler la souris avec des mouvements de la tête.
  • Cameramonitor : surveiller l'état (en marche ou non) de sa Webcam, pour l'installer il suffit d'installer le paquet cameramonitor.
Sous Ubuntu 16.04, il faut télécharger et installer python-support avant d'installer cameramonitor.

Pour tous les modèles

VLC

Le plus facile reste actuellement d'utiliser VLC pour modifier les paramètres de votre webcam. Pour cela :

  • Lancez l'application avec la commande :
    vlc v4l2://
  • Allez dans Outils → Préférences,
  • Cochez en bas à gauche de la fenêtre Paramètres → Tous,
  • Puis dans Lecture et Codecs → Modules d'accès → V4L. Modifiez les paramètres souhaités.

Les paramètres que vous modifiez sont conservés à la sortie du logiciel. Pour les réinitialiser utilisez le bouton en bas de la fenêtre des Préférences Rétablir les préférences.

dov4l

Le paquet dov4l est un programme qui permet de définir et d'interroger les paramètres de périphériques video4linux (luminosité, saturation…) comme les webcams.

Pour les Philips

Reportez-vous à la page setpwc.

Video0 not found

Parfois il suffit d'activer la webcam via la touche fonction + webcam de votre clavier pour que cette dernière fonctionne

Si votre logiciel de webcam vous retourne le message device video0 not found, vous pouvez demander à celui-ci d'ouvrir une webcam précise, en exécutant cette commande (en adaptant le nom de l'application) :

cheese -d /dev/video1

(attention, le chiffre à la fin n'est que indicatif, il peut changer.) FIXME Toujours valable sur des versions récentes d'Ubuntu? Si rien ne fonctionne, créez ce périphérique avec les commandes:

sudo mknod /dev/video0 c 81 0
sudo chmod 666 /dev/video0
sudo ln -s /dev/video0 /dev/video

Webcam à l'envers

Attention, pour ceux qui pensent avoir une image webcam inversée, sachez qu'une image inversée est une image miroir. Donc si l'image de votre webcam donne une image à l'écran comme dans un miroir alors vous avez bien une image inversée.Dans le cas contraire vous n'avez pas de problèmes. Cela peut vous permettre d'éviter de nombreuses heures de recherches inutiles pour des soucis qui n'existent pas… Donc Si vous avez la tête à l'envers sur votre webcam, reportez-vous au indications de la page sur V4L1.

Plusieurs entrées vidéos / définir un numéro d'attribution /dev/xxx fixe

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…

Gérer plusieurs entrées vidéos

Dans les navigateur basé sur Chromium, vous devez selectionner l'entrée vidéo à chaque démarrage de Ubuntu via le lien chrome://settings/content/camera ou manuellement via :

  1. Aller dans les paramètres
  2. Aller dans Paramètres du contenu
  3. Aller dans Appareil photo
  4. Selectionner l'entrée vidéo

Créer un nouveau numéro/lien fixe

Une solution est de créer des liens définitifs, /dev/tuner et /dev/webcam par exemple. Voici comment procéder :

  1. grâce à la commande suivante, notez soigneusement les champs device et vendor :
    udevadm info -a -p /sys/class/video4linux/video0 | grep -e vendor -e device

    (ou video1, selon où est située votre carte)

  2. Puis créez avec les droits d'administration le fichier /etc/udev/rules.d/83-duplicate_devs.rules en y plaçant :
# 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"

en prenant soin de remplacer AAAA et BBBB par les identifiants de votre webcam (cf. Prérequis), et CCCC et DDDD par le valeurs que vous venez d'obtenir.

Peut etre faut il faire quelque chose pour prendre en compte les modifications ?

Problème avec le port USB

Si vous obtenez une image noire et que dans /var/log/messages vous avez un message d'erreur du genre :

Dec  7 15:20:20 cosmos kernel: [ 2174.210525] /build/buildd/linux-ubuntu-modules-2.6.24-2.6.24/debian/build/build-generic/media/gspcav1/gspca_core.c: init isoc: usb_submit_urb(0) ret -28

Essayez de brancher la webcam sur un autre port USB, au besoin en en libérant un.

Webcam n'apparaissant pas dans la liste des périphériques

Si la webcam est désactivée dans le BIOS/UEFI, elle peut ne pas apparaître dans la liste des périphériques. Il faut donc l'activer dans le BIOS/UEFI si on souhaite la voir apparaître dans le liste des périphériques et l'utiliser.

Sur un portable il est possible que la webcam soit désactivée par les touches "Fn".

Ubuntu, y compris dans sa version la plus récente n'intègre pas les dernières versions des pilotes. Il peut être nécessaire de compiler les dernières versions pour voir sa webcam fonctionner.

Voici un lien vers le tutoriel pour compiler les pilotes de webcam (entre autres). (Testé sur Ubuntu 10.04).

  • webcam.txt
  • Dernière modification: Le 04/04/2020, 20:33
  • (modification externe)