Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xiph.Org
aom-rav1e
Commits
757e138a
Commit
757e138a
authored
Apr 15, 2013
by
Yaowu Xu
Committed by
Gerrit Code Review
Apr 15, 2013
Browse files
Merge "Reorder enum i4X4 predcition modes" into experimental
parents
fed62e04
c2ad69bc
Changes
3
Hide whitespace changes
Inline
Side-by-side
vp9/common/vp9_blockd.h
View file @
757e138a
...
...
@@ -131,18 +131,15 @@ typedef enum {
typedef
enum
{
B_DC_PRED
,
/* average of above and left pixels */
B_V_PRED
,
/* vertical prediction */
B_H_PRED
,
/* horizontal prediction */
B_D45_PRED
,
B_D135_PRED
,
B_D117_PRED
,
B_D153_PRED
,
B_D27_PRED
,
B_D63_PRED
,
B_TM_PRED
,
B_VE_PRED
,
/* vertical prediction */
B_HE_PRED
,
/* horizontal prediction */
B_LD_PRED
,
B_RD_PRED
,
B_VR_PRED
,
B_VL_PRED
,
B_HD_PRED
,
B_HU_PRED
,
#if CONFIG_NEWBINTRAMODES
B_CONTEXT_PRED
,
#endif
...
...
@@ -466,15 +463,15 @@ typedef struct macroblockd {
static
B_PREDICTION_MODE
pred_mode_conv
(
MB_PREDICTION_MODE
mode
)
{
switch
(
mode
)
{
case
DC_PRED
:
return
B_DC_PRED
;
case
V_PRED
:
return
B_V
E
_PRED
;
case
H_PRED
:
return
B_H
E
_PRED
;
case
V_PRED
:
return
B_V_PRED
;
case
H_PRED
:
return
B_H_PRED
;
case
TM_PRED
:
return
B_TM_PRED
;
case
D45_PRED
:
return
B_
L
D_PRED
;
case
D135_PRED
:
return
B_
R
D_PRED
;
case
D117_PRED
:
return
B_
VR
_PRED
;
case
D153_PRED
:
return
B_
H
D_PRED
;
case
D27_PRED
:
return
B_
HU
_PRED
;
case
D63_PRED
:
return
B_
VL
_PRED
;
case
D45_PRED
:
return
B_D
45
_PRED
;
case
D135_PRED
:
return
B_D
135
_PRED
;
case
D117_PRED
:
return
B_
D117
_PRED
;
case
D153_PRED
:
return
B_D
153
_PRED
;
case
D27_PRED
:
return
B_
D27
_PRED
;
case
D63_PRED
:
return
B_
D63
_PRED
;
default:
assert
(
0
);
return
B_MODE_COUNT
;
// Dummy value
...
...
@@ -485,16 +482,16 @@ static B_PREDICTION_MODE pred_mode_conv(MB_PREDICTION_MODE mode) {
static
TX_TYPE
txfm_map
(
B_PREDICTION_MODE
bmode
)
{
switch
(
bmode
)
{
case
B_TM_PRED
:
case
B_
R
D_PRED
:
case
B_D
135
_PRED
:
return
ADST_ADST
;
case
B_V
E
_PRED
:
case
B_
VR
_PRED
:
case
B_V_PRED
:
case
B_
D117
_PRED
:
return
ADST_DCT
;
case
B_H
E
_PRED
:
case
B_
H
D_PRED
:
case
B_
HU
_PRED
:
case
B_H_PRED
:
case
B_D
153
_PRED
:
case
B_
D27
_PRED
:
return
DCT_ADST
;
#if CONFIG_NEWBINTRAMODES
...
...
vp9/common/vp9_entropymode.c
View file @
757e138a
...
...
@@ -72,18 +72,18 @@ static const unsigned int kf_uv_mode_cts [VP9_YMODES] [VP9_UV_MODES] = {
static
const
unsigned
int
bmode_cts
[
VP9_NKF_BINTRAMODES
]
=
{
#if CONFIG_NEWBINTRAMODES
#if CONTEXT_PRED_REPLACEMENTS == 6
/* DC TM V
E
H
E
CONTEXT */
/* DC TM V
H CONTEXT */
43891
,
17694
,
10036
,
3920
,
20000
#elif CONTEXT_PRED_REPLACEMENTS == 4
/* DC TM V
E
H
E
LD RD
CONTEXT */
/* DC TM V
H
D45 D135
CONTEXT */
43891
,
17694
,
10036
,
3920
,
3363
,
2546
,
14000
#elif CONTEXT_PRED_REPLACEMENTS == 0
/* DC
TM VE
H
E
LD RD VR VL HD HU
CONTEXT */
43891
,
17694
,
10036
,
3920
,
3363
,
2546
,
5119
,
3221
,
247
1
,
17
23
,
50000
/* DC
V
H
D45 D135 D117 D153 D27 D63 TM
CONTEXT */
43891
,
10036
,
3920
,
3363
,
2546
,
5119
,
2471
,
1723
,
322
1
,
17
694
,
50000
#endif
#else
/* DC
TM VE
H
E
LD RD VR VL HD HU
*/
43891
,
17694
,
10036
,
3920
,
3363
,
2546
,
5119
,
3221
,
247
1
,
17
23
/* DC
V
H
D45 D135 D117 D153 D27 D63 TM
*/
43891
,
10036
,
3920
,
3363
,
2546
,
5119
,
2471
,
1723
,
322
1
,
17
694
#endif
};
...
...
@@ -156,13 +156,13 @@ const vp9_prob vp9_mbsplit_probs [VP9_NUMMBSPLITS - 1] = { 110, 111, 150};
const
vp9_tree_index
vp9_kf_bmode_tree
[
VP9_KF_BINTRAMODES
*
2
-
2
]
=
{
-
B_DC_PRED
,
2
,
/* 0 = DC_NODE */
-
B_TM_PRED
,
4
,
/* 1 = TM_NODE */
-
B_V
E
_PRED
,
6
,
/* 2 = V
E
_NODE */
-
B_V_PRED
,
6
,
/* 2 = V_NODE */
8
,
12
,
/* 3 = COM_NODE */
-
B_H
E
_PRED
,
10
,
/* 4 = H
E
_NODE */
-
B_
R
D_PRED
,
-
B_
VR
_PRED
,
/* 5 =
R
D_NODE */
-
B_
L
D_PRED
,
14
,
/* 6 =
L
D_NODE */
-
B_
VL
_PRED
,
16
,
/* 7 =
VL
_NODE */
-
B_
H
D_PRED
,
-
B_
HU
_PRED
/* 8 =
H
D_NODE */
-
B_H_PRED
,
10
,
/* 4 = H_NODE */
-
B_D
135
_PRED
,
-
B_
D117
_PRED
,
/* 5 = D
135
_NODE */
-
B_D
45
_PRED
,
14
,
/* 6 = D
45
_NODE */
-
B_
D63
_PRED
,
16
,
/* 7 =
D63
_NODE */
-
B_D
153
_PRED
,
-
B_
D27
_PRED
/* 8 = D
153
_NODE */
};
const
vp9_tree_index
vp9_bmode_tree
[
VP9_NKF_BINTRAMODES
*
2
-
2
]
=
{
...
...
@@ -171,36 +171,36 @@ const vp9_tree_index vp9_bmode_tree[VP9_NKF_BINTRAMODES * 2 - 2] = {
-
B_DC_PRED
,
2
,
-
B_TM_PRED
,
4
,
6
,
-
(
B_CONTEXT_PRED
-
CONTEXT_PRED_REPLACEMENTS
),
-
B_V
E
_PRED
,
-
B_H
E
_PRED
-
B_V_PRED
,
-
B_H_PRED
#elif CONTEXT_PRED_REPLACEMENTS == 4
-
B_DC_PRED
,
2
,
-
B_TM_PRED
,
4
,
6
,
8
,
-
B_V
E
_PRED
,
-
B_H
E
_PRED
,
-
B_V_PRED
,
-
B_H_PRED
,
10
,
-
(
B_CONTEXT_PRED
-
CONTEXT_PRED_REPLACEMENTS
),
-
B_
R
D_PRED
,
-
B_
L
D_PRED
,
-
B_D
135
_PRED
,
-
B_D
45
_PRED
,
#elif CONTEXT_PRED_REPLACEMENTS == 0
-
B_DC_PRED
,
2
,
/* 0 = DC_NODE */
-
B_TM_PRED
,
4
,
/* 1 = TM_NODE */
-
B_V
E
_PRED
,
6
,
/* 2 = V
E
_NODE */
-
B_V_PRED
,
6
,
/* 2 = V_NODE */
8
,
12
,
/* 3 = COM_NODE */
-
B_H
E
_PRED
,
10
,
/* 4 = H
E
_NODE */
-
B_
R
D_PRED
,
-
B_
VR
_PRED
,
/* 5 =
R
D_NODE */
-
B_
L
D_PRED
,
14
,
/* 6 =
L
D_NODE */
-
B_
VL
_PRED
,
16
,
/* 7 =
VL
_NODE */
-
B_
H
D_PRED
,
18
,
-
B_
HU
_PRED
,
-
B_CONTEXT_PRED
-
B_H_PRED
,
10
,
/* 4 = H_NODE */
-
B_D
135
_PRED
,
-
B_
D117
_PRED
,
/* 5 = D
135
_NODE */
-
B_D
45
_PRED
,
14
,
/* 6 = D
45
_NODE */
-
B_
D63
_PRED
,
16
,
/* 7 =
D63
_NODE */
-
B_D
153
_PRED
,
18
,
/* 8 = D153_NODE */
-
B_
D27
_PRED
,
-
B_CONTEXT_PRED
/* 9 = D27_NODE */
#endif
#else
-
B_DC_PRED
,
2
,
/* 0 = DC_NODE */
-
B_TM_PRED
,
4
,
/* 1 = TM_NODE */
-
B_V
E
_PRED
,
6
,
/* 2 = V
E
_NODE */
-
B_V_PRED
,
6
,
/* 2 = V_NODE */
8
,
12
,
/* 3 = COM_NODE */
-
B_H
E
_PRED
,
10
,
/* 4 = H
E
_NODE */
-
B_
R
D_PRED
,
-
B_
VR
_PRED
,
/* 5 =
R
D_NODE */
-
B_
L
D_PRED
,
14
,
/* 6 =
L
D_NODE */
-
B_
VL
_PRED
,
16
,
/* 7 =
VL
_NODE */
-
B_
H
D_PRED
,
-
B_
HU
_PRED
/* 8 =
H
D_NODE */
-
B_H_PRED
,
10
,
/* 4 = H_NODE */
-
B_D
135
_PRED
,
-
B_
D117
_PRED
,
/* 5 = D
135
_NODE */
-
B_D
45
_PRED
,
14
,
/* 6 = D
45
_NODE */
-
B_
D63
_PRED
,
16
,
/* 7 =
D63
_NODE */
-
B_D
153
_PRED
,
-
B_
D27
_PRED
/* 8 = D
153
_NODE */
#endif
};
...
...
vp9/common/vp9_reconintra4x4.c
View file @
757e138a
...
...
@@ -57,17 +57,17 @@ B_PREDICTION_MODE vp9_find_dominant_direction(uint8_t *ptr,
*/
switch
(
imin
)
{
case
1
:
return
B_
H
D_PRED
;
return
B_D
153
_PRED
;
case
2
:
return
B_
R
D_PRED
;
return
B_D
135
_PRED
;
case
3
:
return
B_
VR
_PRED
;
return
B_
D117
_PRED
;
case
5
:
return
B_
VL
_PRED
;
return
B_
D63
_PRED
;
case
6
:
return
B_
L
D_PRED
;
return
B_D
45
_PRED
;
case
7
:
return
B_
HU
_PRED
;
return
B_
D27
_PRED
;
default:
assert
(
0
);
}
...
...
@@ -93,13 +93,13 @@ B_PREDICTION_MODE vp9_find_dominant_direction(uint8_t *ptr,
*/
switch
(
imin
)
{
case
1
:
return
B_
H
D_PRED
;
return
B_D
153
_PRED
;
case
3
:
return
B_
VR
_PRED
;
return
B_
D117
_PRED
;
case
5
:
return
B_
VL
_PRED
;
return
B_
D63
_PRED
;
case
7
:
return
B_
HU
_PRED
;
return
B_
D27
_PRED
;
default:
assert
(
0
);
}
...
...
@@ -126,21 +126,21 @@ B_PREDICTION_MODE vp9_find_dominant_direction(uint8_t *ptr,
switch
(
imin
)
{
case
0
:
return
B_H
E
_PRED
;
return
B_H_PRED
;
case
1
:
return
B_
H
D_PRED
;
return
B_D
153
_PRED
;
case
2
:
return
B_
R
D_PRED
;
return
B_D
135
_PRED
;
case
3
:
return
B_
VR
_PRED
;
return
B_
D117
_PRED
;
case
4
:
return
B_V
E
_PRED
;
return
B_V_PRED
;
case
5
:
return
B_
VL
_PRED
;
return
B_
D63
_PRED
;
case
6
:
return
B_
L
D_PRED
;
return
B_D
45
_PRED
;
case
7
:
return
B_
HU
_PRED
;
return
B_
D27
_PRED
;
default:
assert
(
0
);
}
...
...
@@ -293,7 +293,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_V
E
_PRED
:
{
case
B_V_PRED
:
{
unsigned
int
ap
[
4
];
ap
[
0
]
=
above
[
0
];
...
...
@@ -311,7 +311,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_H
E
_PRED
:
{
case
B_H_PRED
:
{
unsigned
int
lp
[
4
];
lp
[
0
]
=
left
[
0
];
...
...
@@ -328,7 +328,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
}
break
;
case
B_
L
D_PRED
:
{
case
B_D
45
_PRED
:
{
uint8_t
*
ptr
=
above
;
predictor
[
0
*
ps
+
0
]
=
(
ptr
[
0
]
+
ptr
[
1
]
*
2
+
ptr
[
2
]
+
2
)
>>
2
;
...
...
@@ -350,7 +350,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_
R
D_PRED
:
{
case
B_D
135
_PRED
:
{
uint8_t
pp
[
9
];
pp
[
0
]
=
left
[
3
];
...
...
@@ -382,7 +382,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_
VR
_PRED
:
{
case
B_
D117
_PRED
:
{
uint8_t
pp
[
9
];
pp
[
0
]
=
left
[
3
];
...
...
@@ -414,7 +414,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_
VL
_PRED
:
{
case
B_
D63
_PRED
:
{
uint8_t
*
pp
=
above
;
predictor
[
0
*
ps
+
0
]
=
(
pp
[
0
]
+
pp
[
1
]
+
1
)
>>
1
;
...
...
@@ -436,7 +436,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
}
break
;
case
B_
H
D_PRED
:
{
case
B_D
153
_PRED
:
{
uint8_t
pp
[
9
];
pp
[
0
]
=
left
[
3
];
...
...
@@ -470,7 +470,7 @@ void vp9_intra4x4_predict(MACROBLOCKD *xd,
break
;
case
B_
HU
_PRED
:
{
case
B_
D27
_PRED
:
{
uint8_t
*
pp
=
left
;
predictor
[
0
*
ps
+
0
]
=
(
pp
[
0
]
+
pp
[
1
]
+
1
)
>>
1
;
predictor
[
0
*
ps
+
1
]
=
(
pp
[
0
]
+
pp
[
1
]
*
2
+
pp
[
2
]
+
2
)
>>
2
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment