FFmpeg
Data Structures | Macros | Enumerations | Variables
hq_hqadata.h File Reference
#include <assert.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  HQProfile
 

Macros

#define NUM_HQ_AC_ENTRIES   747
 
#define NUM_HQ_PROFILES   22
 
#define NUM_HQ_QUANTS   16
 
#define MAT_SIZE   64
 
#define HQ_AC_INVALID_RUN   0
 
#define E(level, skip)   ((level * (1 << 7)) | (skip + 1))
 
#define INVALID_ENT   HQ_AC_INVALID_RUN
 
#define INV   16
 
#define HQPROFILES(M, DEF)
 
#define OFFSET(PROFILE, W, H, NUM_SLICES, TAB_W, TAB_H)
 
#define NOTHING(PROFILE, W, H, NUM_SLICES, TAB_W, TAB_H)
 
#define HQPROFILE(PROFILE, W, H, NUM_SLICES, TAB_W, TAB_H)
 

Enumerations

enum  {
  QMAT00, QMAT01, QMAT02, QMAT03,
  QMAT04, QMAT05, QMAT06, QMAT07,
  QMAT08, QMAT09, QMAT0A, QMAT0B,
  QMAT0C, QMAT0D, QMAT0E, QMAT0F,
  QMAT10, QMAT11, QMAT12, QMAT13,
  QMAT14, QMAT15, QMAT16, QMAT17,
  QMAT18, QMAT19, QMAT1A, QMAT1B,
  QMAT1C, QMAT1D, QMAT1E, QMAT1F,
  QMAT20, QMAT21, QMAT22, QMAT23,
  QMAT24, QMAT25, QMAT26, QMAT27,
  QMAT28, QMAT29, QMAT2A, QMAT2B,
  QMAT2C, QMAT2D, QMAT2E, QMAT2F,
  QMAT30, QMAT31, QMAT32, QMAT33,
  QMAT34, QMAT35, QMAT36, QMAT37,
  QMAT38, QMAT39, QMAT3A, QMAT3B,
  QMAT3C, QMAT3D, QMAT3E, QMAT3F,
  QMAT40, QMAT41, QMAT42, QMAT43,
  QMAT44, QMAT45, QMAT46, QMAT47,
  QMAT48, QMAT49, QMAT4A, QMAT4B,
  QMAT4C, QMAT4D, NUM_QMATS
}
 
enum  { NUM_HQ_PERMS }
 

Variables

static const int32_t qmats [NUM_QMATS][MAT_SIZE]
 
static const uint8_t hq_quant_map [NUM_HQ_QUANTS][2][4]
 
static const int16_t hq_ac_sym [NUM_HQ_AC_ENTRIES]
 
static const uint8_t hq_ac_lens [NUM_HQ_AC_ENTRIES]
 
static const HQProfile hq_profile [NUM_HQ_PROFILES]
 
static const uint8_t hq_perms []
 

Macro Definition Documentation

◆ NUM_HQ_AC_ENTRIES

#define NUM_HQ_AC_ENTRIES   747

Definition at line 27 of file hq_hqadata.h.

◆ NUM_HQ_PROFILES

#define NUM_HQ_PROFILES   22

Definition at line 28 of file hq_hqadata.h.

◆ NUM_HQ_QUANTS

#define NUM_HQ_QUANTS   16

Definition at line 29 of file hq_hqadata.h.

◆ MAT_SIZE

#define MAT_SIZE   64

Definition at line 113 of file hq_hqadata.h.

◆ HQ_AC_INVALID_RUN

#define HQ_AC_INVALID_RUN   0

Definition at line 1152 of file hq_hqadata.h.

◆ E

#define E (   level,
  skip 
)    ((level * (1 << 7)) | (skip + 1))

Definition at line 1154 of file hq_hqadata.h.

◆ INVALID_ENT

#define INVALID_ENT   HQ_AC_INVALID_RUN

