OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
ビデオのエンコード/デコード

詳細説明

クラス

struct  cv::cudacodec::EncodeQp
 
class  cv::cudacodec::EncoderCallback
 エンコーダコールバックのインターフェイス。 さらに...
 
struct  cv::cudacodec::EncoderParams
 CUDA ビデオエンコーダのための各種パラメータ。 さらに...
 
struct  cv::cudacodec::FormatInfo
 ビデオファイルフォーマットに関する情報を提供する構造体。 : さらに...
 
class  cv::cudacodec::NVSurfaceToColorConverter
 出力カラーフォーマットが ColorFormat::NV_YUV_SURFACE_FORMAT に設定されている場合 (VideoReader::set(ColorFormat::NV_YUV_SURFACE_FORMAT)) に、VideoReader から出力される raw YUV Surface を、要求された ColorFormat に変換するためのクラス。 さらに...
 
class  cv::cudacodec::RawVideoSource
 ビデオのデマルチプレクシングのためのインターフェイス。 : さらに...
 
class  cv::cudacodec::VideoReader
 ビデオリーダのインターフェイス。createVideoReader() を参照。 さらに...
 
struct  cv::cudacodec::VideoReaderInitParams
 VideoReader の初期化パラメータ。 さらに...
 
class  cv::cudacodec::VideoWriter
 ビデオライタのインターフェイス。createVideoWriter() を参照。 さらに...
 

列挙型

enum  cv::cudacodec::BitDepth {
  cv::cudacodec::EIGHT = 0 ,
  cv::cudacodec::SIXTEEN = 1 ,
  cv::cudacodec::UNCHANGED = 2
}
 VideoReader::nextFrame() および VideoReader::retrieve() が返すフレームのビット深度。
さらに...
 
enum  cv::cudacodec::ChromaFormat {
  cv::cudacodec::Monochrome = 0 ,
  cv::cudacodec::YUV420 ,
  cv::cudacodec::YUV422 ,
  cv::cudacodec::YUV444 ,
  cv::cudacodec::NumFormats
}
 cudacodec::VideoReader がサポートするクロマフォーマット。 さらに...
 
enum  cv::cudacodec::Codec {
  cv::cudacodec::MPEG1 = 0 ,
  cv::cudacodec::MPEG2 ,
  cv::cudacodec::MPEG4 ,
  cv::cudacodec::VC1 ,
  cv::cudacodec::H264 ,
  cv::cudacodec::JPEG ,
  cv::cudacodec::H264_SVC ,
  cv::cudacodec::H264_MVC ,
  cv::cudacodec::HEVC ,
  cv::cudacodec::VP8 ,
  cv::cudacodec::VP9 ,
  cv::cudacodec::AV1 ,
  cv::cudacodec::NumCodecs ,
  cv::cudacodec::Uncompressed_YUV420 = (('I' << 24) | ('Y' << 16) | ('U' << 8) | ('V')) ,
  cv::cudacodec::Uncompressed_YV12 = (('Y' << 24) | ('V' << 16) | ('1' << 8) | ('2')) ,
  cv::cudacodec::Uncompressed_NV12 = (('N' << 24) | ('V' << 16) | ('1' << 8) | ('2')) ,
  cv::cudacodec::Uncompressed_YUYV = (('Y' << 24) | ('U' << 16) | ('Y' << 8) | ('V')) ,
  cv::cudacodec::Uncompressed_UYVY = (('U' << 24) | ('Y' << 16) | ('V' << 8) | ('Y'))
}
 cudacodec::VideoReader および cudacodec::VideoWriter がサポートするビデオコーデック。 さらに...
 
