Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches

Initialization data to open a video codec stream. More...

Topics

 Value Help
 

Classes

class  kodi::addon::VideoCodecInitdata
 

Enumerations

enum  VIDEOCODEC_FORMAT {
  VIDEOCODEC_FORMAT_UNKNOWN = 0 , VIDEOCODEC_FORMAT_YV12 , VIDEOCODEC_FORMAT_I420 , VIDEOCODEC_FORMAT_YUV420P9 ,
  VIDEOCODEC_FORMAT_YUV420P10 , VIDEOCODEC_FORMAT_YUV420P12 , VIDEOCODEC_FORMAT_YUV422P9 , VIDEOCODEC_FORMAT_YUV422P10 ,
  VIDEOCODEC_FORMAT_YUV422P12 , VIDEOCODEC_FORMAT_YUV444P9 , VIDEOCODEC_FORMAT_YUV444P10 , VIDEOCODEC_FORMAT_YUV444P12 ,
  VIDEOCODEC_FORMAT_MAXFORMATS
}
 The video stream representations requested by Kodi. More...
 
enum  VIDEOCODEC_TYPE {
  VIDEOCODEC_UNKNOWN = 0 , VIDEOCODEC_VP8 , VIDEOCODEC_H264 , VIDEOCODEC_VP9 ,
  VIDEOCODEC_AV1
}
 Video codec types that can be requested from Kodi. More...
 

Functions

VIDEOCODEC_TYPE kodi::addon::VideoCodecInitdata::GetCodecType () const
 The codec type required by Kodi to process the stream.
 
STREAMCODEC_PROFILE kodi::addon::VideoCodecInitdata::GetCodecProfile () const
 Used profiles for non-scalable 2D video.
 
std::vector< VIDEOCODEC_FORMATkodi::addon::VideoCodecInitdata::GetVideoFormats () const
 The video stream representations requested by Kodi.
 
uint32_t kodi::addon::VideoCodecInitdata::GetWidth () const
 Picture width.
 
uint32_t kodi::addon::VideoCodecInitdata::GetHeight () const
 Picture height.
 
const uint8_tkodi::addon::VideoCodecInitdata::GetExtraData () const
 Depending on the required decoding, additional data given by the stream.
 
unsigned int kodi::addon::VideoCodecInitdata::GetExtraDataSize () const
 Size of the data given with extraData.
 
kodi::addon::StreamCryptoSession kodi::addon::VideoCodecInitdata::GetCryptoSession () const
 Data to manage stream cryptography
To get class structure manages any encryption values required in order to have them available in their stream processing.
 

Detailed Description

Initialization data to open a video codec stream.


The following table contains values that can be set with class VideoCodecInitdata :

Name Type Get call
Codec type VIDEOCODEC_TYPE GetCodecType
Codec profile STREAMCODEC_PROFILE GetCodecProfile
Video formats std::vector<VIDEOCODEC_FORMAT> GetVideoFormats
Width uint32_t GetWidth
Height uint32_t GetHeight
Extra data const uint8_t* GetExtraData
Extra data size unsigned int GetExtraDataSize
Crypto session kodi::addon::StreamCryptoSession GetCryptoSession

Enumeration Type Documentation

◆ VIDEOCODEC_FORMAT

The video stream representations requested by Kodi.

Enumerator
VIDEOCODEC_FORMAT_UNKNOWN 

Unknown types, this is used to declare the end of a list of requested types.

VIDEOCODEC_FORMAT_YV12 

YV12 4:2:0 YCrCb planar format.

VIDEOCODEC_FORMAT_I420 

These formats are identical to YV12 except that the U and V plane order is reversed.

VIDEOCODEC_FORMAT_YUV420P9 
VIDEOCODEC_FORMAT_YUV420P10 
VIDEOCODEC_FORMAT_YUV420P12 
VIDEOCODEC_FORMAT_YUV422P9 
VIDEOCODEC_FORMAT_YUV422P10 
VIDEOCODEC_FORMAT_YUV422P12 
VIDEOCODEC_FORMAT_YUV444P9 
VIDEOCODEC_FORMAT_YUV444P10 
VIDEOCODEC_FORMAT_YUV444P12 
VIDEOCODEC_FORMAT_MAXFORMATS 

The maximum value to use in a list.

◆ VIDEOCODEC_TYPE

Video codec types that can be requested from Kodi.

Enumerator
VIDEOCODEC_UNKNOWN 

Unknown or other type requested.

VIDEOCODEC_VP8 

VP8 video coding format

VIDEOCODEC_H264 

Advanced Video Coding (AVC), also referred to as H.264 or MPEG-4 Part 10, Advanced Video Coding (MPEG-4 AVC).

VIDEOCODEC_VP9 

VP9 video coding format

VP9 is the successor to VP8 and competes mainly with MPEG's High Efficiency Video Coding (HEVC/H.265).

VIDEOCODEC_AV1 

AV1 video coding format

AV1 is the successor to VP9 and competes mainly with MPEG's High Efficiency Video Coding (HEVC/H.265).

Function Documentation

◆ GetCodecProfile()

STREAMCODEC_PROFILE kodi::addon::VideoCodecInitdata::GetCodecProfile ( ) const
inline

Used profiles for non-scalable 2D video.

◆ GetCodecType()

VIDEOCODEC_TYPE kodi::addon::VideoCodecInitdata::GetCodecType ( ) const
inline

The codec type required by Kodi to process the stream.

See VIDEOCODEC_TYPE for possible values.

◆ GetCryptoSession()

kodi::addon::StreamCryptoSession kodi::addon::VideoCodecInitdata::GetCryptoSession ( ) const
inline

Data to manage stream cryptography
To get class structure manages any encryption values required in order to have them available in their stream processing.


The following table contains values that can be set with cpp_kodi_addon_inputstream_Defs_Info_StreamCryptoSession :

Name Type Set call Get call
Keysystem for encrypted media STREAM_CRYPTO_KEY_SYSTEM SetKeySystem GetKeySystem
Flags for special conditions uint8_t SetFlags GetFlags
Crypto session key id std::string SetSessionId GetSessionId

◆ GetExtraData()

const uint8_t * kodi::addon::VideoCodecInitdata::GetExtraData ( ) const
inline

Depending on the required decoding, additional data given by the stream.

◆ GetExtraDataSize()

unsigned int kodi::addon::VideoCodecInitdata::GetExtraDataSize ( ) const
inline

Size of the data given with extraData.

◆ GetHeight()

uint32_t kodi::addon::VideoCodecInitdata::GetHeight ( ) const
inline

Picture height.

◆ GetVideoFormats()

std::vector< VIDEOCODEC_FORMAT > kodi::addon::VideoCodecInitdata::GetVideoFormats ( ) const
inline

The video stream representations requested by Kodi.

This contains a list of the required video formats. One of them has to select the addon to return the created image.

◆ GetWidth()

uint32_t kodi::addon::VideoCodecInitdata::GetWidth ( ) const
inline

Picture width.