OpenCV
Open Source Computer Vision
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
cv::cudacodec Namespace Reference

Classes

struct  EncodeQp
 
class  EncoderCallback
 Interface for encoder callbacks. More...
 
struct  EncoderParams
 Different parameters for CUDA video encoder. More...
 
struct  FormatInfo
 Struct providing information about video file format. : More...
 
class  NVSurfaceToColorConverter
 Class for converting the raw YUV Surface output from VideoReader if output color format is set to ColorFormat::NV_YUV_SURFACE_FORMAT (VideoReader::set(ColorFormat::NV_YUV_SURFACE_FORMAT)) to the requested ColorFormat. More...
 
class  RawVideoSource
 Interface for video demultiplexing. : More...
 
class  VideoReader
 Video reader interface, see createVideoReader(). More...
 
struct  VideoReaderInitParams
 VideoReader initialization parameters. More...
 
class  VideoWriter
 Video writer interface, see createVideoWriter(). More...
 

Enumerations

enum  BitDepth {
  EIGHT = 0 ,
  SIXTEEN = 1 ,
  UNCHANGED = 2
}
 Bit depth of the frame returned by VideoReader::nextFrame() and VideoReader::retrieve()
More...
 
enum  ChromaFormat {
  Monochrome = 0 ,
  YUV420 ,
  YUV422 ,
  YUV444 ,
  NumFormats
}
 Chroma formats supported by cudacodec::VideoReader. More...
 
enum  Codec {
  MPEG1 = 0 ,
  MPEG2 ,
  MPEG4 ,
  VC1 ,
  H264 ,
  JPEG ,
  H264_SVC ,
  H264_MVC ,
  HEVC ,
  VP8 ,
  VP9 ,
  AV1 ,
  NumCodecs ,
  Uncompressed_YUV420 = (('I' << 24) | ('Y' << 16) | ('U' << 8) | ('V')) ,
  Uncompressed_YV12 = (('Y' << 24) | ('V' << 16) | ('1' << 8) | ('2')) ,
  Uncompressed_NV12 = (('N' << 24) | ('V' << 16) | ('1' << 8) | ('2')) ,
  Uncompressed_YUYV = (('Y' << 24) | ('U' << 16) | ('Y' << 8) | ('V')) ,
  Uncompressed_UYVY = (('U' << 24) | ('Y' << 16) | ('V' << 8) | ('Y'))
}
 Video codecs supported by cudacodec::VideoReader and cudacodec::VideoWriter. More...
 
enum  ColorFormat {
  UNDEFINED = 0 ,
  BGRA = 1 ,
  BGR = 2 ,
  GRAY = 3 ,
  RGB = 5 ,
  RGBA = 6 ,
  NV_YUV_SURFACE_FORMAT = 7 ,
  NV_NV12 = 4 ,
  NV_YV12 = 8 ,
  NV_IYUV = 9 ,
  NV_YUV444 = 10 ,
  NV_AYUV = 11 ,
  NV_YUV420_10BIT = 12 ,
  NV_YUV444_10BIT = 13
}
 ColorFormat for the frame returned by VideoReader::nextFrame() and VideoReader::retrieve() or used to initialize a VideoWriter. More...
 
enum class  ColorSpaceStandard {
  ColorSpaceStandard::BT709 = 1 ,
  ColorSpaceStandard::Unspecified = 2 ,
  ColorSpaceStandard::Reserved = 3 ,
  ColorSpaceStandard::FCC = 4 ,
  ColorSpaceStandard::BT470 = 5 ,
  ColorSpaceStandard::BT601 = 6 ,
  ColorSpaceStandard::SMPTE240M = 7 ,
  ColorSpaceStandard::YCgCo = 8 ,
  ColorSpaceStandard::BT2020 = 9 ,
  ColorSpaceStandard::BT2020C = 10
}
 Video Signal Description Color Primaries of the VideoReader source (section E.2.1 VUI parameters semantics of H265 spec file) More...
 
enum  DeinterlaceMode {
  Weave = 0 ,
  Bob = 1 ,
  Adaptive = 2
}
 Deinterlacing mode used by decoder. More...
 
enum  EncodeMultiPass {
  ENC_MULTI_PASS_DISABLED = 0x0 ,
  ENC_TWO_PASS_QUARTER_RESOLUTION = 0x1 ,
  ENC_TWO_PASS_FULL_RESOLUTION = 0x2
}
 Multi Pass Encoding. More...
 