enum  cv::cudacodec::ColorFormat {
  cv::cudacodec::UNDEFINED = 0 ,
  cv::cudacodec::BGRA = 1 ,
  cv::cudacodec::BGR = 2 ,
  cv::cudacodec::GRAY = 3 ,
  cv::cudacodec::RGB = 5 ,
  cv::cudacodec::RGBA = 6 ,
  cv::cudacodec::NV_YUV_SURFACE_FORMAT = 7 ,
  cv::cudacodec::NV_NV12 = 4 ,
  cv::cudacodec::NV_YV12 = 8 ,
  cv::cudacodec::NV_IYUV = 9 ,
  cv::cudacodec::NV_YUV444 = 10 ,
  cv::cudacodec::NV_AYUV = 11 ,
  cv::cudacodec::NV_YUV420_10BIT = 12 ,
  cv::cudacodec::NV_YUV444_10BIT = 13
}
 VideoReader::nextFrame() および VideoReader::retrieve() が返すフレームの、あるいは VideoWriter の初期化に用いる ColorFormat。 さらに...
 
enum class  cv::cudacodec::ColorSpaceStandard {
  cv::cudacodec::ColorSpaceStandard::BT709 = 1 ,
  cv::cudacodec::ColorSpaceStandard::Unspecified = 2 ,
  cv::cudacodec::ColorSpaceStandard::Reserved = 3 ,
  cv::cudacodec::ColorSpaceStandard::FCC = 4 ,
  cv::cudacodec::ColorSpaceStandard::BT470 = 5 ,
  cv::cudacodec::ColorSpaceStandard::BT601 = 6 ,
  cv::cudacodec::ColorSpaceStandard::SMPTE240M = 7 ,
  cv::cudacodec::ColorSpaceStandard::YCgCo = 8 ,
  cv::cudacodec::ColorSpaceStandard::BT2020 = 9 ,
  cv::cudacodec::ColorSpaceStandard::BT2020C = 10
}
 VideoReader ソースの Video Signal Description Color Primaries (H265 仕様書のセクション E.2.1 VUI parameters semantics)。 さらに...
 
enum  cv::cudacodec::DeinterlaceMode {
  cv::cudacodec::Weave = 0 ,
  cv::cudacodec::Bob = 1 ,
  cv::cudacodec::Adaptive = 2
}
 デコーダが使用するデインターレースモード。 さらに...
 
enum  cv::cudacodec::EncodeMultiPass {
  cv::cudacodec::ENC_MULTI_PASS_DISABLED = 0x0 ,
  cv::cudacodec::ENC_TWO_PASS_QUARTER_RESOLUTION = 0x1 ,
  cv::cudacodec::ENC_TWO_PASS_FULL_RESOLUTION = 0x2
}
 マルチパスエンコーディング。 さらに...
 
enum  cv::cudacodec::EncodeParamsRcMode {
  cv::cudacodec::ENC_PARAMS_RC_CONSTQP = 0x0 ,
  cv::cudacodec::ENC_PARAMS_RC_VBR = 0x1 ,
  cv::cudacodec::ENC_PARAMS_RC_CBR = 0x2
}
 レート制御モード。 さらに...
 
enum  cv::cudacodec::EncodePreset {
  cv::cudacodec::ENC_PRESET_P1 = 1 ,
  cv::cudacodec::ENC_PRESET_P2 = 2 ,
  cv::cudacodec::ENC_PRESET_P3 = 3 ,
  cv::cudacodec::ENC_PRESET_P4 = 4 ,
  cv::cudacodec::ENC_PRESET_P5 = 5 ,
  cv::cudacodec::ENC_PRESET_P6 = 6 ,
  cv::cudacodec::ENC_PRESET_P7 = 7
}
 Nvidia エンコーディングプリセット。P1 から P7 に進むにつれてパフォーマンスは低下し、品質は向上する。 さらに...
 
enum  cv::cudacodec::EncodeProfile {
  cv::cudacodec::ENC_CODEC_PROFILE_AUTOSELECT = 0 ,
  cv::cudacodec::ENC_H264_PROFILE_BASELINE = 1 ,
  cv::cudacodec::ENC_H264_PROFILE_MAIN = 2 ,
  cv::cudacodec::ENC_H264_PROFILE_HIGH = 3 ,
  cv::cudacodec::ENC_H264_PROFILE_HIGH_444 = 4 ,
  cv::cudacodec::ENC_H264_PROFILE_STEREO = 5 ,
  cv::cudacodec::ENC_H264_PROFILE_PROGRESSIVE_HIGH = 6 ,
  cv::cudacodec::ENC_H264_PROFILE_CONSTRAINED_HIGH = 7 ,
  cv::cudacodec::ENC_HEVC_PROFILE_MAIN = 8 ,
  cv::cudacodec::ENC_HEVC_PROFILE_MAIN10 = 9 ,
  cv::cudacodec::ENC_HEVC_PROFILE_FREXT = 10
}
 サポートされているエンコーダプロファイル。 さらに...
 
