CameraServer

Наследует: Object

Сервер отслеживает различные камеры, доступные в Godot.

Описание

CameraServer отслеживает различные камеры, доступные в Godot. Это внешние камеры, такие как веб-камеры или камеры на вашем телефоне.

Он в частности используется для предоставления AR-модулям видеопотока с камеры.

Примечание: Этот класс в настоящее время реализован только в Linux, Android, macOS и iOS. На других платформах CameraFeed будет недоступен. Чтобы получить CameraFeed на iOS, требуется плагин камеры из godot-ios-plugins.

Свойства

bool

monitoring_feeds

false

Методы

void

add_feed(feed: CameraFeed)

Array[CameraFeed]

feeds()

CameraFeed

get_feed(index: int)

int

get_feed_count()

void

remove_feed(feed: CameraFeed)


Сигналы

camera_feed_added(id: int) 🔗

Выдается при добавлении CameraFeed (например, при подключении веб-камеры).


camera_feed_removed(id: int) 🔗

Выдается при отключении CameraFeed (например, при отключении веб-камеры).


camera_feeds_updated() 🔗

Выдается при обновлении данных с камер.


Перечисления

enum FeedImage: 🔗

FeedImage FEED_RGBA_IMAGE = 0

Изображение с камеры RGBA.

FeedImage FEED_YCBCR_IMAGE = 0

Изображение с камеры YCbCr.

FeedImage FEED_Y_IMAGE = 0

Изображение камеры Y-компоненты.

FeedImage FEED_CBCR_IMAGE = 1

Изображение с камеры компонента CbCr.


Описания свойств

bool monitoring_feeds = false 🔗

  • void set_monitoring_feeds(value: bool)

  • bool is_monitoring_feeds()

Если true, сервер активно отслеживает доступные видео с камер.

Это влияет на производительность, поэтому устанавливайте значение true только при активном доступе к камере.

Примечание: После установки значения true вы сможете получать обновлённые видео с камер через сигнал camera_feeds_updated.

func _ready():
    CameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated)
    CameraServer.monitoring_feeds = true

func _on_camera_feeds_updated():
    var feeds = CameraServer.feeds()

Описания метода

void add_feed(feed: CameraFeed) 🔗

Добавляет камеру feed на сервер камер.


Array[CameraFeed] feeds() 🔗

Возвращает массив CameraFeed-ов.


CameraFeed get_feed(index: int) 🔗

Возвращает CameraFeed, соответствующий камере с указанным index.


int get_feed_count() 🔗

Возвращает количество зарегистрированных CameraFeed-ов.


void remove_feed(feed: CameraFeed) 🔗

Удаляет указанную камеру feed.