CameraFeed¶
继承: RefCounted < Object
摄像机馈送使您可以访问连接到设备的单个物理摄像机。
描述¶
摄像机源使您可以访问连接到设备的单个物理摄像机。启用后,i3D将开始从摄像机捕获帧,然后可以使用。另请参阅CameraServer。
注意:许多摄像机会返回YCbCr图像,这些图像被分成两个纹理,需要在着色器中组合。如果您设置环境以在背景中显示摄像机图像,i3D会自动为您执行此操作。
注意:此类目前仅在Linux、macOS和iOS上实现。在其他平台上没有CameraFeed可用。要在iOS上获得CameraFeed,需要来自i3d-ios-plugins的摄像机插件。
属性¶
|
||
Transform2D |
|
|
|
方法¶
_activate_feed() virtual |
|
void |
_deactivate_feed() virtual |
get_datatype() const |
|
get_id() const |
|
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 |
|
void |
set_position(position: FeedPosition) |
void |
set_rgb_image(rgb_image: Image) |
void |
set_ycbcr_image(ycbcr_image: Image) |
信号¶
format_changed() 🔗
格式更改时发出。
frame_changed() 🔗
当新帧可用时发出。
枚举¶
enum FeedDataType: 🔗
FeedDataType FEED_NOIMAGE = 0
没有为提要设置图像。
FeedDataType FEED_RGB = 1
Feed提供RGB图像。
FeedDataType FEED_YCBCR = 2
Feed提供需要转换为RGB的YCbCr图像。
FeedDataType FEED_YCBCR_SEP = 3
Feed提供需要合并并转换为RGB的单独Y和CbCr图像。
FeedDataType FEED_EXTERNAL = 4
Feed提供外部图像。
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()
提要支持的格式。每个条目都是描述格式参数的Dictionary。
方法说明¶
bool _activate_feed() virtual 🔗
激活摄像机馈送时调用。
void _deactivate_feed() virtual 🔗
当摄像机馈送被停用时调用。
FeedDataType get_datatype() const 🔗
返回馈送图像数据类型。
返回此提要的唯一ID。
返回摄像机的名称。
FeedPosition get_position() const 🔗
返回摄像机在设备上的位置。
int get_texture_tex_id(feed_image_type: FeedImage) 🔗
返回纹理后端ID(可由一些需要纹理句柄以写入数据的外部库使用)。
void set_external(width: int, height: int) 🔗
将提要设置为另一个库提供的外部提要。
bool set_format(index: int, parameters: Dictionary) 🔗
设置formats数组中给定索引的提要格式参数。成功时返回true。默认情况下,YUYV编码流转换为FEED_RGB。YUYV编码流输出格式可以使用parameters更改。产出值:
分开会导致FEED_YCBCR_SEP
灰度将导致去饱和FEED_RGB
复制将导致FEED_YCBCR
设置摄像机的名称。
void set_position(position: FeedPosition) 🔗
设置此摄像机的位置。
void set_rgb_image(rgb_image: Image) 🔗
设置此提要的RGB图像。
void set_ycbcr_image(ycbcr_image: Image) 🔗
为此提要设置YCbCr图像。