enum  cv::cudacodec::EncodeTuningInfo {
  cv::cudacodec::ENC_TUNING_INFO_UNDEFINED = 0 ,
  cv::cudacodec::ENC_TUNING_INFO_HIGH_QUALITY = 1 ,
  cv::cudacodec::ENC_TUNING_INFO_LOW_LATENCY = 2 ,
  cv::cudacodec::ENC_TUNING_INFO_ULTRA_LOW_LATENCY = 3 ,
  cv::cudacodec::ENC_TUNING_INFO_LOSSLESS = 4 ,
  cv::cudacodec::ENC_TUNING_INFO_COUNT
}
 チューニング情報。 さらに...
 
enum  cv::cudacodec::SurfaceFormat {
  cv::cudacodec::SF_NV12 = 0 ,
  cv::cudacodec::SF_P016 = 1 ,
  cv::cudacodec::SF_YUV444 = 2 ,
  cv::cudacodec::SF_YUV444_16Bit = 3
}
 デコーダが出力するビデオサーフェスフォーマット。 さらに...
 
enum class  cv::cudacodec::VideoReaderProps {
  cv::cudacodec::VideoReaderProps::PROP_DECODED_FRAME_IDX = 0 ,
  cv::cudacodec::VideoReaderProps::PROP_EXTRA_DATA_INDEX = 1 ,
  cv::cudacodec::VideoReaderProps::PROP_RAW_PACKAGES_BASE_INDEX = 2 ,
  cv::cudacodec::VideoReaderProps::PROP_NUMBER_OF_RAW_PACKAGES_SINCE_LAST_GRAB = 3 ,
  cv::cudacodec::VideoReaderProps::PROP_RAW_MODE = 4 ,
  cv::cudacodec::VideoReaderProps::PROP_LRF_HAS_KEY_FRAME = 5 ,
  cv::cudacodec::VideoReaderProps::PROP_COLOR_FORMAT = 6 ,
  cv::cudacodec::VideoReaderProps::PROP_UDP_SOURCE = 7 ,
  cv::cudacodec::VideoReaderProps::PROP_ALLOW_FRAME_DROP = 8 ,
  cv::cudacodec::VideoReaderProps::PROP_BIT_DEPTH = 9 ,
  cv::cudacodec::VideoReaderProps::PROP_PLANAR = 10
}
 cv::cudacodec::VideoReader の汎用プロパティ識別子。 さらに...
 

関数

Ptr< NVSurfaceToColorConvertercv::cudacodec::createNVSurfaceToColorConverter (const ColorSpaceStandard colorSpace, const bool videoFullRangeFlag=false)
 NVSurfaceToColorConverter を作成する。
 
Ptr< VideoReadercv::cudacodec::createVideoReader (const Ptr< RawVideoSource > &source, const VideoReaderInitParams params=VideoReaderInitParams())
 
Ptr< VideoReadercv::cudacodec::createVideoReader (const String &filename, const std::vector< int > &sourceParams={}, const VideoReaderInitParams params=VideoReaderInitParams())
 ビデオリーダを作成する。
 
Ptr< cudacodec::VideoWritercv::cudacodec::createVideoWriter (const String &fileName, const Size frameSize, const Codec codec, const double fps, const ColorFormat colorFormat, const EncoderParams &params, Ptr< EncoderCallback > encoderCallback=0, const cuda::Stream &stream=cuda::Stream::Null())
 ビデオライタを作成する。
 
Ptr< cudacodec::VideoWritercv::cudacodec::createVideoWriter (const String &fileName, const Size frameSize, const Codec codec=Codec::H264, const double fps=25.0, const ColorFormat colorFormat=ColorFormat::BGR, Ptr< EncoderCallback > encoderCallback=0, const cuda::Stream &stream=cuda::Stream::Null())
 ビデオライタを作成する。
 
