Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

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

A camera feed gives you access to a single physical camera attached to your device. When enabled, Godot will start capturing frames from the camera which can then be used. See also CameraServer.

Note: Many cameras will return YCbCr images which are split into two textures and need to be combined in a shader. Godot does this automatically for you if you set the environment to show the camera image in the background.

Note: This class is currently only implemented on Linux, Android, macOS, and iOS. On other platforms no CameraFeeds will be available. To get a CameraFeed on iOS, enable EditorExportPlatformIOS.modules/camera.

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

Array

_get_formats() virtual const

bool

_set_format(index: int, parameters: Dictionary) 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)

void

set_ycbcr_images(y_image: Image, cbcr_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é.


Array _get_formats() virtual const 🔗

Override this method to define supported formats of the camera feed.


bool _set_format(index: int, parameters: Dictionary) virtual 🔗

Override this method to set the format of the camera feed.


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.


void set_ycbcr_images(y_image: Image, cbcr_image: Image) 🔗

Définit les images Y et CbCr pour ce flux.