OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::gapi::wip::onevpl::CfgParam 結構體參考

此公共類用於建立 onevpl::GSource 例項。更多...

#include <opencv2/gapi/streaming/onevpl/cfg_params.hpp>

cv::gapi::wip::onevpl::CfgParam 的協作圖

公共型別

using name_t = std::string
 
using value_t
 

公共成員函式

 CfgParam (CfgParam &&src)
 
 CfgParam (const CfgParam &src)
 
 ~CfgParam(CfgParam解構函式) ()
 
const name_tget_name () const
 
const value_tget_value () const
 
bool is_major () const
 
bool operator!= (const CfgParam &rhs) const
 
bool operator< (const CfgParam &rhs) const
 
CfgParamoperator= (CfgParam &&src)
 
CfgParamoperator= (const CfgParam &src)
 
bool operator== (const CfgParam &rhs) const
 
std::string to_string () const
 

靜態公共成員函式

static constexpr const char * acceleration_mode_name(加速模式名稱) ()
 acceleration_mode_name(加速模式名稱)
 
template<typename ValueType >
static CfgParam create (const std::string &name, ValueType &&value, bool is_major=true)
 
static CfgParam create_acceleration_mode (const char *value)
 
static CfgParam create_acceleration_mode (uint32_t value)
 
static CfgParam create_decoder_id (const char *value)
 
static CfgParam create_decoder_id (uint32_t value)
 
static CfgParam create_frames_pool_size (size_t value)
 
static CfgParam create_implementation (const char *value)
 
static CfgParam create_implementation (uint32_t value)
 
static CfgParam create_vpp_frames_pool_size (size_t value)
 
static CfgParam create_vpp_in_crop_h (uint16_t value)
 
static CfgParam create_vpp_in_crop_w (uint16_t value)
 
static CfgParam create_vpp_in_crop_x (uint16_t value)
 
static CfgParam create_vpp_in_crop_y (uint16_t value)
 
static CfgParam create_vpp_in_height (uint16_t value)
 
static CfgParam create_vpp_in_width (uint16_t value)
 
static CfgParam create_vpp_out_chroma_format (uint16_t value)
 
static CfgParam create_vpp_out_crop_h (uint16_t value)
 
static CfgParam create_vpp_out_crop_w (uint16_t value)
 
static CfgParam create_vpp_out_crop_x (uint16_t value)
 
static CfgParam create_vpp_out_crop_y (uint16_t value)
 
static CfgParam create_vpp_out_fourcc (uint32_t value)
 
static CfgParam create_vpp_out_framerate_d (uint32_t value)
 
static CfgParam create_vpp_out_framerate_n (uint32_t value)
 
static CfgParam create_vpp_out_height (uint16_t value)
 
static CfgParam create_vpp_out_pic_struct (uint16_t value)
 
static CfgParam create_vpp_out_width (uint16_t value)
 
static constexpr const char * decoder_id_name(解碼器ID名稱) ()
 decoder_id_name(解碼器ID名稱)
 
static constexpr const char * frames_pool_size_name(幀池大小名稱) ()
 frames_pool_size_name(幀池大小名稱)
 
static constexpr const char * implementation_name(實現名稱) ()
 
static constexpr const char * vpp_frames_pool_size_name(VPP幀池大小名稱) ()
 
static constexpr const char * vpp_in_crop_h_name(VPP輸入裁剪高度名稱) ()
 
static constexpr const char * vpp_in_crop_w_name(VPP輸入裁剪寬度名稱) ()
 
static constexpr const char * vpp_in_crop_x_name(VPP輸入裁剪X座標名稱) ()
 
static constexpr const char * vpp_in_crop_y_name(VPP輸入裁剪Y座標名稱) ()
 
static constexpr const char * vpp_in_height_name(VPP輸入高度名稱) ()
 
static constexpr const char * vpp_in_width_name(VPP輸入寬度名稱) ()
 
static constexpr const char * vpp_out_chroma_format_name(VPP輸出色度格式名稱) ()
 
static constexpr const char * vpp_out_crop_h_name(VPP輸出裁剪高度名稱) ()
 
static constexpr const char * vpp_out_crop_w_name(VPP輸出裁剪寬度名稱) ()
 
static constexpr const char * vpp_out_crop_x_name(VPP輸出裁剪X座標名稱) ()
 
static constexpr const char * vpp_out_crop_y_name(VPP輸出裁剪Y座標名稱) ()
 
static constexpr const char * vpp_out_fourcc_name(VPP輸出FourCC名稱) ()
 
static constexpr const char * vpp_out_framerate_d_name(VPP輸出幀率分母名稱) ()
 
static constexpr const char * vpp_out_framerate_n_name(VPP輸出幀率分子名稱) ()
 
static constexpr const char * vpp_out_height_name(VPP輸出高度名稱) ()
 