void cv::cudacodec::MapHist (const cuda::GpuMat &hist, Mat &histFull)
 FormatInfo::videoFullRangeFlag == false のときにルマヒストグラムをマッピングする方法を示すユーティリティ関数。
 
bool cv::cudacodec::operator== (const EncoderParams &lhs, const EncoderParams &rhs)
 

列挙型詳解

◆ BitDepth

#include <opencv2/cudacodec.hpp>

VideoReader::nextFrame() および VideoReader::retrieve() が返すフレームのビット深度。

列挙値
EIGHT 

8 ビットのビット深度。

SIXTEEN 

16 ビットのビット深度。

UNCHANGED 

ソースのビット深度を使用する。

◆ ChromaFormat

#include <opencv2/cudacodec.hpp>

cudacodec::VideoReader がサポートするクロマフォーマット。

列挙値
Monochrome 
YUV420 
YUV422 
YUV444 
NumFormats 

◆ Codec

#include <opencv2/cudacodec.hpp>

cudacodec::VideoReader および cudacodec::VideoWriter がサポートするビデオコーデック。

覚え書き
  • サポートはハードウェアに依存する。詳細は Nvidia Video Codec SDK の Video Encode and Decode GPU Support Matrix を参照。
列挙値
MPEG1 
MPEG2 
MPEG4 
VC1 
H264 
JPEG 
H264_SVC 
H264_MVC 
HEVC 
VP8 
VP9 
AV1 
NumCodecs 
Uncompressed_YUV420 

Y,U,V (4:2:0)

Uncompressed_YV12 

Y,V,U (4:2:0)

Uncompressed_NV12 

Y,UV (4:2:0)

Uncompressed_YUYV 

YUYV/YUY2 (4:2:2)

Uncompressed_UYVY 

UYVY (4:2:2)

◆ ColorFormat

#include <opencv2/cudacodec.hpp>

VideoReader::nextFrame() および VideoReader::retrieve() が返すフレームの、あるいは VideoWriter の初期化に用いる ColorFormat。

列挙値
UNDEFINED 
BGRA 

OpenCV カラーフォーマット。VideoReader および VideoWriter

BGR 

OpenCV カラーフォーマット。VideoReader および VideoWriter

GRAY 

OpenCV カラーフォーマット。VideoReader および VideoWriter

RGB 

OpenCV カラーフォーマット。VideoReader および VideoWriter

RGBA 

OpenCV カラーフォーマット。VideoReader および VideoWriter

NV_YUV_SURFACE_FORMAT 

Nvidia デコーダが出力する Nvidia YUV サーフェスフォーマット。SurfaceFormat を参照。VideoReader のみ。

NV_NV12 

Nvidiaバッファ形式 - セミプラナーYUV [Yプレーンに続いてインターリーブされたUVプレーン]。VideoWriter専用。

非推奨
VideoReaderでの使用は非推奨。代わりにNV_YUV_SURFACE_FORMATを使用すること。
NV_YV12 

Nvidia バッファフォーマット - プラナー YUV [Y プレーンの後に V プレーンと U プレーンが続く]。VideoWriter のみ。

NV_IYUV 

Nvidia バッファフォーマット - プラナー YUV [Y プレーンの後に U プレーンと V プレーンが続く]。VideoWriter のみ。

NV_YUV444 

Nvidia バッファフォーマット - プラナー YUV [Y プレーンの後に U プレーンと V プレーンが続く]。VideoWriter のみ。

NV_AYUV 

Nvidia バッファフォーマット - 8 ビットパック A8Y8U8V8。これはワード順のフォーマットで、1 ピクセルは 32 ビットワードで表現され、最下位 8 ビットに V、次の 8 ビットに U、その次の 8 ビットに Y、最上位 8 ビットに A が格納される。VideoWriter のみ。

NV_YUV420_10BIT 

Nvidia バッファフォーマット - 10 ビットセミプラナー YUV [Y プレーンの後にインターリーブされた UV プレーンが続く]。各ピクセルのサイズは 2 バイト。最上位 10 ビットにピクセルデータが格納される。VideoWriter のみ。

