![]() |
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 |