Definition at line 1156 of file hq_hqadata.h.

◆ INV

#define INV   16

Definition at line 1157 of file hq_hqadata.h.

◆ HQPROFILES

#define HQPROFILES (   M,
  DEF 
)
Value:
/* case 0 (default) = case 11*/\
DEF(11,160, 120, 8, 10, 8) \
M(1, 720, 480, 8, 25, 54) \
M(2, 720, 486, 8, 15, 93) \
M(3, 720, 576, 8, 20, 81) \
M(4, 960, 720, 12, 25, 108) \
M(5, 1280, 720, 16, 25, 144) \
M(6, 1280, 1080, 16, 20, 272) \
M(7, 1440, 1080, 16, 24, 255) \
M(8, 1920, 1080, 20, 24, 340) \
M(9, 640, 480, 8, 25, 48) \
M(10, 320, 240, 8, 25, 12) \
M(11, 160, 120, 8, 10, 8) \
M(12, 800, 600, 8, 25, 76) \
M(13, 352, 480, 8, 20, 33) \
M(14, 352, 240, 8, 22, 15) \
M(15, 352, 288, 8, 18, 22) \
M(16, 176, 144, 8, 9, 11) \
M(17, 1280, 1024, 16, 20, 256) \
M(18, 1280, 960, 16, 25, 192) \
M(19, 1024, 768, 16, 24, 128) \
M(20, 704, 480, 8, 20, 66) \
M(21, 704, 576, 8, 24, 66) \

Definition at line 1373 of file hq_hqadata.h.

◆ OFFSET

#define OFFSET (   PROFILE,
  W,
  H,
  NUM_SLICES,
  TAB_W,
  TAB_H 
)
Value:
PROFILE_ ## PROFILE ## _OFFSET, \
PROFILE_ ## PROFILE ## _LAST = PROFILE_ ## PROFILE ## _OFFSET + TAB_W * TAB_H * 2 - 1,

Definition at line 1398 of file hq_hqadata.h.

◆ NOTHING

#define NOTHING (   PROFILE,
  W,
  H,
  NUM_SLICES,
  TAB_W,
  TAB_H 
)

Definition at line 1401 of file hq_hqadata.h.

◆ HQPROFILE

#define HQPROFILE (   PROFILE,
  W,
  H,
  NUM_SLICES,
  TAB_W,
  TAB_H 
)
Value:
{ .tab_offset = PROFILE_ ## PROFILE ## _OFFSET, .width = W, .height = H, \
.num_slices = NUM_SLICES, .tab_w = TAB_W, .tab_h = TAB_H },

Definition at line 1407 of file hq_hqadata.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
QMAT00 
QMAT01 
QMAT02 
QMAT03 
QMAT04 
QMAT05 
QMAT06 
QMAT07 
QMAT08 
QMAT09 
QMAT0A 
QMAT0B 
QMAT0C 
QMAT0D 
QMAT0E 
QMAT0F 
QMAT10 
QMAT11 
QMAT12 
QMAT13 
QMAT14 
QMAT15 
QMAT16 
QMAT17 
QMAT18 
QMAT19 
QMAT1A 
QMAT1B 
QMAT1C 
QMAT1D 
QMAT1E 
QMAT1F 
QMAT20 
QMAT21 
QMAT22 
QMAT23 
QMAT24 
QMAT25 
QMAT26 
QMAT27 
QMAT28 
QMAT29 
QMAT2A 
QMAT2B 
QMAT2C 
QMAT2D 
QMAT2E 
QMAT2F 
QMAT30 
QMAT31 
QMAT32 
QMAT33 
QMAT34 
QMAT35 
QMAT36 
QMAT37 
QMAT38 
QMAT39 
QMAT3A 
QMAT3B 
QMAT3C 
QMAT3D 
QMAT3E 
QMAT3F 
QMAT40 
QMAT41 
QMAT42 
QMAT43 
QMAT44 
QMAT45 
QMAT46 
QMAT47 
QMAT48 
QMAT49 
QMAT4A 
QMAT4B 
QMAT4C 
QMAT4D 
NUM_QMATS 