NV_YUV444_10BIT 

Nvidia バッファフォーマット - 10 ビットプラナー YUV444 [Y プレーンの後に U プレーンと V プレーンが続く]。各ピクセルのサイズは 2 バイト。最上位 10 ビットにピクセルデータが格納される。VideoWriter のみ。

◆ ColorSpaceStandard

#include <opencv2/cudacodec.hpp>

VideoReader ソースの Video Signal Description Color Primaries (H265 仕様書のセクション E.2.1 VUI parameters semantics)

列挙値
BT709 

高精細テレビ向けの ITU-R BT.709 標準。

Unspecified 

未指定の色空間標準。

Reserved 

将来の使用のために予約済み。

FCC 

FCC 色空間標準。

BT470 

ITU - R BT.470。旧来のアナログテレビシステムで使用される。

BT601 

ITU - R BT.601。標準精細テレビで使用される。

SMPTE240M 

SMPTE 240M。初期の HDTV システムで使用される。

YCgCo 

YCgCo 色空間。一部のビデオ圧縮アルゴリズムで使用される。

BT2020 

ITU - R BT.2020。超高精細テレビで使用される。

BT2020C 

ITU - R BT.2020 Constant Luminance。超高精細テレビで使用される。

◆ DeinterlaceMode

#include <opencv2/cudacodec.hpp>

デコーダが使用するデインターレースモード。

列挙値
Weave 

両フィールドをウィーブする (デインターレースなし)。プログレッシブコンテンツおよびデインターレースを必要としないコンテンツ向け。

Bob 

一方のフィールドを破棄する。

Adaptive 

適応的デインターレースは他のデインターレースモードよりも多くのビデオメモリを必要とする。

◆ EncodeMultiPass

#include <opencv2/cudacodec.hpp>

マルチパスエンコーディング。

列挙値
ENC_MULTI_PASS_DISABLED 

シングルパス。

ENC_TWO_PASS_QUARTER_RESOLUTION 

2 パスエンコードが有効。1 パス目は 1/4 解像度。

ENC_TWO_PASS_FULL_RESOLUTION 

2 パスエンコードが有効。1 パス目はフル解像度。

◆ EncodeParamsRcMode

#include <opencv2/cudacodec.hpp>

レート制御モード。

列挙値
ENC_PARAMS_RC_CONSTQP 

固定 QP モード。

ENC_PARAMS_RC_VBR 

可変ビットレートモード。

ENC_PARAMS_RC_CBR 

固定ビットレートモード。

◆ EncodePreset

#include <opencv2/cudacodec.hpp>

Nvidia エンコーディングプリセット。P1 から P7 に進むにつれてパフォーマンスは低下し、品質は向上する。

列挙値
ENC_PRESET_P1 
ENC_PRESET_P2 
ENC_PRESET_P3 
ENC_PRESET_P4 
ENC_PRESET_P5 
ENC_PRESET_P6 
ENC_PRESET_P7 

◆ EncodeProfile

#include <opencv2/cudacodec.hpp>

サポートされているエンコーダプロファイル。

列挙値
ENC_CODEC_PROFILE_AUTOSELECT 
ENC_H264_PROFILE_BASELINE 
ENC_H264_PROFILE_MAIN 
ENC_H264_PROFILE_HIGH 
ENC_H264_PROFILE_HIGH_444 
ENC_H264_PROFILE_STEREO 
ENC_H264_PROFILE_PROGRESSIVE_HIGH 
ENC_H264_PROFILE_CONSTRAINED_HIGH 
ENC_HEVC_PROFILE_MAIN 
ENC_HEVC_PROFILE_MAIN10 
ENC_HEVC_PROFILE_FREXT 

◆ EncodeTuningInfo

#include <opencv2/cudacodec.hpp>

チューニング情報。

列挙値
ENC_TUNING_INFO_UNDEFINED 

未定義の tuningInfo。エンコードには無効な値。

ENC_TUNING_INFO_HIGH_QUALITY 

