CameraFeed
Hérite de : RefCounted < Object
Un flux de caméra vous donne accès à une caméra physique qui est connectée à votre appareil.
Description
Un flux de caméra vous donne accès à une seule caméra physique attachée à votre appareil. Lorsque activé, Godot commencera à capturer des trames de la caméra qui peut alors être utilisées. Voir aussi CameraServer.
Note : Beaucoup de caméras renverront des images YCbCr qui sont divisées en deux textures et doivent être combinées dans un shader. Godot fait cela automatiquement pour vous si vous configurez l'environnement pour montrer l'image de la caméra en arrière-plan.
Note : Cette classe est actuellement seulement implémentée sur Linux, Android, macOS et iOS. Sur d'autres plates-formes, aucune CameraFeed ne sera disponible. Pour obtenir un CameraFeed sur iOS, le plugin de caméra de godot-ios-plugins est nécessaire.
Propriétés
|
||
|
||
|
Méthodes
_activate_feed() virtual |
|
void |
_deactivate_feed() virtual |
get_datatype() const |
|
get_id() const |
|
get_name() const |
|
get_position() const |
|
get_texture_tex_id(feed_image_type: FeedImage) |
|
void |
set_external(width: int, height: int) |
set_format(index: int, parameters: Dictionary) |
|
void |
|
void |
set_position(position: FeedPosition) |
void |
set_rgb_image(rgb_image: Image) |
void |
set_ycbcr_image(ycbcr_image: Image) |
Signaux
format_changed() 🔗
Émis lorsque le format a changé.
frame_changed() 🔗
Émis lorsqu'un nouvelle trame est disponible.
Énumérations
enum FeedDataType: 🔗
FeedDataType FEED_NOIMAGE = 0
Aucune image définie pour le flux.
FeedDataType FEED_RGB = 1
Le flux fournis des images au format RGB.
FeedDataType FEED_YCBCR = 2
Le flux fournis des images au format YCbCr qui doivent être converties en RGB.
FeedDataType FEED_YCBCR_SEP = 3
Fournis des images Y et CbCr séparées qui doivent être combinées puis converties en RGB.
FeedDataType FEED_EXTERNAL = 4
Le flux fournit une image externe.
enum FeedPosition: 🔗
FeedPosition FEED_UNSPECIFIED = 0
Position non renseignée.
FeedPosition FEED_FRONT = 1
La caméra est placée à l'avant de l'appareil.
FeedPosition FEED_BACK = 2
La caméra est placée à l'arrière de l'appareil.
Descriptions des propriétés
Si true, le flux est actif.
Transform2D feed_transform = Transform2D(1, 0, 0, -1, 0, 1) 🔗
void set_transform(value: Transform2D)
Transform2D get_transform()
La transformation appliquée à l'image de la camera.
Array get_formats()
Formats supportés par le flux. Chaque entrée est un Dictionary décrivant les paramètres du format.
Descriptions des méthodes
bool _activate_feed() virtual 🔗
Appelée lorsque le flux de la caméra est activé.
void _deactivate_feed() virtual 🔗
Appelée lorsque le flux de la caméra est désactivé.
FeedDataType get_datatype() const 🔗
Renvoie le type de données d'images du flux.
Renvoie l'identifiant unique de ce flux.
Renvoie le nom de la caméra.
FeedPosition get_position() const 🔗
Renvoie la position de la caméra sur cet appareil.
int get_texture_tex_id(feed_image_type: FeedImage) 🔗
Renvoie l'ID de backend de la texture (utilisable par certaines bibliothèques externes qui ont besoin d'une handle vers une texture pour écrire des données).
void set_external(width: int, height: int) 🔗
Définit le flux avec un flux externe fourni par une autre bibliothèque.
bool set_format(index: int, parameters: Dictionary) 🔗
Définit les paramètres du format du flux pour l'index index donné dans le tableau formats. Renvoie true lors du succès. Par défaut, le flux encodé YUYV est transformé en FEED_RGB. Le format de sortie du flux encodé YUYV peut être modifié en définissant l'entrée output de parameters à l'un des éléments suivants :
"separate"résultera en FEED_YCBCR_SEP;"grayscale"résultera en un FEED_RGB dé-saturé;"copy"résultera en FEED_YCBCR.
Définit le nom de la caméra.
void set_position(position: FeedPosition) 🔗
Définit la position de cette caméra.
void set_rgb_image(rgb_image: Image) 🔗
Définit l'image RGB pour ce flux.
void set_ycbcr_image(ycbcr_image: Image) 🔗
Définit l'image YCbCr pour ce flux.