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
e535ad50
Commit
e535ad50
authored
Jan 08, 2015
by
Jingning Han
Committed by
Gerrit Code Review
Jan 08, 2015
Browse files
Options
Browse Files
Download
Plain Diff
Merge "Refactor denoiser frame buffer update"
parents
97dc7826
ea061a88
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
15 deletions
+25
-15
vp9/encoder/vp9_denoiser.c
vp9/encoder/vp9_denoiser.c
+25
-15
No files found.
vp9/encoder/vp9_denoiser.c
View file @
e535ad50
...
...
@@ -365,6 +365,15 @@ static void copy_frame(YV12_BUFFER_CONFIG dest, const YV12_BUFFER_CONFIG src) {
}
}
static
void
swap_frame_buffer
(
YV12_BUFFER_CONFIG
dest
,
YV12_BUFFER_CONFIG
src
)
{
uint8_t
*
tmp_buf
=
dest
.
y_buffer
;
assert
(
dest
.
y_width
==
src
.
y_width
);
assert
(
dest
.
y_height
==
src
.
y_height
);
dest
.
y_buffer
=
src
.
y_buffer
;
src
.
y_buffer
=
tmp_buf
;
}
void
vp9_denoiser_update_frame_info
(
VP9_DENOISER
*
denoiser
,
YV12_BUFFER_CONFIG
src
,
FRAME_TYPE
frame_type
,
...
...
@@ -374,22 +383,23 @@ void vp9_denoiser_update_frame_info(VP9_DENOISER *denoiser,
if
(
frame_type
==
KEY_FRAME
)
{
int
i
;
// Start at 1 so as not to overwrite the INTRA_FRAME
for
(
i
=
1
;
i
<
MAX_REF_FRAMES
;
++
i
)
{
for
(
i
=
1
;
i
<
MAX_REF_FRAMES
;
++
i
)
copy_frame
(
denoiser
->
running_avg_y
[
i
],
src
);
}
}
else
{
/* For non key frames */
if
(
refresh_alt_ref_frame
)
{
copy_frame
(
denoiser
->
running_avg_y
[
ALTREF_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
if
(
refresh_golden_frame
)
{
copy_frame
(
denoiser
->
running_avg_y
[
GOLDEN_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
if
(
refresh_last_frame
)
{
copy_frame
(
denoiser
->
running_avg_y
[
LAST_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
return
;
}
/* For non key frames */
if
(
refresh_alt_ref_frame
)
{
swap_frame_buffer
(
denoiser
->
running_avg_y
[
ALTREF_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
if
(
refresh_golden_frame
)
{
swap_frame_buffer
(
denoiser
->
running_avg_y
[
GOLDEN_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
if
(
refresh_last_frame
)
{
swap_frame_buffer
(
denoiser
->
running_avg_y
[
LAST_FRAME
],
denoiser
->
running_avg_y
[
INTRA_FRAME
]);
}
}
...
...
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