static constexpr const char * vpp_out_pic_struct_name(VPP輸出影像結構名稱) ()
 
static constexpr const char * vpp_out_width_name(VPP輸出寬度名稱) ()
 

詳細描述

此公共類用於建立 onevpl::GSource 例項。

可透過 CfgParam::get_name()CfgParam::get_value() 方法訪問的類成員由 onevpl::GSource 內部邏輯使用,以建立或查詢特定的 OneVPL 實現(軟體/硬體、特定 API 版本等)。

注意
由於 OneVPL 可能提供多個滿足多項(或單項)CfgParam 標準的實現,因此可以配置 preferred(首選)引數。這類 CfgParam 使用 CfgParam::create 方法中的 is_major = false 引數建立,並且不用於建立特定的 OneVPL 實現。相反,它們用於填充“得分表”以從可用列表中選擇更優的實現。將選擇滿足大多數這些可選引數的實現。如果不存在任何可選的 CfgParam 引數,則將應用第一個可用的 OneVPL 實現。有關 OneVPL 配置的使用,請參考 https://spec.oneapi.io/versions/latest/elements/oneVPL/source/API_ref/VPL_disp_api_func.html?highlight=mfxcreateconfig#mfxsetconfigfilterproperty。在此方案中,mfxU8 *name 表示 CfgParam::get_name()mfxVariant valueCfgParam::get_value()

成員 Typedef 文件

◆ name_t

◆ value_t

初始值
cv::util::variant<uint8_t, int8_t,
uint16_t, int16_t,
uint32_t, int32_t,
uint64_t, int64_t,
float_t,
double_t,
void*,
std::string>
定義 variant.hpp:72

建構函式 & 解構函式文件

◆ CfgParam() [1/2]

cv::gapi::wip::onevpl::CfgParam::CfgParam ( const CfgParam & src)

◆ CfgParam() [2/2]

cv::gapi::wip::onevpl::CfgParam::CfgParam ( CfgParam && src)

◆ ~CfgParam()

cv::gapi::wip::onevpl::CfgParam::~CfgParam ( )

成員函式文件

◆ acceleration_mode_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::acceleration_mode_name ( )
inlinestaticconstexpr

acceleration_mode_name(加速模式名稱)

onevp::GSource 的特殊配置引數名稱

注意
acceleration_mode_name 允許啟用硬體加速和裝置記憶體管理。支援的值:
  • MFX_ACCEL_MODE_VIA_D3D11 將啟用 DX11 加速並生成資料分配在 DX11 裝置記憶體中的 MediaFrame

如果未設定,則 MFX 實現將使用預設的加速行為:所有解碼操作都使用預設的 GPU 資源,但 MediaFrame 生成的資料分配在主機 RAM 中

◆ create()

template<typename ValueType >
static CfgParam cv::gapi::wip::onevpl::CfgParam::create ( const std::string & name,
ValueType && ,
bool is_major = true )
inlinestatic

建立通用的 onevp::GSource 配置引數。

引數
name引數名稱。
引數值。
is_major如果引數必須由 OneVPL 內部實現提供,則為 TRUE;如果為可選引數(用於解決多個可用實現),則為 FALSE。

