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