MythTV master
Classes | Typedefs | Enumerations | Functions | Variables
mythframe.h File Reference
#include <QRect>
#include "libmythbase/mythchrono.h"
#include "libmythtv/mythtvexp.h"
#include <array>
#include <vector>
#include <memory>
Include dependency graph for mythframe.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MythVideoFrame
 

Typedefs

using VideoFrameTypes = std::vector< VideoFrameType >
 
using FramePitches = std::array< int, 3 >
 
using FrameOffsets = std::array< int, 3 >
 
using MythHDRVideoPtr = std::shared_ptr< class MythHDRVideoMetadata >
 

Enumerations

enum  VideoFrameType : std::int8_t {
  FMT_NONE = -1 , FMT_YV12 = 0 , FMT_YUV420P9 = 1 , FMT_YUV420P10 = 2 ,
  FMT_YUV420P12 = 3 , FMT_YUV420P14 = 4 , FMT_YUV420P16 = 5 , FMT_RGB24 = 6 ,
  FMT_BGRA = 7 , FMT_RGB32 = 8 , FMT_ARGB32 = 9 , FMT_RGBA32 = 10 ,
  FMT_YUV422P = 11 , FMT_YUV422P9 = 12 , FMT_YUV422P10 = 13 , FMT_YUV422P12 = 14 ,
  FMT_YUV422P14 = 15 , FMT_YUV422P16 = 16 , FMT_YUV444P = 17 , FMT_YUV444P9 = 18 ,
  FMT_YUV444P10 = 19 , FMT_YUV444P12 = 20 , FMT_YUV444P14 = 21 , FMT_YUV444P16 = 22 ,
  FMT_YUY2 = 23 , FMT_NV12 = 24 , FMT_P010 = 25 , FMT_P016 = 26 ,
  FMT_VDPAU = 27 , FMT_VAAPI = 28 , FMT_DXVA2 = 29 , FMT_MMAL = 30 ,
  FMT_MEDIACODEC = 31 , FMT_VTB = 32 , FMT_NVDEC = 33 , FMT_DRMPRIME = 34
}
 
enum  MythDeintType : std::uint8_t {
  DEINT_NONE = 0x0000 , DEINT_BASIC = 0x0001 , DEINT_MEDIUM = 0x0002 , DEINT_HIGH = 0x0004 ,
  DEINT_CPU = 0x0010 , DEINT_SHADER = 0x0020 , DEINT_DRIVER = 0x0040 , DEINT_ALL = 0x0077
}
 

Functions

MythDeintType operator| (MythDeintType a, MythDeintType b)
 
MythDeintType operator& (MythDeintType a, MythDeintType b)
 
MythDeintType operator~ (MythDeintType a)
 

Variables

static constexpr uint8_t MYTH_WIDTH_ALIGNMENT { 64 }
 
static constexpr uint8_t MYTH_HEIGHT_ALIGNMENT { 16 }
 

Typedef Documentation

◆ FrameOffsets

using FrameOffsets = std::array<int,3>

Definition at line 84 of file mythframe.h.

◆ FramePitches

using FramePitches = std::array<int,3>

Definition at line 83 of file mythframe.h.

◆ MythHDRVideoPtr

using MythHDRVideoPtr = std::shared_ptr<class MythHDRVideoMetadata>

Definition at line 85 of file mythframe.h.

◆ VideoFrameTypes

using VideoFrameTypes = std::vector<VideoFrameType>

Definition at line 82 of file mythframe.h.

Enumeration Type Documentation

◆ MythDeintType

enum MythDeintType : std::uint8_t
Enumerator
DEINT_NONE 
DEINT_BASIC 
DEINT_MEDIUM 
DEINT_HIGH 
DEINT_CPU 
DEINT_SHADER 
DEINT_DRIVER 
DEINT_ALL 

Definition at line 66 of file mythframe.h.

◆ VideoFrameType

enum VideoFrameType : std::int8_t
Enumerator
FMT_NONE 
FMT_YV12 
FMT_YUV420P9 
FMT_YUV420P10 
FMT_YUV420P12 
FMT_YUV420P14 
FMT_YUV420P16 
FMT_RGB24 
FMT_BGRA 
FMT_RGB32 

endian dependent format, ARGB or BGRA

FMT_ARGB32 
FMT_RGBA32 
FMT_YUV422P 
FMT_YUV422P9 
FMT_YUV422P10 
FMT_YUV422P12 
FMT_YUV422P14 
FMT_YUV422P16 
FMT_YUV444P 
FMT_YUV444P9 
FMT_YUV444P10 
FMT_YUV444P12 
FMT_YUV444P14 
FMT_YUV444P16 
FMT_YUY2 
FMT_NV12 
FMT_P010 
FMT_P016 
FMT_VDPAU 
FMT_VAAPI 
FMT_DXVA2 
FMT_MMAL 
FMT_MEDIACODEC 
FMT_VTB 
FMT_NVDEC 
FMT_DRMPRIME 

Definition at line 19 of file mythframe.h.

Function Documentation

◆ operator&()

MythDeintType operator& ( MythDeintType  a,
MythDeintType  b 
)
inline

Definition at line 79 of file mythframe.h.

◆ operator|()

MythDeintType operator| ( MythDeintType  a,
MythDeintType  b 
)
inline

Definition at line 78 of file mythframe.h.

◆ operator~()

MythDeintType operator~ ( MythDeintType  a)
inline

Definition at line 80 of file mythframe.h.

Variable Documentation

◆ MYTH_HEIGHT_ALIGNMENT

constexpr uint8_t MYTH_HEIGHT_ALIGNMENT { 16 }
staticconstexpr

Definition at line 17 of file mythframe.h.

Referenced by MythVideoFrame::GetBufferSize(), and MythVideoFrame::Init().

◆ MYTH_WIDTH_ALIGNMENT

constexpr uint8_t MYTH_WIDTH_ALIGNMENT { 64 }
staticconstexpr

Definition at line 16 of file mythframe.h.