◆ create_acceleration_mode() [1/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_acceleration_mode ( const char * )
static

◆ create_acceleration_mode() [2/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_acceleration_mode ( uint32_t )
static

◆ create_decoder_id() [1/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_decoder_id ( const char * )
static

◆ create_decoder_id() [2/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_decoder_id ( uint32_t )
static

◆ create_frames_pool_size()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_frames_pool_size ( size_t )
static

◆ create_implementation() [1/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_implementation ( const char * )
static

◆ create_implementation() [2/2]

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_implementation ( uint32_t )
static

◆ create_vpp_frames_pool_size()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_frames_pool_size ( size_t )
static

◆ create_vpp_in_crop_h()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_crop_h ( uint16_t )
static

◆ create_vpp_in_crop_w()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_crop_w ( uint16_t )
static

◆ create_vpp_in_crop_x()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_crop_x ( uint16_t )
static

◆ create_vpp_in_crop_y()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_crop_y ( uint16_t )
static

◆ create_vpp_in_height()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_height ( uint16_t )
static

◆ create_vpp_in_width()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_in_width ( uint16_t )
static

◆ create_vpp_out_chroma_format()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_chroma_format ( uint16_t )
static

◆ create_vpp_out_crop_h()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_crop_h ( uint16_t )
static

◆ create_vpp_out_crop_w()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_crop_w ( uint16_t )
static

◆ create_vpp_out_crop_x()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_crop_x ( uint16_t )
static

◆ create_vpp_out_crop_y()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_crop_y ( uint16_t )
static

◆ create_vpp_out_fourcc()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_fourcc ( uint32_t )
static

◆ create_vpp_out_framerate_d()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_framerate_d ( uint32_t )
static

◆ create_vpp_out_framerate_n()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_framerate_n ( uint32_t )
static

◆ create_vpp_out_height()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_height ( uint16_t )
static

◆ create_vpp_out_pic_struct()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_pic_struct ( uint16_t )
static

◆ create_vpp_out_width()

static CfgParam cv::gapi::wip::onevpl::CfgParam::create_vpp_out_width ( uint16_t )
static

◆ decoder_id_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::decoder_id_name ( )
inlinestaticconstexpr

decoder_id_name(解碼器ID名稱)

onevp::GSource 的特殊配置引數名稱

注意
decoder_id_name 允許指定 VPL 解碼器型別,該引數在 RAW 影片輸入資料情況下必須存在,而當影片流封裝在容器(*.mp4、*.mkv 等)中時則不能作為 CfgParam 存在。在後一種情況下,onevp::GSource 將自動確定。支援的值:
  • MFX_CODEC_AVC
  • MFX_CODEC_HEVC
  • MFX_CODEC_MPEG2
  • MFX_CODEC_VC1
  • MFX_CODEC_CAPTURE
  • MFX_CODEC_VP9
  • MFX_CODEC_AV1

◆ frames_pool_size_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::frames_pool_size_name ( )
inlinestaticconstexpr

frames_pool_size_name(幀池大小名稱)

onevp::GSource 的特殊配置引數名稱

注意
frames_pool_size_name 允許分配適當大小的表面池,以便在解碼幀被 onevp::GSource::pull 操作消耗之前,將其儲存在加速器記憶體中。如果您看到大量關於可用表面不足的 WARNING(警告),那麼是時候增加 frames_pool_size_name 了,但請注意加速器可用記憶體容量。如果未設定,則 MFX 實現將使用 mfxFrameAllocRequest::NumFrameSuggested 行為。

◆ get_name()

const name_t & cv::gapi::wip::onevpl::CfgParam::get_name ( ) const

◆ get_value()

const value_t & cv::gapi::wip::onevpl::CfgParam::get_value ( ) const

◆ implementation_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::implementation_name ( )
inlinestaticconstexpr

◆ is_major()

bool cv::gapi::wip::onevpl::CfgParam::is_major ( ) const

◆ operator!=()

bool cv::gapi::wip::onevpl::CfgParam::operator!= ( const CfgParam & rhs) const

◆ operator<()

bool cv::gapi::wip::onevpl::CfgParam::operator< ( const CfgParam & rhs) const

◆ operator=() [1/2]

CfgParam & cv::gapi::wip::onevpl::CfgParam::operator= ( CfgParam && src)

◆ operator=() [2/2]

CfgParam & cv::gapi::wip::onevpl::CfgParam::operator= ( const CfgParam & src)

◆ operator==()

bool cv::gapi::wip::onevpl::CfgParam::operator== ( const CfgParam & rhs) const

◆ to_string()

std::string cv::gapi::wip::onevpl::CfgParam::to_string ( ) const

◆ vpp_frames_pool_size_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_frames_pool_size_name ( )
inlinestaticconstexpr

◆ vpp_in_crop_h_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_crop_h_name ( )
inlinestaticconstexpr

◆ vpp_in_crop_w_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_crop_w_name ( )
inlinestaticconstexpr

◆ vpp_in_crop_x_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_crop_x_name ( )
inlinestaticconstexpr

◆ vpp_in_crop_y_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_crop_y_name ( )
inlinestaticconstexpr

◆ vpp_in_height_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_height_name ( )
inlinestaticconstexpr

◆ vpp_in_width_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_in_width_name ( )
inlinestaticconstexpr

◆ vpp_out_chroma_format_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_chroma_format_name ( )
inlinestaticconstexpr

◆ vpp_out_crop_h_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_crop_h_name ( )
inlinestaticconstexpr

◆ vpp_out_crop_w_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_crop_w_name ( )
inlinestaticconstexpr

◆ vpp_out_crop_x_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_crop_x_name ( )
inlinestaticconstexpr

◆ vpp_out_crop_y_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_crop_y_name ( )
inlinestaticconstexpr

◆ vpp_out_fourcc_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_fourcc_name ( )
inlinestaticconstexpr

◆ vpp_out_framerate_d_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_framerate_d_name ( )
inlinestaticconstexpr

◆ vpp_out_framerate_n_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_framerate_n_name ( )
inlinestaticconstexpr

◆ vpp_out_height_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_height_name ( )
inlinestaticconstexpr

◆ vpp_out_pic_struct_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_pic_struct_name ( )
inlinestaticconstexpr

◆ vpp_out_width_name()

static constexpr const char * cv::gapi::wip::onevpl::CfgParam::vpp_out_width_name ( )
inlinestaticconstexpr

此結構體的文件生成自以下檔案: