Lorsque vous avez besoin du passthrough USB sur VirtualBox, vous cherchez naturellement d'abord une solution native. Bien que des logiciels tiers puissent simplifier le processus, Oracle VM VirtualBox propose un support intégré pouvant être configuré manuellement.
VirtualBox dispose d'une fonctionnalité appelée « Webcam Passthrough », permettant au système invité d'accéder et d'utiliser la webcam du système hôte. Cette fonction complète le support général du passthrough USB, qui était auparavant la principale méthode d’accès aux webcams sur VirtualBox.
Sommaire :
La fonction Webcam Passthrough de VirtualBox peut théoriquement gérer des sources vidéo autres que USB. Toutefois, cette capacité n'est pas encore officiellement testée et les résultats peuvent varier selon le matériel et la configuration de l’hôte. Cette information est basée sur la documentation officielle d'Oracle.
Pour appliquer des réglages supplémentaires dans VirtualBox, il est nécessaire d’installer le VirtualBox Extension Pack.
Voici un aperçu des extensions actuellement disponibles dans
À noter : Les modules Webcam Passthrough sont inclus dans le Extension Pack d’Oracle VM VirtualBox, mais celui-ci doit être installé séparément.
Les webcams de l’hôte peuvent être connectées aux VM via : Barre de menu de la VM > Menu Périphériques. Vous trouverez dans le menu Webcam la liste des périphériques vidéo disponibles sur l’hôte. En cliquant sur le nom d’une webcam, elle sera connectée ou déconnectée de la machine virtuelle.
Pour activer le passthrough de la webcam, utilisez l'outil en ligne de commande VBoxManage. Reportez-vous aux sections spécifiques à chaque hôte ci-dessous pour plus d’informations.
Voici les principales commandes disponibles :
Lister les webcams et périphériques vidéo de l’hôte :
$ VBoxManage list webcams
Format de sortie :
Alias= "Nom utilisateur convivial"
Chemin ou identifiant de l’hôte
Un alias est utilisé pour simplifier d’autres commandes.
‘.0’ désigne le périphérique vidéo par défaut de l’hôte, ‘.1’ et ‘.2’ correspondent respectivement aux premier et deuxième périphériques vidéo.
L’ordre des périphériques est propre à chaque machine hôte.
Exécutez la commande suivante :
VBoxManage controlvm "Nom_VM" webcam attach [chemin_hôte|alias [paramètres]]
La webcam USB sera alors attachée à la machine virtuelle invitée.
Les paramètres sont sous forme de chaînes : "Paramètre1=Valeur1", "Paramètre2=Valeur2" , etc. Ces paramètres permettent de configurer la webcam émulée.
Paramètres pris en charge :
MaxFramerate : Fréquence d'images maximale envoyée à la machine invitée. Une fréquence élevée nécessite plus de ressources CPU. Il est conseillé de limiter cette fréquence pour réduire l'utilisation du processeur.
Valeur par défaut : Pas de limite.
MaxPayloadTransferSize : Quantité maximale de données (en octets) que la webcam peut transférer en une seule fois. Valeur par défaut : 3060 octets.
Si la VM supporte des tampons plus grands, augmenter cette valeur peut réduire légèrement la charge CPU. Cependant, il faut vérifier si l’invité prend en charge une taille élevée.
VBoxManage controlvm "Nom_VM" webcam detach [chemin_hôte|alias]
Pour lister les webcams connectées à une VM active :
VBoxManage controlvm "Nom_VM" webcam list
Pour chaque webcam attachée, le résultat affiche l’alias ou le chemin utilisé lors de la commande webcam attach.
VirtualBox Webcam Passthrough : Hôtes Windows
Les webcams émulées se déconnectent automatiquement de la machine invitée lorsque la webcam est débranchée de l’hôte.
VirtualBox Webcam Passthrough : Hôtes Mac OS X
Seules les versions Mac OS X 10.9 ou plus récentes sont compatibles avec la fonction Webcam Passthrough de VirtualBox.
Sur Mac OS, les webcams émulées restent connectées à la machine invitée même si la webcam physique est débranchée. Les utilisateurs doivent donc manuellement déconnecter la webcam en utilisant la commande : VBoxManage controlvm "Nom_VM" webcam detach.
VirtualBox Webcam Passthrough : Hôtes Linux et Oracle Solaris
Sur Linux et Solaris, la déconnexion automatique du périphérique émulé n’a lieu que si la webcam était active en streaming.
Si la webcam n'était pas en activité, il est nécessaire d'effectuer une déconnexion manuelle via : VBoxManage controlvm "Nom_VM" webcam detach.
‘.0’ et ‘.1’ associés à /dev/video0
‘.2’ associé à /dev/video1