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.
Checking the stable version of the documentation...
CameraFeed
Успадковує: RefCounted < Object
Подача з камери дає вам доступ до однієї фізичної камери, підключеної до вашого пристрою.
Опис
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.
Властивості
|
||
Transform2D |
|
|
|
Методи
_activate_feed() virtual |
|
void |
_deactivate_feed() virtual |
_get_formats() virtual const |
|
_set_format(index: int, parameters: Dictionary) virtual |
|
get_datatype() const |
|
get_id() const |
|
String |
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 |
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) |
Сигнали
format_changed() 🔗
Видається при зміні формату.
frame_changed() 🔗
Випускається, коли доступний новий кадр.
Переліки
enum FeedDataType: 🔗
FeedDataType FEED_NOIMAGE = 0
Для каналу не встановлено зображення.
FeedDataType FEED_RGB = 1
Подача постачає зображення RGB.
FeedDataType FEED_YCBCR = 2
Подача постачає зображення YCbCr, які потрібно перетворити на RGB.
FeedDataType FEED_YCBCR_SEP = 3
Подача подає окремі зображення Y та CbCr, які потрібно об’єднати та перетворити на RGB.
FeedDataType FEED_EXTERNAL = 4
Корм постачає зовнішнє зображення.
enum FeedPosition: 🔗
FeedPosition FEED_UNSPECIFIED = 0
Невизначена позиція.
FeedPosition FEED_FRONT = 1
Камера встановлена на передній частині пристрою.
FeedPosition FEED_BACK = 2
Камера встановлена на задній панелі пристрою.
Описи властивостей
Якщо true, канал активний.
Transform2D feed_transform = Transform2D(1, 0, 0, -1, 0, 1) 🔗
void set_transform(value: Transform2D)
Transform2D get_transform()
Перетворення, застосоване до зображення камери.
Array get_formats()
Формати, які підтримує фід. Кожен запис є Словником, що описує параметри формату.
Описи методів
bool _activate_feed() virtual 🔗
Викликається, коли активовано подачу з камери.
void _deactivate_feed() virtual 🔗
Викликається, коли подача камери вимкнена.
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 🔗
Повертає тип даних зображення каналу.
Повертає унікальний ідентифікатор для цього каналу.
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) 🔗
Встановлює параметри формату стрічки для заданого index у масиві formats. Повертає true у разі успіху. За замовчуванням потік, закодований YUYV, перетворюється на FEED_RGB. Формат виводу потоку, закодованого YUYV, можна змінити, встановивши запис output parameters на одне з наступних значень:
"separate"призведе до FEED_YCBCR_SEP;"grayscale"призведе до ненасиченого FEED_RGB;"copy"призведе до FEED_YCBCR.
void set_name(name: String) 🔗
Встановлює назву камери.
void set_position(position: FeedPosition) 🔗
Встановлює положення цієї камери.
void set_rgb_image(rgb_image: Image) 🔗
Встановлює зображення RGB для цього каналу.
void set_ycbcr_image(ycbcr_image: Image) 🔗
Встановлює зображення YCbCr для цього каналу.
void set_ycbcr_images(y_image: Image, cbcr_image: Image) 🔗
Встановлює зображення Y та CbCr для цього каналу.