Definition at line 31 of file hq_hqadata.h.

◆ anonymous enum

anonymous enum
Enumerator
NUM_HQ_PERMS 

Definition at line 1402 of file hq_hqadata.h.

Variable Documentation

◆ qmats

const int32_t qmats[NUM_QMATS][MAT_SIZE]
static

Definition at line 115 of file hq_hqadata.h.

Referenced by hq_init_static().

◆ hq_quant_map

const uint8_t hq_quant_map[NUM_HQ_QUANTS][2][4]
static

◆ hq_ac_sym

const int16_t hq_ac_sym[NUM_HQ_AC_ENTRIES]
static

Definition at line 1159 of file hq_hqadata.h.

Referenced by hq_init_static().

◆ hq_ac_lens

const uint8_t hq_ac_lens[NUM_HQ_AC_ENTRIES]
static

Definition at line 1312 of file hq_hqadata.h.

Referenced by hq_init_static().

◆ hq_profile

const HQProfile hq_profile[NUM_HQ_PROFILES]
static
Initial value:
= {
}

Definition at line 1411 of file hq_hqadata.h.

Referenced by hq_decode_frame().

◆ hq_perms

const uint8_t hq_perms[]
static

Definition at line 1416 of file hq_hqadata.h.

Referenced by hq_decode_frame().

