CameraServer
Сервер отслеживает различные камеры, доступные в Reckfell.
Сервер отслеживает различные камеры, доступные в Reckfell.
Класс CameraServer отслеживает различные камеры, доступные в Reckfell. Это внешние камеры, такие как веб-камеры или камеры вашего телефона.
Он используется, в частности, для предоставления модулям дополненной реальности видеопотока с камеры.
Примечание: В настоящее время этот класс реализован только для Linux, Android, macOS и iOS. На других платформах CameraFeed будут недоступны. Чтобы получить CameraFeed на iOS, включите EditorExportPlatformIOS.modules/camera.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Свойства2
MonitoringFeedsСвойство
public static bool MonitoringFeeds { get; set; }Если true, сервер активно отслеживает доступные видео с камер.
Это влияет на производительность, поэтому устанавливайте значение true только при активном доступе к камере.
Примечание: После установки значения true вы сможете получать обновлённые видео с камер через сигнал CameraServer.CameraFeedsUpdated.
public override void _Ready()
{
CameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated;
CameraServer.MonitoringFeeds = true;
}
void OnCameraFeedsUpdated()
{
var feeds = CameraServer.Feeds();
}SingletonСвойство
public static CameraServerInstance Singleton { get; }Методы7
AddFeedvoid
public static void AddFeed(CameraFeed feed);Добавляет камеру feed на сервер камер.
| Имя | Тип | По умолчанию |
|---|---|---|
feed | CameraFeed | — |
FeedsReckfell.Collections.Array<CameraFeed>
public static Reckfell.Collections.Array<CameraFeed> Feeds();Возвращает массив CameraFeed-ов.
Reckfell.Collections.Array<CameraFeed>GetFeedCameraFeed
public static CameraFeed GetFeed(int index);Возвращает CameraFeed, соответствующий камере с указанным index.
| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
CameraFeedGetFeedCountint
public static int GetFeedCount();Возвращает количество зарегистрированных CameraFeed-ов.
intIsMonitoringFeedsbool
public static bool IsMonitoringFeeds();boolRemoveFeedvoid
public static void RemoveFeed(CameraFeed feed);Удаляет указанную камеру feed.
| Имя | Тип | По умолчанию |
|---|---|---|
feed | CameraFeed | — |
SetMonitoringFeedsvoid
public static void SetMonitoringFeeds(bool isMonitoringFeeds);| Имя | Тип | По умолчанию |
|---|---|---|
isMonitoringFeeds | bool | — |
Сигналы и события3
CameraFeedAddedСобытие
public static event CameraServer.CameraFeedAddedEventHandler CameraFeedAdded;Выдается при добавлении CameraFeed (например, при подключении веб-камеры).
| Имя | Тип | По умолчанию |
|---|---|---|
id | long | — |
CameraFeedRemovedСобытие
public static event CameraServer.CameraFeedRemovedEventHandler CameraFeedRemoved;Выдается при отключении CameraFeed (например, при отключении веб-камеры).
| Имя | Тип | По умолчанию |
|---|---|---|
id | long | — |
CameraFeedsUpdatedСобытие
public static event Action CameraFeedsUpdated;Выдается при обновлении данных с камер.
CameraServer.FeedImage
| Значение | Описание |
|---|---|
CbcrImage = 1 | Изображение с камеры компонента CbCr. |
RgbaImage = 0 | Изображение с камеры RGBA. |
YImage = 0 | Изображение камеры Y-компоненты. |
YcbcrImage = 0 | Изображение с камеры YCbCr(https://en.wikipedia.org/wiki/YCbCr). |