レイテンシ許容型エンコード向けのチューニングプリセット。

ENC_TUNING_INFO_LOW_LATENCY 

低レイテンシストリーミング向けのチューニングプリセット。

ENC_TUNING_INFO_ULTRA_LOW_LATENCY 

超低レイテンシストリーミング向けのチューニングプリセット。

ENC_TUNING_INFO_LOSSLESS 

ロスレスエンコード向けのチューニングプリセット。

ENC_TUNING_INFO_COUNT 

◆ SurfaceFormat

#include <opencv2/cudacodec.hpp>

デコーダが出力するビデオサーフェスフォーマット。

列挙値
SF_NV12 

セミプラナー YUV [Y プレーンの後にインターリーブされた UV プレーンが続く]。

SF_P016 

16 ビットセミプラナー YUV [Y プレーンの後にインターリーブされた UV プレーンが続く]。10 ビット (下位 6 ビットは 0)、12 ビット (下位 4 ビットは 0) に使用できる。

SF_YUV444 

プラナー YUV [Y プレーンの後に U プレーンと V プレーンが続く]。

SF_YUV444_16Bit 

16 ビットプラナー YUV [Y プレーンの後に U プレーンと V プレーンが続く]。10 ビット (下位 6 ビットは 0)、12 ビット (下位 4 ビットは 0) に使用できる。

◆ VideoReaderProps

#include <opencv2/cudacodec.hpp>

cv::cudacodec::VideoReader の汎用プロパティ識別子。

列挙値
PROP_DECODED_FRAME_IDX 

retrieve() を用いてデコード済みフレームを取得するためのインデックス。

PROP_EXTRA_DATA_INDEX 

retrieve() を用いてビデオソースに関連付けられた追加データを取得するためのインデックス。

PROP_RAW_PACKAGES_BASE_INDEX 

retrieve() を用いて生のエンコード済みデータを取得するための基準インデックス。

PROP_NUMBER_OF_RAW_PACKAGES_SINCE_LAST_GRAB 

最後の grab() 呼び出し以降に受信した生パケット数。

PROP_RAW_MODE 

raw モードの状態。

PROP_LRF_HAS_KEY_FRAME 

FFmpeg ソースのみ - VideoReader::retrieve() が出力する最後の raw フレーム (LRF) が、VideoReader を raw モードで初期化したときに、キーフレームのエンコード済みデータを含むかどうかを示す。

PROP_COLOR_FORMAT 

デコードされたフレームの ColorFormat。これは nextFrame() および retrieve() の呼び出しごとに変更できる。

PROP_UDP_SOURCE 

VideoReaderInitParams::udpSource の初期化の状態。

PROP_ALLOW_FRAME_DROP 

VideoReaderInitParams::allowFrameDrop の初期化の状態。

PROP_BIT_DEPTH 

デコードされたフレームのビット深度。これは nextFrame() および retrieve() の呼び出しごとに変更できる。

PROP_PLANAR 

true のときプレーナ、false のときパック。これは nextFrame() および retrieve() の呼び出しごとに変更できる。

関数詳解

◆ createNVSurfaceToColorConverter()

Ptr< NVSurfaceToColorConverter > cv::cudacodec::createNVSurfaceToColorConverter ( const ColorSpaceStandard colorSpace,
const bool videoFullRangeFlag = false )

#include <opencv2/cudacodec.hpp>

NVSurfaceToColorConverter を生成する。

引数
colorSpaceコンバータに要求される ColorSpaceStandard
videoFullRangeFlagソースの黒レベル、輝度およびクロマが、ITU-T 仕様の Annex E で定義されているフルレンジと制限レンジ (別名 TV または「アナログ」レンジ) のどちらの値域で表現されているかを示す。

◆ createVideoReader() [1/2]

Ptr< VideoReader > cv::cudacodec::createVideoReader ( const Ptr< RawVideoSource > & source,
const VideoReaderInitParams params = VideoReaderInitParams() )

#include <opencv2/cudacodec.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

引数
sourceユーザーによって実装される RAW ビデオソース。
params初期化パラメータ。cv::cudacodec::VideoReaderInitParams を参照。

