Le téléphone comme caméraFree

Un téléphone fait souvent une meilleure webcam — avec une application complémentaire, il devient un périphérique caméra qu'Hologramu voit comme n'importe quel autre.

Comment ça marche

Hologramu n'a pas de connexion téléphone à lui, et n'en a pas besoin. Il ouvre les caméras que le système d'exploitation connaît. Une application sur le téléphone et un petit programme sur le PC forment ensemble une caméra virtuelle — dès lors, le téléphone figure dans la liste des périphériques comme une webcam USB, avec tout ce qui va avec : résolution, cadence, place sur la scène, fusion avec d'autres caméras.

Il n'y a donc rien à configurer dans Hologramu, à part le choisir.

Astuce: Un téléphone est surtout précieux comme deuxième caméra. Place-le sur le côté : la webcam de face donne la gauche/droite et le haut/bas, le téléphone de côté donne la profondeur — jusqu'où ta main avance. Place-le ensuite au bon endroit sur la scène, voir Choisir une caméra.

Quelle application ?

VoieTéléphonePCConnexion
DroidCamAndroid, iOSLinux, WindowsUSB ou Wi-Fi
Iriun WebcamAndroid, iOSLinux, WindowsWi-Fi
Caméra connectée (Phone Link)AndroidWindows 11 seulementWi-Fi + Bluetooth
Flux MJPEG + ffmpegn'importe quelle appli de diffusionLinux seulementWi-Fi

DroidCam et Iriun sont la voie courte, valable sur les deux systèmes de téléphone et les deux systèmes de PC. La voie ffmpeg n'exige aucun client tiers sur le PC, mais demande un peu de travail manuel.

L'USB bat le Wi-Fi. Les deux fonctionnent, mais par câble l'image est nettement plus directe, elle ne se coupe pas quand quelqu'un d'autre se met à diffuser dans la maison, et le téléphone se recharge au passage. Pour le suivi, le retard compte plus que la résolution.

Linux : le périphérique caméra virtuelLinux

Sous Linux, il faut un périphérique dans lequel le logiciel du PC puisse écrire l'image du téléphone. C'est le rôle du module noyau v4l2loopback : il crée un /dev/video* supplémentaire qui ressemble à une caméra pour tous les autres programmes.

bash
# Arch, Manjaro, EndeavourOS
sudo pacman -S v4l2loopback-dkms v4l-utils

# Debian, Ubuntu, Linux Mint, Pop!_OS
sudo apt install v4l2loopback-dkms v4l-utils

# Fedora (RPM Fusion « free » doit être activé)
sudo dnf install akmod-v4l2loopback v4l-utils

# openSUSE
sudo zypper install v4l2loopback-kmp-default v4l-utils

v4l-utils n'est pas obligatoire, mais il apporte v4l2-ctl — l'outil qui dit si le périphérique est vraiment là.

Attention: Les paquets DKMS compilent le module pour ton noyau en cours et ont besoin de ses en-têtes. S'ils manquent, l'installation s'arrête sur une erreur de compilation. Arch : sudo pacman -S linux-headers (pour d'autres noyaux, linux-zen-headers, linux-lts-headers). Debian/Ubuntu : sudo apt install linux-headers-$(uname -r).

Charger le module et nommer le périphérique :

bash
sudo modprobe v4l2loopback video_nr=10 card_label="Telephone" exclusive_caps=1

Le périphérique s'appelle alors /dev/video10 et apparaît dans Hologramu sous « Telephone ». Sans video_nr, le module choisit lui-même un numéro libre.

Pour qu'il soit là à chaque démarrage :

bash
echo v4l2loopback | sudo tee /etc/modules-load.d/v4l2loopback.conf
echo 'options v4l2loopback video_nr=10 card_label="Telephone" exclusive_caps=1' \
  | sudo tee /etc/modprobe.d/v4l2loopback.conf

Vérifier :

bash
lsmod | grep v4l2loopback
v4l2-ctl --list-devices

Remarque: exclusive_caps=1 signifie que le périphérique ne se déclare caméra qu'à partir du moment où quelque chose y écrit vraiment. Hologramu masque les périphériques incapables de fournir des images — le périphérique virtuel n'apparaît donc dans la liste qu'une fois la liaison avec le téléphone établie. L'ordre est donc : lancer l'appli du téléphone, connecter le programme du PC, puis choisir la caméra dans Hologramu. Sans exclusive_caps=1, il est toujours dans la liste, mais ne rend que des images noires tant que rien n'émet.

Brancher le téléphone en USBLinux

Nécessaire seulement pour la voie câblée — le Wi-Fi n'a besoin de rien de tout cela.

bash
# Android (ADB)
sudo pacman -S android-tools        # Arch
sudo apt install adb                # Debian, Ubuntu
sudo dnf install android-tools      # Fedora
sudo zypper install android-tools   # openSUSE

# iPhone (usbmuxd)
sudo pacman -S usbmuxd              # Arch
sudo apt install usbmuxd            # Debian, Ubuntu
sudo dnf install usbmuxd            # Fedora
sudo zypper install usbmuxd         # openSUSE

Sur le téléphone Android, il faut pour cela activer les options pour les développeurs et, dedans, le débogage USB ; au premier branchement, le téléphone demande s'il doit faire confiance à l'ordinateur. Sur un iPhone, le classique « Faire confiance à cet ordinateur » suffit.

