![]() |
OpenCV 4.12.0
开源计算机视觉
|
cv::MediaFrame 类表示从外部源获取的图像/媒体帧。 更多...
#include <opencv2/gapi/media.hpp>
类 | |
| 类 | IAdapter |
| MediaFrame 数据适配器的接口类。 更多... | |
| 类 | 查看 |
| 提供对 MediaFrame 的底层数据的访问。 更多... | |
公共类型 | |
| enum class | Access { R , W } |
| using | AdapterPtr = std::unique_ptr<IAdapter> |
公共成员函数 | |
| MediaFrame () | |
| 构造一个空的 MediaFrame。 | |
| MediaFrame (AdapterPtr &&p) | |
| 使用给定的 Adapter 构造一个 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) |
使用给定的 Adapter 参数构造一个 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。
构造的对象没有任何关联的数据。
|
显式 |
使用给定的 Adapter 构造一个 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 |