enum  EncodeParamsRcMode {
  ENC_PARAMS_RC_CONSTQP = 0x0 ,
  ENC_PARAMS_RC_VBR = 0x1 ,
  ENC_PARAMS_RC_CBR = 0x2
}
 Rate Control Modes. More...
 
enum  EncodePreset {
  ENC_PRESET_P1 = 1 ,
  ENC_PRESET_P2 = 2 ,
  ENC_PRESET_P3 = 3 ,
  ENC_PRESET_P4 = 4 ,
  ENC_PRESET_P5 = 5 ,
  ENC_PRESET_P6 = 6 ,
  ENC_PRESET_P7 = 7
}
 Nvidia Encoding Presets. Performance degrades and quality improves as we move from P1 to P7. More...
 
enum  EncodeProfile {
  ENC_CODEC_PROFILE_AUTOSELECT = 0 ,
  ENC_H264_PROFILE_BASELINE = 1 ,
  ENC_H264_PROFILE_MAIN = 2 ,
  ENC_H264_PROFILE_HIGH = 3 ,
  ENC_H264_PROFILE_HIGH_444 = 4 ,
  ENC_H264_PROFILE_STEREO = 5 ,
  ENC_H264_PROFILE_PROGRESSIVE_HIGH = 6 ,
  ENC_H264_PROFILE_CONSTRAINED_HIGH = 7 ,
  ENC_HEVC_PROFILE_MAIN = 8 ,
  ENC_HEVC_PROFILE_MAIN10 = 9 ,
  ENC_HEVC_PROFILE_FREXT = 10
}
 Supported Encoder Profiles. More...
 
enum  EncodeTuningInfo {
  ENC_TUNING_INFO_UNDEFINED = 0 ,
  ENC_TUNING_INFO_HIGH_QUALITY = 1 ,
  ENC_TUNING_INFO_LOW_LATENCY = 2 ,
  ENC_TUNING_INFO_ULTRA_LOW_LATENCY = 3 ,
  ENC_TUNING_INFO_LOSSLESS = 4 ,
  ENC_TUNING_INFO_COUNT
}
 Tuning information. More...
 
enum  SurfaceFormat {
  SF_NV12 = 0 ,
  SF_P016 = 1 ,
  SF_YUV444 = 2 ,
  SF_YUV444_16Bit = 3
}
 Video surface formats output by the decoder. More...
 
enum class  VideoReaderProps {
  VideoReaderProps::PROP_DECODED_FRAME_IDX = 0 ,
  VideoReaderProps::PROP_EXTRA_DATA_INDEX = 1 ,
  VideoReaderProps::PROP_RAW_PACKAGES_BASE_INDEX = 2 ,
  VideoReaderProps::PROP_NUMBER_OF_RAW_PACKAGES_SINCE_LAST_GRAB = 3 ,
  VideoReaderProps::PROP_RAW_MODE = 4 ,
  VideoReaderProps::PROP_LRF_HAS_KEY_FRAME = 5 ,
  VideoReaderProps::PROP_COLOR_FORMAT = 6 ,
  VideoReaderProps::PROP_UDP_SOURCE = 7 ,
  VideoReaderProps::PROP_ALLOW_FRAME_DROP = 8 ,
  VideoReaderProps::PROP_BIT_DEPTH = 9 ,
  VideoReaderProps::PROP_PLANAR = 10
}
 cv::cudacodec::VideoReader generic properties identifier. More...
 

Functions

Ptr< NVSurfaceToColorConvertercreateNVSurfaceToColorConverter (const ColorSpaceStandard colorSpace, const bool videoFullRangeFlag=false)
 Creates a NVSurfaceToColorConverter.
 
Ptr< VideoReadercreateVideoReader (const Ptr< RawVideoSource > &source, const VideoReaderInitParams params=VideoReaderInitParams())
 
Ptr< VideoReadercreateVideoReader (const String &filename, const std::vector< int > &sourceParams={}, const VideoReaderInitParams params=VideoReaderInitParams())
 Creates video reader.
 
Ptr< cudacodec::VideoWritercreateVideoWriter (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())
 Creates video writer.
 
Ptr< cudacodec::VideoWritercreateVideoWriter (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())
 Creates video writer.
 
void MapHist (const cuda::GpuMat &hist, Mat &histFull)
 Utility function demonstrating how to map the luma histogram when FormatInfo::videoFullRangeFlag == false.
 
bool operator== (const EncoderParams &lhs, const EncoderParams &rhs)