QMAT25
@ QMAT25
Definition: hq_hqadata.h:69
QMAT34
@ QMAT34
Definition: hq_hqadata.h:84
QMAT31
@ QMAT31
Definition: hq_hqadata.h:81
QMAT45
@ QMAT45
Definition: hq_hqadata.h:101
QMAT07
@ QMAT07
Definition: hq_hqadata.h:39
QMAT36
@ QMAT36
Definition: hq_hqadata.h:86
QMAT2B
@ QMAT2B
Definition: hq_hqadata.h:75
QMAT44
@ QMAT44
Definition: hq_hqadata.h:100
QMAT21
@ QMAT21
Definition: hq_hqadata.h:65
QMAT05
@ QMAT05
Definition: hq_hqadata.h:37
QMAT11
@ QMAT11
Definition: hq_hqadata.h:49
QMAT1D
@ QMAT1D
Definition: hq_hqadata.h:61
QMAT12
@ QMAT12
Definition: hq_hqadata.h:50
QMAT27
@ QMAT27
Definition: hq_hqadata.h:71
QMAT0F
@ QMAT0F
Definition: hq_hqadata.h:47
QMAT1B
@ QMAT1B
Definition: hq_hqadata.h:59
QMAT39
@ QMAT39
Definition: hq_hqadata.h:89
QMAT0E
@ QMAT0E
Definition: hq_hqadata.h:46
QMAT43
@ QMAT43
Definition: hq_hqadata.h:99
QMAT4D
@ QMAT4D
Definition: hq_hqadata.h:109
QMAT18
@ QMAT18
Definition: hq_hqadata.h:56
QMAT01
@ QMAT01
Definition: hq_hqadata.h:33
QMAT22
@ QMAT22
Definition: hq_hqadata.h:66
QMAT23
@ QMAT23
Definition: hq_hqadata.h:67
QMAT3A
@ QMAT3A
Definition: hq_hqadata.h:90
QMAT0A
@ QMAT0A
Definition: hq_hqadata.h:42
QMAT28
@ QMAT28
Definition: hq_hqadata.h:72
W
@ W
Definition: vf_addroi.c:27
QMAT30
@ QMAT30
Definition: hq_hqadata.h:80
QMAT3B
@ QMAT3B
Definition: hq_hqadata.h:91
QMAT0D
@ QMAT0D
Definition: hq_hqadata.h:45
QMAT24
@ QMAT24
Definition: hq_hqadata.h:68
QMAT46
@ QMAT46
Definition: hq_hqadata.h:102
QMAT48
@ QMAT48
Definition: hq_hqadata.h:104
QMAT13
@ QMAT13
Definition: hq_hqadata.h:51
QMAT1E
@ QMAT1E
Definition: hq_hqadata.h:62
QMAT0B
@ QMAT0B
Definition: hq_hqadata.h:43
QMAT1F
@ QMAT1F
Definition: hq_hqadata.h:63
QMAT10
@ QMAT10
Definition: hq_hqadata.h:48
QMAT3F
@ QMAT3F
Definition: hq_hqadata.h:95
QMAT3C
@ QMAT3C
Definition: hq_hqadata.h:92
QMAT14
@ QMAT14
Definition: hq_hqadata.h:52
QMAT08
@ QMAT08
Definition: hq_hqadata.h:40
QMAT3D
@ QMAT3D
Definition: hq_hqadata.h:93
QMAT40
@ QMAT40
Definition: hq_hqadata.h:96
H
#define H
Definition: pixlet.c:39
QMAT4B
@ QMAT4B
Definition: hq_hqadata.h:107
QMAT32
@ QMAT32
Definition: hq_hqadata.h:82
QMAT2E
@ QMAT2E
Definition: hq_hqadata.h:78
QMAT38
@ QMAT38
Definition: hq_hqadata.h:88
QMAT15
@ QMAT15
Definition: hq_hqadata.h:53
QMAT42
@ QMAT42
Definition: hq_hqadata.h:98
QMAT41
@ QMAT41
Definition: hq_hqadata.h:97
QMAT3E
@ QMAT3E
Definition: hq_hqadata.h:94
QMAT2C
@ QMAT2C
Definition: hq_hqadata.h:76
QMAT29
@ QMAT29
Definition: hq_hqadata.h:73
QMAT26
@ QMAT26
Definition: hq_hqadata.h:70
QMAT16
@ QMAT16
Definition: hq_hqadata.h:54
QMAT03
@ QMAT03
Definition: hq_hqadata.h:35
QMAT02
@ QMAT02
Definition: hq_hqadata.h:34
QMAT09
@ QMAT09
Definition: hq_hqadata.h:41
QMAT1C
@ QMAT1C
Definition: hq_hqadata.h:60
QMAT4C
@ QMAT4C
Definition: hq_hqadata.h:108
QMAT4A
@ QMAT4A
Definition: hq_hqadata.h:106
QMAT06
@ QMAT06
Definition: hq_hqadata.h:38
QMAT0C
@ QMAT0C
Definition: hq_hqadata.h:44
QMAT35
@ QMAT35
Definition: hq_hqadata.h:85
QMAT49
@ QMAT49
Definition: hq_hqadata.h:105
QMAT17
@ QMAT17
Definition: hq_hqadata.h:55
QMAT19
@ QMAT19
Definition: hq_hqadata.h:57
QMAT2A
@ QMAT2A
Definition: hq_hqadata.h:74
QMAT00
@ QMAT00
Definition: hq_hqadata.h:32
QMAT33
@ QMAT33
Definition: hq_hqadata.h:83
QMAT2D
@ QMAT2D
Definition: hq_hqadata.h:77
QMAT04
@ QMAT04
Definition: hq_hqadata.h:36
QMAT1A
@ QMAT1A
Definition: hq_hqadata.h:58
QMAT47
@ QMAT47
Definition: hq_hqadata.h:103
QMAT20
@ QMAT20
Definition: hq_hqadata.h:64
QMAT2F
@ QMAT2F
Definition: hq_hqadata.h:79
PROFILE
#define PROFILE(name, value)
QMAT37
@ QMAT37
Definition: hq_hqadata.h:87