Installer DroidCam

Fonctionne sur Android et iOS, se connecte par câble ou par Wi-Fi.

  1. Installer DroidCam sur le téléphone depuis le Play Store ou l'App Store.
  2. Récupérer le client correspondant sur dev47apps.com. Sous Arch, il existe aussi en paquet AUR droidcam.
  3. Décompresser et installer le client Linux :
bash
cd /tmp
unzip droidcam_latest.zip -d droidcam
cd droidcam
sudo ./install-client
  1. DroidCam apporte son propre module loopback (sudo ./install-video). Si v4l2loopback est déjà installé, il est inutile — avoir les deux ne pose pas de problème non plus, cela fait simplement deux périphériques virtuels.
  2. Ouvrir l'appli sur le téléphone, lancer le client sur le PC, choisir USB ou WiFi. En Wi-Fi, l'appli affiche une adresse IP à saisir sur le PC.

Installer Iriun

Ne se connecte qu'en Wi-Fi, mais sans adresse à taper : le client et le téléphone se trouvent tout seuls sur le même réseau.

  1. Installer Iriun Webcam sur le téléphone (Android ou iOS).
  2. Télécharger le client sur iriun.com — il existe un .deb et un .rpm. On installe le .deb avec sudo apt install ./iriunwebcam-*.deb, qui résout les dépendances au passage, contrairement à dpkg -i.
  3. v4l2loopback est requis, voir plus haut.
  4. Mettre les deux appareils sur le même Wi-Fi, ouvrir l'appli et le client — la liaison se fait d'elle-même.

Sans client tiers sur le PC : flux MJPEGLinux

Si tu préfères ne pas installer de client propriétaire : beaucoup d'applis caméra proposent simplement le flux sous forme d'adresse web — sous Android IP Webcam, sous iOS des applis qui offrent du MJPEG ou du RTSP. L'adresse est affichée dans l'appli (par ex. http://192.168.1.42:8080/video). ffmpeg pousse ce flux dans le périphérique virtuel :

bash
ffmpeg -i http://192.168.1.42:8080/video -vf format=yuv420p -f v4l2 /dev/video10

Cette fenêtre doit rester ouverte pendant tout le suivi. Installer ffmpeg :

bash
sudo pacman -S ffmpeg        # Arch
sudo apt install ffmpeg      # Debian, Ubuntu
sudo dnf install ffmpeg      # Fedora (RPM Fusion)
sudo zypper install ffmpeg   # openSUSE (Packman)

Remarque: ffmpeg n'est pas fourni avec Hologramu et n'est utilisé que s'il est déjà présent sur le système. Cette installation te sert de toute façon si tu veux enregistrer des clips avec le son dans un seul fichier.

WindowsWindows

Sous Windows, il n'y a ni module ni gestionnaire de paquets entre les deux : les clients de DroidCam, Iriun ou Camo déclarent eux-mêmes une caméra au système lors de leur installation. Ensuite, elle figure dans la liste d'Hologramu.

Windows 11 sait aussi le faire sans logiciel supplémentaire : dans les paramètres, sous Bluetooth et appareils → Appareils mobiles, un téléphone Android appairé peut être partagé comme caméra connectée. Cela suppose un Windows 11 à jour, l'appli Lien avec Windows sur le téléphone et le Bluetooth activé ; l'image, elle, passe par le Wi-Fi. Il n'y a pas d'équivalent pour les iPhone — là, il reste DroidCam, Iriun ou Camo.

Le choisir dans Hologramu

Dans l'avatar, sous Suivi → Caméras, sélectionne le périphérique virtuel. Il porte le nom que tu lui as donné, ou celui du client (« DroidCam », « Iriun »).

  • Image (résolution / cadence) — les périphériques virtuels ne proposent souvent qu'un seul format. Laisse le réglage sur Automatique et fixe la résolution là où elle naît : dans l'appli du téléphone. Le 720p suffit largement ; MediaPipe travaille de toute façon sur une image plus petite, et chaque pixel en plus ne coûte que de la bande passante.
  • Angle et hauteur — si le téléphone est de côté ou sur un trépied au-dessus de toi, amène-le là sur la scène. Le suivi retire alors cette inclinaison au lieu de la transmettre à ton avatar.
  • Cadence — plus importante que la résolution. En dessous d'environ 20 images par seconde, le mouvement devient visiblement pâteux.

Quand ça ne marche pas

SymptômeCause
Périphérique absent de la listeLa liaison avec le téléphone n'est pas encore établie (voir exclusive_caps=1 plus haut)
Périphérique toujours absentModule non chargé — vérifier avec lsmod, sinon sudo modprobe v4l2loopback
Disparu après une mise à jour du noyauReconstruire via DKMS : sudo dkms autoinstall, installer les en-têtes si besoin
Le téléphone et le PC ne se trouvent pasRéseaux différents, Wi-Fi invité, ou isolation des clients dans le routeur
L'image saccade ou traîneWi-Fi 2,4 GHz, résolution trop haute — ou passe directement en USB
La caméra reste noireUne autre appli occupe la caméra du téléphone ; relance l'appli de diffusion

Astuce: Un téléphone qui diffuse pendant une heure chauffe et se vide. Au câble, les deux problèmes se règlent d'un coup.