◆ createVideoReader() [2/2]

Ptr< VideoReader > cv::cudacodec::createVideoReader ( const String & filename,
const std::vector< int > & sourceParams = {},
const VideoReaderInitParams params = VideoReaderInitParams() )

#include <opencv2/cudacodec.hpp>

ビデオリーダーを生成する。

引数
filename入力ビデオファイルの名前。
sourceParamsVideoCapure へ渡すパラメータ。ビデオ入力の解析には FFMpeg バックエンド (CAP_FFMPEG) を用いた VideoCapture が使用される。sourceParams パラメータでは、(paramId_1, paramValue_1, paramId_2, paramValue_2, ...) のペアとしてエンコードされた追加パラメータを指定できる。cv::VideoCaptureProperties を参照。例えば RTSP ソースからのストリーミング時には CAP_PROP_OPEN_TIMEOUT_MSEC を設定する必要がある場合がある。
params初期化パラメータ。cv::cudacodec::VideoReaderInitParams を参照。

ビデオの読み込みにはFFMPEGが使われる。ユーザーは cudacodec::RawVideoSource を使って独自のデマルチプレクシングを実装できる

◆ createVideoWriter() [1/2]

Ptr< cudacodec::VideoWriter > cv::cudacodec::createVideoWriter ( const String & fileName,
const Size frameSize,
const Codec codec,
const double fps,
const ColorFormat colorFormat,
const EncoderParams & params,
Ptr< EncoderCallback > encoderCallback = 0,
const cuda::Stream & stream = cuda::Stream::Null() )

#include <opencv2/cudacodec.hpp>

ビデオライターを生成する。

引数
fileName出力ビデオファイルの名前。
frameSize入力ビデオフレームのサイズ。
codecCodec::H264 および Codec::HEVC をサポートしている。
fps作成されるビデオストリームのフレームレート。
colorFormatエンコードするフレームの OpenCV カラーフォーマット。
params追加のエンコードパラメータ。
encoderCallbackビデオエンコーダのコールバック。cudacodec::EncoderCallback を参照。エンコード済みビデオストリームを扱う際に必須である。
streamフレームの前処理用ストリーム。

◆ createVideoWriter() [2/2]

Ptr< cudacodec::VideoWriter > cv::cudacodec::createVideoWriter ( const String & fileName,
const Size frameSize,
const Codec codec = Codec::H264,
const double fps = 25.0,
const ColorFormat colorFormat = ColorFormat::BGR,
Ptr< EncoderCallback > encoderCallback = 0,
const cuda::Stream & stream = cuda::Stream::Null() )

#include <opencv2/cudacodec.hpp>

ビデオライターを生成する。

引数
fileName出力ビデオファイルの名前。
frameSize入力ビデオフレームのサイズ。
codecCodec::H264 および Codec::HEVC をサポートしている。
fps作成されるビデオストリームのフレームレート。
colorFormatエンコードするフレームの OpenCV カラーフォーマット。
encoderCallbackビデオエンコーダのコールバック。cudacodec::EncoderCallback を参照。エンコード済みビデオストリームを扱う際に必須である。
streamフレームの前処理用ストリーム。

◆ MapHist()

void cv::cudacodec::MapHist ( const cuda::GpuMat & hist,
Mat & histFull )

#include <opencv2/cudacodec.hpp>

FormatInfo::videoFullRangeFlag == false のときに輝度ヒストグラムをマッピングする方法を示すユーティリティ関数。

引数
histVideoReader::nextFrame(GpuMat& frame, GpuMat& hist, Stream& stream) から返される輝度ヒストグラム hist
histFullcuda::calcHist(InputArray frame, OutputArray hist, Stream& stream) を呼び出した後に hist をダウンロードした場合と等価なホスト側ヒストグラム。
覚え書き
  • この関数は、返されたフレームが ColorFormat::GRAY であった場合に、cuda::calcHist() で得られる結果と等価になるように輝度ヒストグラムを逆マッピングする方法を示す。

◆ operator==()

bool cv::cudacodec::operator== ( const EncoderParams & lhs,
const EncoderParams & rhs )