> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/french/function-blocks/blocks-reference/input-output/image-inputs/camera-usb-external.md).

# Camera USB External

Ce bloc de fonction se connecte à une caméra USB externe via son index de périphérique et offre des contrôles flexibles pour la résolution, l'exposition et le streaming d'images en direct. Il convient aux configurations d'automatisation et de production où l'index caméra, la résolution et l'exposition sont pilotés par d'autres blocs ou signaux externes.

## 📥 Inputs

`Activate Signal`\
Utilisez ce booléen pour commencer à récupérer les images depuis la caméra sélectionnée.

`Release Signal`\
Utilisez ce booléen pour arrêter la caméra et libérer ses ressources.

`Camera Index`\
Fournissez un entier pour sélectionner le périphérique caméra (index de périphérique ou mappage d'index scannés).

`Resolution Width`\
Fournissez un entier pour la largeur de capture souhaitée.

`Resolution Height`\
Fournissez un entier pour la hauteur de capture souhaitée.

`Scan Cameras`\
Mettez à true pour rescanner les caméras USB connectées et actualiser la liste des périphériques disponibles.

`Set Exposure`\
Valeur numérique optionnelle pour définir l'exposition manuelle sur la caméra si elle le supporte.

`Set Auto Exposure`\
Valeur numérique optionnelle pour définir le mode d'auto-exposition si la caméra le supporte.

## 📤 Outputs

`Camera Frame`\
La dernière image capturée depuis la caméra USB sélectionnée.

## 🕹️ Controls

`Source / Resolution Info`\
Une étiquette d'état qui affiche la source caméra courante et la résolution active.

Remarque : De nombreux réglages sont exposés comme entrées afin que le bloc puisse être piloté par d'autres blocs ou contrôles UI.

## 🎯 Features

* Sélection de la caméra par index de périphérique ou par la liste scannée, adapté aux systèmes multi-caméras.
* Changement de résolution à l'exécution via des entrées séparées pour largeur et hauteur.
* Contrôle d'exposition manuel et auto-exposition lorsque la caméra et la plateforme le permettent.
* Comportement de redémarrage "soft" : le bloc tente de récupérer des images vides ou erronées en redémarrant automatiquement la caméra.
* Téléverseur d'images en arrière-plan optionnel (si configuré) pour streamer des images à des fins de journalisation ou d'analyse distante.
* Conçu pour les flux de travail headless ou automatisés car la plupart des paramètres sont disponibles via des entrées.

## ⚙️ Mécanisme d'exécution

* Lorsque `Activate Signal` est true, le bloc essaie de délivrer des images via `Camera Frame`.
* Lorsque `Release Signal` est true, le bloc arrête la capture et libère les ressources de la caméra.
* Changer `Camera Index` déclenche l'ouverture du périphérique choisi.
* Fournir `Resolution Width` et `Resolution Height` pendant l'activation tentera de modifier la résolution de capture.
* Fournir `Set Exposure` ou `Set Auto Exposure` tentera d'ajuster les réglages d'exposition si le périphérique le supporte.
* Si le bloc rencontre des images vides ou échouées de façon répétée, il effectuera un cycle de redémarrage pour récupérer la caméra automatiquement.
* Si `Scan Cameras` est activé, le bloc actualise la liste des caméras disponibles (utile lors du branchement de nouveaux dispositifs).

## 📝 Usage instructions

1. Utilisez `Scan Cameras` ou la découverte de caméras de votre système pour lister les périphériques disponibles.
2. Donnez l'index de périphérique désiré à `Camera Index` pour choisir une caméra.
3. Facultatif : définissez `Resolution Width` et `Resolution Height` pour la taille de capture souhaitée.
4. Envoyez `Activate Signal` pour démarrer la capture d'images. Surveillez `Source / Resolution Info` pour l'état courant.
5. Ajustez `Set Exposure` ou `Set Auto Exposure` uniquement si votre caméra prend en charge ces contrôles.
6. Envoyez `Release Signal` lorsque vous avez terminé pour libérer le périphérique.

## 💡 Tips and Tricks

* Pour prévisualiser les images en direct, connectez la sortie `Camera Frame` à un bloc `Show Image` pour un visualiseur interactif.
* Pour sauvegarder des images ou créer un jeu de données, connectez `Camera Frame` à `Image Logger` ou `Record Video`.
* Si la caméra produit des images bruyantes, faites passer les images par `Blur` ou `Denoising` avant de les envoyer aux détecteurs.
* Redimensionnez les captures haute résolution avant un traitement lourd pour améliorer la vitesse : connectez `Camera Frame` à `Image Resize` puis aux blocs d'analyse en aval.
* Pour une analyse basée sur une région, recadrez l'image avec `Image ROI Select` avant d'exécuter des détecteurs comme `Find Object` ou `Object Detection`.
* Combinez avec des blocs IA tels que `Object Detection - Custom` ou `Skeleton Estimation` pour des pipelines d'inférence en direct.
* Utilisez `Scan Cameras` lors du branchement à chaud des caméras pour que le bloc découvre les nouveaux périphériques sans redémarrer tout le système.

## 🛠️ Troubleshooting

* Pas d'images ou images noires/vides :
  * Vérifiez que l'entier fourni à `Camera Index` est correct. Si vous n'êtes pas sûr, lancez un scan avec `Scan Cameras`.
  * Assurez-vous qu'aucune autre application n'utilise la caméra. Libérez-la ou fermez les autres applications puis réessayez.
  * Essayez des résolutions plus faibles via `Resolution Width` et `Resolution Height` — certaines caméras ne peuvent pas streamer des résolutions élevées de manière fiable.
* Les contrôles d'exposition n'ont aucun effet :
  * Toutes les caméras ou plateformes ne gèrent pas l'exposition par programme. Si les réglages ne s'appliquent pas, essayez l'utilitaire du fabricant de la caméra ou utilisez l'étiquette Info du bloc pour confirmer les valeurs actuelles.
* Perte d'images intermittente ou échecs :
  * Essayez un autre port USB ou un hub USB alimenté. Utilisez une résolution plus faible pour réduire la bande passante.
  * Si la récupération automatique ne suffit pas, basculez `Release Signal` puis `Activate Signal` pour forcer un redémarrage complet.
* Caméra non détectée lors du scan :
  * Vérifiez que l'appareil est alimenté et connecté. Rebranchez la caméra et activez `Scan Cameras` à nouveau.
  * Sur certains systèmes, les index de périphériques peuvent changer après un redémarrage ou un rebranchement — utilisez la liste scannée pour sélectionner de manière fiable.

Si les problèmes persistent, prévisualisez les images avec `Show Image` et capturez un court enregistrement avec `Record Video` pour inspecter le comportement et le partager avec le support.
