Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Xiph.Org
aom-rav1e
Commits
81e03394
Commit
81e03394
authored
May 19, 2014
by
Dmitry Kovalev
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Replacing int_mv with MV.
Change-Id: Icd7eea20e944e3e28e5eb20cdc088866a54d53b4
parent
0249531b
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
15 additions
and
14 deletions
+15
-14
vp9/encoder/vp9_block.h
vp9/encoder/vp9_block.h
+1
-1
vp9/encoder/vp9_context_tree.h
vp9/encoder/vp9_context_tree.h
+1
-1
vp9/encoder/vp9_pickmode.c
vp9/encoder/vp9_pickmode.c
+2
-2
vp9/encoder/vp9_rdopt.c
vp9/encoder/vp9_rdopt.c
+11
-10
No files found.
vp9/encoder/vp9_block.h
View file @
81e03394
...
...
@@ -106,7 +106,7 @@ struct macroblock {
int
skip_encode
;
// Used to store sub partition's choices.
int_mv
pred_mv
[
MAX_REF_FRAMES
];
MV
pred_mv
[
MAX_REF_FRAMES
];
void
(
*
fwd_txm4x4
)(
const
int16_t
*
input
,
int16_t
*
output
,
int
stride
);
};
...
...
vp9/encoder/vp9_context_tree.h
View file @
81e03394
...
...
@@ -42,7 +42,7 @@ typedef struct {
// motion vector cache for adaptive motion search control in partition
// search loop
int_mv
pred_mv
[
MAX_REF_FRAMES
];
MV
pred_mv
[
MAX_REF_FRAMES
];
INTERP_FILTER
pred_interp_filter
;
}
PICK_MODE_CONTEXT
;
...
...
vp9/encoder/vp9_pickmode.c
View file @
81e03394
...
...
@@ -79,7 +79,7 @@ static void full_pixel_motion_search(VP9_COMP *cpi, MACROBLOCK *x,
if
(
x
->
mv_best_ref_index
[
ref
]
<
2
)
mvp_full
=
mbmi
->
ref_mvs
[
ref
][
x
->
mv_best_ref_index
[
ref
]].
as_mv
;
else
mvp_full
=
x
->
pred_mv
[
ref
]
.
as_mv
;
mvp_full
=
x
->
pred_mv
[
ref
];
mvp_full
.
col
>>=
3
;
mvp_full
.
row
>>=
3
;
...
...
@@ -143,7 +143,7 @@ static void sub_pixel_motion_search(VP9_COMP *cpi, MACROBLOCK *x,
xd
->
plane
[
i
].
pre
[
0
]
=
backup_yv12
[
i
];
}
x
->
pred_mv
[
ref
]
.
as_mv
=
*
tmp_mv
;
x
->
pred_mv
[
ref
]
=
*
tmp_mv
;
}
static
void
model_rd_for_sb_y
(
VP9_COMP
*
cpi
,
BLOCK_SIZE
bsize
,
...
...
vp9/encoder/vp9_rdopt.c
View file @
81e03394
...
...
@@ -1850,8 +1850,8 @@ static int64_t rd_pick_best_sub8x8_mode(VP9_COMP *cpi, MACROBLOCK *x,
mvp_full
.
col
=
bsi
->
mvp
.
as_mv
.
col
>>
3
;
if
(
cpi
->
sf
.
adaptive_motion_search
&&
cm
->
show_frame
)
{
mvp_full
.
row
=
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]].
as_mv
.
row
>>
3
;
mvp_full
.
col
=
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]].
as_mv
.
col
>>
3
;
mvp_full
.
row
=
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]].
row
>>
3
;
mvp_full
.
col
=
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]].
col
>>
3
;
step_param
=
MAX
(
step_param
,
8
);
}
...
...
@@ -1902,7 +1902,7 @@ static int64_t rd_pick_best_sub8x8_mode(VP9_COMP *cpi, MACROBLOCK *x,
}
if
(
cpi
->
sf
.
adaptive_motion_search
)
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]]
.
as_mv
=
*
new_mv
;
x
->
pred_mv
[
mbmi
->
ref_frame
[
0
]]
=
*
new_mv
;
// restore src pointers
mi_buf_restore
(
x
,
orig_src
,
orig_pre
);
...
...
@@ -2108,14 +2108,14 @@ static void mv_pred(VP9_COMP *cpi, MACROBLOCK *x,
cpi
->
common
.
show_frame
&&
block_size
<
cpi
->
sf
.
max_partition_size
);
int_mv
pred_mv
[
3
];
pred_mv
[
0
]
=
mbmi
->
ref_mvs
[
ref_frame
][
0
];
pred_mv
[
1
]
=
mbmi
->
ref_mvs
[
ref_frame
][
1
];
MV
pred_mv
[
3
];
pred_mv
[
0
]
=
mbmi
->
ref_mvs
[
ref_frame
][
0
]
.
as_mv
;
pred_mv
[
1
]
=
mbmi
->
ref_mvs
[
ref_frame
][
1
]
.
as_mv
;
pred_mv
[
2
]
=
x
->
pred_mv
[
ref_frame
];
// Get the sad for each candidate reference mv
for
(
i
=
0
;
i
<
num_mv_refs
;
i
++
)
{
this_mv
.
as_
int
=
pred_mv
[
i
]
.
as_int
;
this_mv
.
as_
mv
=
pred_mv
[
i
];
max_mv
=
MAX
(
max_mv
,
MAX
(
abs
(
this_mv
.
as_mv
.
row
),
abs
(
this_mv
.
as_mv
.
col
))
>>
3
);
...
...
@@ -2334,7 +2334,7 @@ static void single_motion_search(VP9_COMP *cpi, MACROBLOCK *x,
MV
pred_mv
[
3
];
pred_mv
[
0
]
=
mbmi
->
ref_mvs
[
ref
][
0
].
as_mv
;
pred_mv
[
1
]
=
mbmi
->
ref_mvs
[
ref
][
1
].
as_mv
;
pred_mv
[
2
]
=
x
->
pred_mv
[
ref
]
.
as_mv
;
pred_mv
[
2
]
=
x
->
pred_mv
[
ref
];
if
(
scaled_ref_frame
)
{
int
i
;
...
...
@@ -2379,7 +2379,8 @@ static void single_motion_search(VP9_COMP *cpi, MACROBLOCK *x,
for
(
i
=
LAST_FRAME
;
i
<=
ALTREF_FRAME
&&
cm
->
show_frame
;
++
i
)
{
if
((
x
->
pred_mv_sad
[
ref
]
>>
3
)
>
x
->
pred_mv_sad
[
i
])
{
x
->
pred_mv
[
ref
].
as_int
=
0
;
x
->
pred_mv
[
ref
].
row
=
0
;
x
->
pred_mv
[
ref
].
col
=
0
;
tmp_mv
->
as_int
=
INVALID_MV
;
if
(
scaled_ref_frame
)
{
...
...
@@ -2420,7 +2421,7 @@ static void single_motion_search(VP9_COMP *cpi, MACROBLOCK *x,
x
->
nmvjointcost
,
x
->
mvcost
,
MV_COST_WEIGHT
);
if
(
cpi
->
sf
.
adaptive_motion_search
&&
cm
->
show_frame
)
x
->
pred_mv
[
ref
]
.
as_int
=
tmp_mv
->
as_
int
;
x
->
pred_mv
[
ref
]
=
tmp_mv
->
as_
mv
;
if
(
scaled_ref_frame
)
{
int
i
;
...
...
Write
Preview
Markdown
is supported
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