FFmpeg
Loading...
Searching...
No Matches
hwcontext_rkmpp.h File Reference
#include <stddef.h>
#include <stdint.h>
#include <drm_fourcc.h>
#include <rockchip/rk_mpi.h>
#include "hwcontext_drm.h"

Go to the source code of this file.

Data Structures

struct  AVRKMPPDRMFrameDescriptor
 DRM Prime Frame descriptor for RKMPP HWDevice. More...
struct  AVRKMPPFramesContext
 RKMPP-specific data associated with a frame pool. More...
struct  AVRKMPPDeviceContext
 RKMPP device details. More...

Macros

#define DRM_FORMAT_P010   fourcc_code('P', '0', '1', '0')
#define DRM_FORMAT_P210   fourcc_code('P', '2', '1', '0')
#define DRM_FORMAT_NV15   fourcc_code('N', 'V', '1', '5')
#define DRM_FORMAT_NV20   fourcc_code('N', 'V', '2', '0')
#define DRM_FORMAT_YUV420_8BIT   fourcc_code('Y', 'U', '0', '8')
#define DRM_FORMAT_YUV420_10BIT   fourcc_code('Y', 'U', '1', '0')
#define DRM_FORMAT_Y210   fourcc_code('Y', '2', '1', '0')
#define DRM_FORMAT_VUY888   fourcc_code('V', 'U', '2', '4')
#define DRM_FORMAT_MOD_VENDOR_ARM   0x08
#define DRM_FORMAT_MOD_ARM_TYPE_AFBC   0x00
#define AFBC_FORMAT_MOD_BLOCK_SIZE_16x16   (1ULL)
#define AFBC_FORMAT_MOD_SPARSE   (1ULL << 6)
#define drm_is_afbc(mod)
#define DRM_FORMAT_MOD_VENDOR_ROCKCHIP   0x0b
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_SHIFT   52
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_MASK   0xf
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_RFBC   0x1
#define ROCKCHIP_RFBC_BLOCK_SIZE_64x4   (1ULL)
#define fourcc_mod_code(vendor, val)
#define DRM_FORMAT_MOD_ROCKCHIP_CODE(__type, __val)
#define DRM_FORMAT_MOD_ROCKCHIP_RFBC(mode)
#define drm_is_rfbc(mod)

Macro Definition Documentation

◆ DRM_FORMAT_P010

#define DRM_FORMAT_P010   fourcc_code('P', '0', '1', '0')

Definition at line 30 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_P210

#define DRM_FORMAT_P210   fourcc_code('P', '2', '1', '0')

Definition at line 33 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_NV15

#define DRM_FORMAT_NV15   fourcc_code('N', 'V', '1', '5')

Definition at line 36 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_NV20

#define DRM_FORMAT_NV20   fourcc_code('N', 'V', '2', '0')

Definition at line 39 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_YUV420_8BIT

#define DRM_FORMAT_YUV420_8BIT   fourcc_code('Y', 'U', '0', '8')

Definition at line 42 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_YUV420_10BIT

#define DRM_FORMAT_YUV420_10BIT   fourcc_code('Y', 'U', '1', '0')

Definition at line 45 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_Y210

#define DRM_FORMAT_Y210   fourcc_code('Y', '2', '1', '0')

Definition at line 48 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_VUY888

#define DRM_FORMAT_VUY888   fourcc_code('V', 'U', '2', '4')

Definition at line 51 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_VENDOR_ARM

#define DRM_FORMAT_MOD_VENDOR_ARM   0x08

Definition at line 56 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ARM_TYPE_AFBC

#define DRM_FORMAT_MOD_ARM_TYPE_AFBC   0x00

Definition at line 59 of file hwcontext_rkmpp.h.

◆ AFBC_FORMAT_MOD_BLOCK_SIZE_16x16

#define AFBC_FORMAT_MOD_BLOCK_SIZE_16x16   (1ULL)

Definition at line 62 of file hwcontext_rkmpp.h.

◆ AFBC_FORMAT_MOD_SPARSE

#define AFBC_FORMAT_MOD_SPARSE   (1ULL << 6)

Definition at line 65 of file hwcontext_rkmpp.h.

◆ drm_is_afbc

#define drm_is_afbc ( mod)
Value:
((mod >> 52) == (DRM_FORMAT_MOD_ARM_TYPE_AFBC | \
#define DRM_FORMAT_MOD_ARM_TYPE_AFBC
#define DRM_FORMAT_MOD_VENDOR_ARM

Definition at line 68 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_VENDOR_ROCKCHIP

#define DRM_FORMAT_MOD_VENDOR_ROCKCHIP   0x0b

Definition at line 74 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ROCKCHIP_TYPE_SHIFT

#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_SHIFT   52

Definition at line 76 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ROCKCHIP_TYPE_MASK

#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_MASK   0xf

Definition at line 78 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ROCKCHIP_TYPE_RFBC

#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_RFBC   0x1

Definition at line 80 of file hwcontext_rkmpp.h.

◆ ROCKCHIP_RFBC_BLOCK_SIZE_64x4

#define ROCKCHIP_RFBC_BLOCK_SIZE_64x4   (1ULL)

Definition at line 82 of file hwcontext_rkmpp.h.

◆ fourcc_mod_code

#define fourcc_mod_code ( vendor,
val )
Value:
((((__u64)DRM_FORMAT_MOD_VENDOR_## vendor) << 56) | ((val) & 0x00ffffffffffffffULL))

Definition at line 85 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ROCKCHIP_CODE

#define DRM_FORMAT_MOD_ROCKCHIP_CODE ( __type,
__val )
Value:
fourcc_mod_code(ROCKCHIP, ((__u64)(__type) << DRM_FORMAT_MOD_ROCKCHIP_TYPE_SHIFT) | \
((__val) & 0x000fffffffffffffULL))
#define fourcc_mod_code(vendor, val)
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_SHIFT

Definition at line 89 of file hwcontext_rkmpp.h.

◆ DRM_FORMAT_MOD_ROCKCHIP_RFBC

#define DRM_FORMAT_MOD_ROCKCHIP_RFBC ( mode)
Value:
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_RFBC
#define DRM_FORMAT_MOD_ROCKCHIP_CODE(__type, __val)

Definition at line 94 of file hwcontext_rkmpp.h.

◆ drm_is_rfbc

#define drm_is_rfbc ( mod)
Value:
(((mod >> 56) & 0xff) == DRM_FORMAT_MOD_VENDOR_ROCKCHIP) && \
#define DRM_FORMAT_MOD_ROCKCHIP_TYPE_MASK
#define DRM_FORMAT_MOD_VENDOR_ROCKCHIP

Definition at line 97 of file hwcontext_rkmpp.h.