OpenCV 4.11.0
开源计算机视觉
|
cv::MediaFrame 类表示从外部来源获取的图像/媒体帧。 更多…
#include <opencv2/gapi/media.hpp>
类 | |
类 | IAdapter |
MediaFrame 数据适配器的接口类。 更多… | |
类 | View |
提供对MediaFrame 的底层数据的访问。 更多… | |
公共类型 | |
枚举类 | Access { R , W } |
使用 | AdapterPtr = std::unique_ptr<IAdapter> |
公共成员函数 | |
MediaFrame () | |
构造一个空的MediaFrame。 | |
MediaFrame (AdapterPtr &&p) | |
使用给定的适配器构造一个MediaFrame。MediaFrame 获取传递的适配器的所有权。 | |
View | access (Access mode) const |
以给定模式获取对底层数据的访问。 | |
cv::GFrameDesc | desc () const |
返回媒体帧描述符——有关媒体格式、尺寸等信息。 | |
模板<typename T > | |
T * | get () const |
将关联的MediaFrame 适配器转换为特定的适配器类型T ,如果类型不同,则返回 nullptr。 | |
void | serialize (cv::gapi::s11n::IOStream &os) const |
将MediaFrame 的数据序列化为字节数组。 | |
静态公共成员函数 | |
模板<class T , class... Args> | |
静态 cv::MediaFrame | Create (Args &&... args) |
使用适配器的给定参数构造一个MediaFrame。类型为T 的适配器是动态构造的。 | |
cv::MediaFrame 类表示从外部来源获取的图像/媒体帧。
cv::MediaFrame 根据 cv::MediaFormat 指定的格式表示图像数据。cv::MediaFrame 设计为某些外部内存或缓冲区的薄包装器;该类本身提供此类内存的统一接口。cv::MediaFrame 包装来自相机驱动程序或媒体编解码器的数据,并为 G-API 提供此内存的抽象层。MediaFrame 定义了一个紧凑的接口来访问和管理底层数据;实现完全由关联的适配器(通常是用户定义的)定义。
使用 cv::MediaFrame::AdapterPtr = std::unique_ptr<IAdapter> |
|
strong |
此枚举定义了对底层数据提供访问权限的不同类型的cv::MediaFrame。请注意,在此版本中不能组合不同的标志。
枚举器 | |
---|---|
R | 访问数据以进行读取。 |
W | 访问数据以进行写入。 |
cv::MediaFrame::MediaFrame | ( | ) |
构造一个空的MediaFrame。
构造的对象没有任何数据与其关联。
|
显式 |
使用给定的适配器构造一个MediaFrame。MediaFrame 获取传递的适配器的所有权。
p | 指向IAdapter 派生类的实例的唯一指针。 |
以给定模式获取对底层数据的访问。
根据关联的适配器和包装的数据,此方法可能很便宜(例如,底层内存是本地的)或代价高昂(如果底层内存是外部内存或设备内存)。
mode | 一个访问模式标志 |
cv::GFrameDesc cv::MediaFrame::desc | ( | ) | const |
返回媒体帧描述符——有关媒体格式、尺寸等信息。
|
内联 |
将关联的MediaFrame 适配器转换为特定的适配器类型T
,如果类型不同,则返回 nullptr。
如果调用者知道适配器类型,并且需要对内存进行一些较低级别的访问,则此方法可能很有用。根据内存类型,它可能比access() 更有效。
void cv::MediaFrame::serialize | ( | cv::gapi::s11n::IOStream & | os | ) | const |