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

bool

feed_is_active

false

Transform2D

feed_transform

Transform2D(1, 0, 0, -1, 0, 1)

Array

formats

[]

Méthodes

bool

_activate_feed() virtual

void

_deactivate_feed() virtual

FeedDataType

get_datatype() const

int

get_id() const

String

get_name() const

FeedPosition

get_position() const

int

get_texture_tex_id(feed_image_type: FeedImage)

void

set_external(width: int, height: int)

bool

set_format(index: int, parameters: Dictionary)

void

set_name(name: String)

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

bool feed_is_active = false 🔗

  • void set_active(value: bool)

  • bool is_active()

Si true, le flux est actif.


Transform2D feed_transform = Transform2D(1, 0, 0, -1, 0, 1) 🔗

La transformation appliquée à l'image de la camera.


Array 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.


int get_id() const 🔗

Renvoie l'identifiant unique de ce flux.


String get_name() const 🔗

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 :


void set_name(name: String) 🔗

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.