Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
aom-rav1e
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Xiph.Org
aom-rav1e
Commits
926d95cd
Commit
926d95cd
authored
Nov 28, 2012
by
Jim Bankoski
Committed by
Gerrit Code Review
Nov 28, 2012
Browse files
Options
Browse Files
Download
Plain Diff
Merge "remove postproc invokes" into experimental
parents
00e2c6bf
85cba19e
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
97 additions
and
296 deletions
+97
-296
vp9/common/arm/neon/vp9_recon_neon.c
vp9/common/arm/neon/vp9_recon_neon.c
+1
-1
vp9/common/generic/vp9_systemdependent.c
vp9/common/generic/vp9_systemdependent.c
+0
-10
vp9/common/vp9_onyxc_int.h
vp9/common/vp9_onyxc_int.h
+0
-3
vp9/common/vp9_postproc.c
vp9/common/vp9_postproc.c
+62
-82
vp9/common/vp9_postproc.h
vp9/common/vp9_postproc.h
+2
-89
vp9/common/vp9_rtcd_defs.sh
vp9/common/vp9_rtcd_defs.sh
+28
-0
vp9/common/x86/vp9_x86_systemdependent.c
vp9/common/x86/vp9_x86_systemdependent.c
+0
-12
vp9/encoder/vp9_encodemb.h
vp9/encoder/vp9_encodemb.h
+0
-8
vp9/encoder/vp9_mbgraph.c
vp9/encoder/vp9_mbgraph.c
+0
-1
vp9/encoder/vp9_mcomp.h
vp9/encoder/vp9_mcomp.h
+0
-6
vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_onyx_if.c
+4
-4
vp9/encoder/vp9_onyx_int.h
vp9/encoder/vp9_onyx_int.h
+0
-2
vp9/encoder/vp9_temporal_filter.h
vp9/encoder/vp9_temporal_filter.h
+0
-51
vp9/encoder/x86/vp9_temporal_filter_x86.h
vp9/encoder/x86/vp9_temporal_filter_x86.h
+0
-27
No files found.
vp9/common/arm/neon/vp9_recon_neon.c
View file @
926d95cd
...
...
@@ -15,7 +15,7 @@
extern
void
vp8_recon16x16mb_neon
(
unsigned
char
*
pred_ptr
,
short
*
diff_ptr
,
unsigned
char
*
dst_ptr
,
int
ystride
,
unsigned
char
*
udst_ptr
,
unsigned
char
*
vdst_ptr
);
void
vp8_recon_mb_neon
(
const
vp8_recon_rtcd_vtable_t
*
rtcd
,
MACROBLOCKD
*
xd
)
{
void
vp8_recon_mb_neon
(
MACROBLOCKD
*
xd
)
{
unsigned
char
*
pred_ptr
=
&
xd
->
predictor
[
0
];
short
*
diff_ptr
=
&
xd
->
diff
[
0
];
unsigned
char
*
dst_ptr
=
xd
->
dst
.
y_buffer
;
...
...
vp9/common/generic/vp9_systemdependent.c
View file @
926d95cd
...
...
@@ -22,16 +22,6 @@ void vp9_machine_specific_config(VP9_COMMON *ctx) {
#if CONFIG_RUNTIME_CPU_DETECT
VP9_COMMON_RTCD
*
rtcd
=
&
ctx
->
rtcd
;
#if CONFIG_POSTPROC || (CONFIG_VP9_ENCODER && CONFIG_INTERNAL_STATS)
rtcd
->
postproc
.
down
=
vp9_mbpost_proc_down_c
;
rtcd
->
postproc
.
across
=
vp9_mbpost_proc_across_ip_c
;
rtcd
->
postproc
.
downacross
=
vp9_post_proc_down_and_across_c
;
rtcd
->
postproc
.
addnoise
=
vp9_plane_add_noise_c
;
rtcd
->
postproc
.
blend_mb_inner
=
vp9_blend_mb_inner_c
;
rtcd
->
postproc
.
blend_mb_outer
=
vp9_blend_mb_outer_c
;
rtcd
->
postproc
.
blend_b
=
vp9_blend_b_c
;
#endif
#endif
#if ARCH_X86 || ARCH_X86_64
...
...
vp9/common/vp9_onyxc_int.h
View file @
926d95cd
...
...
@@ -145,9 +145,6 @@ typedef enum {
typedef
struct
VP9_COMMON_RTCD
{
#if CONFIG_RUNTIME_CPU_DETECT
#if CONFIG_POSTPROC
vp9_postproc_rtcd_vtable_t
postproc
;
#endif
int
flags
;
#else
int
unused
;
...
...
vp9/common/vp9_postproc.c
View file @
926d95cd
...
...
@@ -15,6 +15,8 @@
#include "vp9/common/vp9_textblit.h"
#include "vpx_scale/vpxscale.h"
#include "vp9_systemdependent.h"
#include "./vp9_rtcd.h"
#include <math.h>
#include <stdlib.h>
...
...
@@ -286,25 +288,26 @@ static void deblock_and_de_macro_block(YV12_BUFFER_CONFIG *source,
YV12_BUFFER_CONFIG
*
post
,
int
q
,
int
low_var_thresh
,
int
flag
,
vp9_postproc_rtcd_vtable_t
*
rtcd
)
{
int
flag
)
{
double
level
=
6.0e-05
*
q
*
q
*
q
-
.
0067
*
q
*
q
+
.
306
*
q
+
.
0065
;
int
ppl
=
(
int
)(
level
+
.
5
);
(
void
)
low_var_thresh
;
(
void
)
flag
;
POSTPROC_INVOKE
(
rtcd
,
downacross
)
(
source
->
y_buffer
,
post
->
y_buffer
,
vp9_post_proc_down_and_across
(
source
->
y_buffer
,
post
->
y_buffer
,
source
->
y_stride
,
post
->
y_stride
,
source
->
y_height
,
source
->
y_width
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
across
)(
post
->
y_buffer
,
post
->
y_stride
,
post
->
y_height
,
post
->
y_width
,
q2mbl
(
q
));
POSTPROC_INVOKE
(
rtcd
,
down
)(
post
->
y_buffer
,
post
->
y_stride
,
post
->
y_height
,
post
->
y_width
,
q2mbl
(
q
));
POSTPROC_INVOKE
(
rtcd
,
downacross
)(
source
->
u_buffer
,
post
->
u_buffer
,
vp9_mbpost_proc_across_ip
(
post
->
y_buffer
,
post
->
y_stride
,
post
->
y_height
,
post
->
y_width
,
q2mbl
(
q
));
vp9_mbpost_proc_down
(
post
->
y_buffer
,
post
->
y_stride
,
post
->
y_height
,
post
->
y_width
,
q2mbl
(
q
));
vp9_post_proc_down_and_across
(
source
->
u_buffer
,
post
->
u_buffer
,
source
->
uv_stride
,
post
->
uv_stride
,
source
->
uv_height
,
source
->
uv_width
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
downacross
)
(
source
->
v_buffer
,
post
->
v_buffer
,
vp9_post_proc_down_and_across
(
source
->
v_buffer
,
post
->
v_buffer
,
source
->
uv_stride
,
post
->
uv_stride
,
source
->
uv_height
,
source
->
uv_width
,
ppl
);
}
...
...
@@ -313,20 +316,21 @@ void vp9_deblock(YV12_BUFFER_CONFIG *source,
YV12_BUFFER_CONFIG
*
post
,
int
q
,
int
low_var_thresh
,
int
flag
,
vp9_postproc_rtcd_vtable_t
*
rtcd
)
{
int
flag
)
{
double
level
=
6.0e-05
*
q
*
q
*
q
-
.
0067
*
q
*
q
+
.
306
*
q
+
.
0065
;
int
ppl
=
(
int
)(
level
+
.
5
);
(
void
)
low_var_thresh
;
(
void
)
flag
;
POSTPROC_INVOKE
(
rtcd
,
downacross
)
(
source
->
y_buffer
,
post
->
y_buffer
,
vp9_post_proc_down_and_across
(
source
->
y_buffer
,
post
->
y_buffer
,
source
->
y_stride
,
post
->
y_stride
,
source
->
y_height
,
source
->
y_width
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
downacross
)(
source
->
u_buffer
,
post
->
u_buffer
,
vp9_post_proc_down_and_across
(
source
->
u_buffer
,
post
->
u_buffer
,
source
->
uv_stride
,
post
->
uv_stride
,
source
->
uv_height
,
source
->
uv_width
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
downacross
)(
source
->
v_buffer
,
post
->
v_buffer
,
vp9_post_proc_down_and_across
(
source
->
v_buffer
,
post
->
v_buffer
,
source
->
uv_stride
,
post
->
uv_stride
,
source
->
uv_height
,
source
->
uv_width
,
ppl
);
}
...
...
@@ -335,33 +339,27 @@ void vp9_de_noise(YV12_BUFFER_CONFIG *src,
YV12_BUFFER_CONFIG
*
post
,
int
q
,
int
low_var_thresh
,
int
flag
,
vp9_postproc_rtcd_vtable_t
*
rtcd
)
{
int
flag
)
{
double
level
=
6.0e-05
*
q
*
q
*
q
-
.
0067
*
q
*
q
+
.
306
*
q
+
.
0065
;
int
ppl
=
(
int
)(
level
+
.
5
);
(
void
)
post
;
(
void
)
low_var_thresh
;
(
void
)
flag
;
POSTPROC_INVOKE
(
rtcd
,
downacross
)
(
src
->
y_buffer
+
2
*
src
->
y_stride
+
2
,
vp9_post_proc_down_and_across
(
src
->
y_buffer
+
2
*
src
->
y_stride
+
2
,
src
->
y_buffer
+
2
*
src
->
y_stride
+
2
,
src
->
y_stride
,
src
->
y_stride
,
src
->
y_height
-
4
,
src
->
y_width
-
4
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
downacross
)(
src
->
u_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
y_stride
,
src
->
y_stride
,
src
->
y_height
-
4
,
src
->
y_width
-
4
,
ppl
);
vp9_post_proc_down_and_across
(
src
->
u_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
u_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
uv_stride
,
src
->
uv_stride
,
src
->
uv_height
-
4
,
src
->
uv_width
-
4
,
ppl
);
POSTPROC_INVOKE
(
rtcd
,
downacross
)(
src
->
v_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
uv_stride
,
src
->
uv_stride
,
src
->
uv_height
-
4
,
src
->
uv_width
-
4
,
ppl
);
vp9_post_proc_down_and_across
(
src
->
v_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
v_buffer
+
2
*
src
->
uv_stride
+
2
,
src
->
uv_stride
,
src
->
uv_stride
,
src
->
uv_height
-
4
,
src
->
uv_width
-
4
,
ppl
);
src
->
uv_stride
,
src
->
uv_stride
,
src
->
uv_height
-
4
,
src
->
uv_width
-
4
,
ppl
);
}
double
vp9_gaussian
(
double
sigma
,
double
mu
,
double
x
)
{
...
...
@@ -620,13 +618,6 @@ static void constrain_line(int x0, int *x1, int y0, int *y1,
}
}
#if CONFIG_RUNTIME_CPU_DETECT
#define RTCD_VTABLE(oci) (&(oci)->rtcd.postproc)
#else
#define RTCD_VTABLE(oci) NULL
#endif
int
vp9_post_proc_frame
(
VP9_COMMON
*
oci
,
YV12_BUFFER_CONFIG
*
dest
,
vp9_ppflags_t
*
ppflags
)
{
int
q
=
oci
->
filter_level
*
10
/
6
;
...
...
@@ -657,11 +648,9 @@ int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
if
(
flags
&
VP9D_DEMACROBLOCK
)
{
deblock_and_de_macro_block
(
oci
->
frame_to_show
,
&
oci
->
post_proc_buffer
,
q
+
(
deblock_level
-
5
)
*
10
,
1
,
0
,
RTCD_VTABLE
(
oci
));
q
+
(
deblock_level
-
5
)
*
10
,
1
,
0
);
}
else
if
(
flags
&
VP9D_DEBLOCK
)
{
vp9_deblock
(
oci
->
frame_to_show
,
&
oci
->
post_proc_buffer
,
q
,
1
,
0
,
RTCD_VTABLE
(
oci
));
vp9_deblock
(
oci
->
frame_to_show
,
&
oci
->
post_proc_buffer
,
q
,
1
,
0
);
}
else
{
vp8_yv12_copy_frame
(
oci
->
frame_to_show
,
&
oci
->
post_proc_buffer
);
}
...
...
@@ -672,7 +661,7 @@ int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
fillrd
(
&
oci
->
postproc_state
,
63
-
q
,
noise_level
);
}
POSTPROC_INVOKE
(
RTCD_VTABLE
(
oci
),
addnoise
)
(
oci
->
post_proc_buffer
.
y_buffer
,
vp9_plane_add_noise
(
oci
->
post_proc_buffer
.
y_buffer
,
oci
->
postproc_state
.
noise
,
oci
->
postproc_state
.
blackclamp
,
oci
->
postproc_state
.
whiteclamp
,
...
...
@@ -945,10 +934,7 @@ int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
U
=
B_PREDICTION_MODE_colors
[
bmi
->
as_mode
.
first
][
1
];
V
=
B_PREDICTION_MODE_colors
[
bmi
->
as_mode
.
first
][
2
];
POSTPROC_INVOKE
(
RTCD_VTABLE
(
oci
),
blend_b
)(
yl
+
bx
,
ul
+
(
bx
>>
1
),
vl
+
(
bx
>>
1
),
Y
,
U
,
V
,
vp9_blend_b
(
yl
+
bx
,
ul
+
(
bx
>>
1
),
vl
+
(
bx
>>
1
),
Y
,
U
,
V
,
0xc000
,
y_stride
);
}
bmi
++
;
...
...
@@ -963,11 +949,8 @@ int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
U
=
MB_PREDICTION_MODE_colors
[
mi
->
mbmi
.
mode
][
1
];
V
=
MB_PREDICTION_MODE_colors
[
mi
->
mbmi
.
mode
][
2
];
POSTPROC_INVOKE
(
RTCD_VTABLE
(
oci
),
blend_mb_inner
)(
y_ptr
+
x
,
u_ptr
+
(
x
>>
1
),
v_ptr
+
(
x
>>
1
),
Y
,
U
,
V
,
0xc000
,
y_stride
);
vp9_blend_mb_inner
(
y_ptr
+
x
,
u_ptr
+
(
x
>>
1
),
v_ptr
+
(
x
>>
1
),
Y
,
U
,
V
,
0xc000
,
y_stride
);
}
mi
++
;
...
...
@@ -1002,11 +985,8 @@ int vp9_post_proc_frame(VP9_COMMON *oci, YV12_BUFFER_CONFIG *dest,
U
=
MV_REFERENCE_FRAME_colors
[
mi
->
mbmi
.
ref_frame
][
1
];
V
=
MV_REFERENCE_FRAME_colors
[
mi
->
mbmi
.
ref_frame
][
2
];
POSTPROC_INVOKE
(
RTCD_VTABLE
(
oci
),
blend_mb_outer
)(
y_ptr
+
x
,
u_ptr
+
(
x
>>
1
),
v_ptr
+
(
x
>>
1
),
Y
,
U
,
V
,
0xc000
,
y_stride
);
vp9_blend_mb_outer
(
y_ptr
+
x
,
u_ptr
+
(
x
>>
1
),
v_ptr
+
(
x
>>
1
),
Y
,
U
,
V
,
0xc000
,
y_stride
);
}
mi
++
;
...
...
vp9/common/vp9_postproc.h
View file @
926d95cd
...
...
@@ -12,91 +12,6 @@
#ifndef POSTPROC_H
#define POSTPROC_H
#define prototype_postproc_inplace(sym)\
void sym(unsigned char *dst, int pitch, int rows, int cols, int flimit)
#define prototype_postproc(sym)\
void sym(unsigned char *src, unsigned char *dst, int src_pitch, \
int dst_pitch, int rows, int cols, int flimit)
#define prototype_postproc_addnoise(sym) \
void sym(unsigned char *s, char *noise, char blackclamp[16], \
char whiteclamp[16], char bothclamp[16], \
unsigned int w, unsigned int h, int pitch)
#define prototype_postproc_blend_mb_inner(sym)\
void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
int y1, int u1, int v1, int alpha, int stride)
#define prototype_postproc_blend_mb_outer(sym)\
void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
int y1, int u1, int v1, int alpha, int stride)
#define prototype_postproc_blend_b(sym)\
void sym(unsigned char *y, unsigned char *u, unsigned char *v, \
int y1, int u1, int v1, int alpha, int stride)
#if ARCH_X86 || ARCH_X86_64
#include "x86/vp9_postproc_x86.h"
#endif
#ifndef vp9_postproc_down
#define vp9_postproc_down vp9_mbpost_proc_down_c
#endif
extern
prototype_postproc_inplace
(
vp9_postproc_down
);
#ifndef vp9_postproc_across
#define vp9_postproc_across vp9_mbpost_proc_across_ip_c
#endif
extern
prototype_postproc_inplace
(
vp9_postproc_across
);
#ifndef vp9_postproc_downacross
#define vp9_postproc_downacross vp9_post_proc_down_and_across_c
#endif
extern
prototype_postproc
(
vp9_postproc_downacross
);
#ifndef vp9_postproc_addnoise
#define vp9_postproc_addnoise vp9_plane_add_noise_c
#endif
extern
prototype_postproc_addnoise
(
vp9_postproc_addnoise
);
#ifndef vp9_postproc_blend_mb_inner
#define vp9_postproc_blend_mb_inner vp9_blend_mb_inner_c
#endif
extern
prototype_postproc_blend_mb_inner
(
vp9_postproc_blend_mb_inner
);
#ifndef vp9_postproc_blend_mb_outer
#define vp9_postproc_blend_mb_outer vp9_blend_mb_outer_c
#endif
extern
prototype_postproc_blend_mb_outer
(
vp9_postproc_blend_mb_outer
);
#ifndef vp9_postproc_blend_b
#define vp9_postproc_blend_b vp9_blend_b_c
#endif
extern
prototype_postproc_blend_b
(
vp9_postproc_blend_b
);
typedef
prototype_postproc
((
*
vp9_postproc_fn_t
));
typedef
prototype_postproc_inplace
((
*
vp9_postproc_inplace_fn_t
));
typedef
prototype_postproc_addnoise
((
*
vp9_postproc_addnoise_fn_t
));
typedef
prototype_postproc_blend_mb_inner
((
*
vp9_postproc_blend_mb_inner_fn_t
));
typedef
prototype_postproc_blend_mb_outer
((
*
vp9_postproc_blend_mb_outer_fn_t
));
typedef
prototype_postproc_blend_b
((
*
vp9_postproc_blend_b_fn_t
));
typedef
struct
{
vp9_postproc_inplace_fn_t
down
;
vp9_postproc_inplace_fn_t
across
;
vp9_postproc_fn_t
downacross
;
vp9_postproc_addnoise_fn_t
addnoise
;
vp9_postproc_blend_mb_inner_fn_t
blend_mb_inner
;
vp9_postproc_blend_mb_outer_fn_t
blend_mb_outer
;
vp9_postproc_blend_b_fn_t
blend_b
;
}
vp9_postproc_rtcd_vtable_t
;
#if CONFIG_RUNTIME_CPU_DETECT
#define POSTPROC_INVOKE(ctx,fn) (ctx)->fn
#else
#define POSTPROC_INVOKE(ctx,fn) vp9_postproc_##fn
#endif
#include "vpx_ports/mem.h"
struct
postproc_state
{
int
last_q
;
...
...
@@ -116,13 +31,11 @@ void vp9_de_noise(YV12_BUFFER_CONFIG *source,
YV12_BUFFER_CONFIG
*
post
,
int
q
,
int
low_var_thresh
,
int
flag
,
vp9_postproc_rtcd_vtable_t
*
rtcd
);
int
flag
);
void
vp9_deblock
(
YV12_BUFFER_CONFIG
*
source
,
YV12_BUFFER_CONFIG
*
post
,
int
q
,
int
low_var_thresh
,
int
flag
,
vp9_postproc_rtcd_vtable_t
*
rtcd
);
int
flag
);
#endif
vp9/common/vp9_rtcd_defs.sh
View file @
926d95cd
...
...
@@ -218,6 +218,34 @@ vp9_loop_filter_simple_bh_sse2=vp9_loop_filter_bhs_sse2
vp9_loop_filter_simple_bh_media
=
vp9_loop_filter_bhs_armv6
vp9_loop_filter_simple_bh_neon
=
vp9_loop_filter_bhs_neon
#
# post proc
#
prototype void vp9_mbpost_proc_down
"unsigned char *dst, int pitch, int rows, int cols, int flimit"
specialize vp9_mbpost_proc_down mmx sse2
vp9_mbpost_proc_down_sse2
=
vp9_mbpost_proc_down_xmm
prototype void vp9_mbpost_proc_across_ip
"unsigned char *src, int pitch, int rows, int cols, int flimit"
specialize vp9_mbpost_proc_across_ip sse2
vp9_mbpost_proc_across_ip_sse2
=
vp9_mbpost_proc_across_ip_xmm
prototype void vp9_post_proc_down_and_across
"unsigned char *src_ptr, unsigned char *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit"
specialize vp9_post_proc_down_and_across mmx sse2
vp9_post_proc_down_and_across_sse2
=
vp9_post_proc_down_and_across_xmm
prototype void vp9_plane_add_noise
"unsigned char *Start, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch"
specialize vp9_plane_add_noise mmx sse2
vp9_plane_add_noise_sse2
=
vp9_plane_add_noise_wmt
prototype void vp9_blend_mb_inner
"unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
specialize vp9_blend_mb_inner
prototype void vp9_blend_mb_outer
"unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
specialize vp9_blend_mb_outer
prototype void vp9_blend_b
"unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride"
specialize vp9_blend_b
#
# sad 16x3, 3x16
#
...
...
vp9/common/x86/vp9_x86_systemdependent.c
View file @
926d95cd
...
...
@@ -31,12 +31,6 @@ void vp9_arch_x86_common_init(VP9_COMMON *ctx) {
// The commented functions need to be re-written for vpx.
if
(
flags
&
HAS_MMX
)
{
#if CONFIG_POSTPROC
rtcd
->
postproc
.
down
=
vp9_mbpost_proc_down_mmx
;
/*rtcd->postproc.across = vp9_mbpost_proc_across_ip_c;*/
rtcd
->
postproc
.
downacross
=
vp9_post_proc_down_and_across_mmx
;
rtcd
->
postproc
.
addnoise
=
vp9_plane_add_noise_mmx
;
#endif
}
#endif
...
...
@@ -47,12 +41,6 @@ void vp9_arch_x86_common_init(VP9_COMMON *ctx) {
// rtcd->idct.iwalsh16 = vp9_short_inv_walsh4x4_sse2;
#if CONFIG_POSTPROC
rtcd
->
postproc
.
down
=
vp9_mbpost_proc_down_xmm
;
rtcd
->
postproc
.
across
=
vp9_mbpost_proc_across_ip_xmm
;
rtcd
->
postproc
.
downacross
=
vp9_post_proc_down_and_across_xmm
;
rtcd
->
postproc
.
addnoise
=
vp9_plane_add_noise_wmt
;
#endif
}
#endif
...
...
vp9/encoder/vp9_encodemb.h
View file @
926d95cd
...
...
@@ -25,14 +25,6 @@ typedef struct {
}
MODE_DEFINITION
;
#if CONFIG_RUNTIME_CPU_DETECT
#define ENCODEMB_INVOKE(ctx,fn) (ctx)->fn
#else
#define ENCODEMB_INVOKE(ctx,fn) vp9_encodemb_##fn
#endif
#include "vp9_onyx_int.h"
struct
VP9_ENCODER_RTCD
;
void
vp9_encode_inter16x16
(
MACROBLOCK
*
x
);
...
...
vp9/encoder/vp9_mbgraph.c
View file @
926d95cd
...
...
@@ -184,7 +184,6 @@ static int do_16x16_zerozero_search
// FIXME should really use something like near/nearest MV and/or MV prediction
xd
->
pre
.
y_buffer
=
ref
->
y_buffer
+
mb_y_offset
;
xd
->
pre
.
y_stride
=
ref
->
y_stride
;
// VARIANCE_INVOKE(&cpi->rtcd.variance, satd16x16)
err
=
vp9_sad16x16
(
ref
->
y_buffer
+
mb_y_offset
,
ref
->
y_stride
,
xd
->
dst
.
y_buffer
,
xd
->
dst
.
y_stride
,
INT_MAX
);
...
...
vp9/encoder/vp9_mcomp.h
View file @
926d95cd
...
...
@@ -82,10 +82,4 @@ typedef int (*vp9_diamond_search_fn_t)(MACROBLOCK *x, BLOCK *b, BLOCKD *d,
int_mv
*
center_mv
);
#if CONFIG_RUNTIME_CPU_DETECT
#define SEARCH_INVOKE(ctx,fn) (ctx)->fn
#else
#define SEARCH_INVOKE(ctx,fn) vp9_search_##fn
#endif
#endif
vp9/encoder/vp9_onyx_if.c
View file @
926d95cd
...
...
@@ -30,7 +30,6 @@
#include "vpx_mem/vpx_mem.h"
#include "vp9/common/vp9_swapyv12buffer.h"
#include "vpx_ports/vpx_timer.h"
#include "vp9_temporal_filter.h"
#include "vp9/common/vp9_seg_common.h"
#include "vp9_mbgraph.h"
...
...
@@ -3272,9 +3271,9 @@ static void encode_frame_to_data_rate
if
(
cm
->
frame_type
==
KEY_FRAME
)
{
vp9_de_noise
(
cpi
->
Source
,
cpi
->
Source
,
l
,
1
,
0
,
RTCD
(
postproc
)
);
vp9_de_noise
(
cpi
->
Source
,
cpi
->
Source
,
l
,
1
,
0
);
}
else
{
vp9_de_noise
(
cpi
->
Source
,
cpi
->
Source
,
l
,
1
,
0
,
RTCD
(
postproc
)
);
vp9_de_noise
(
cpi
->
Source
,
cpi
->
Source
,
l
,
1
,
0
);
src
=
cpi
->
Source
->
y_buffer
;
...
...
@@ -4384,7 +4383,8 @@ int vp9_get_compressed_data(VP9_PTR ptr, unsigned int *frame_flags,
double
frame_psnr2
,
frame_ssim2
=
0
;
double
weight
=
0
;
#if CONFIG_POSTPROC
vp9_deblock
(
cm
->
frame_to_show
,
&
cm
->
post_proc_buffer
,
cm
->
filter_level
*
10
/
6
,
1
,
0
,
IF_RTCD
(
&
cm
->
rtcd
.
postproc
));
vp9_deblock
(
cm
->
frame_to_show
,
&
cm
->
post_proc_buffer
,
cm
->
filter_level
*
10
/
6
,
1
,
0
);
#endif
vp9_clear_system_state
();
...
...
vp9/encoder/vp9_onyx_int.h
View file @
926d95cd
...
...
@@ -26,7 +26,6 @@
#include "vpx_ports/mem.h"
#include "vpx/internal/vpx_codec_internal.h"
#include "vp9_mcomp.h"
#include "vp9_temporal_filter.h"
#include "vp9/common/vp9_findnearmv.h"
#include "vp9_lookahead.h"
...
...
@@ -393,7 +392,6 @@ typedef struct {
typedef
struct
VP9_ENCODER_RTCD
{
VP9_COMMON_RTCD
*
common
;
vp9_temporal_rtcd_vtable_t
temporal
;
}
VP9_ENCODER_RTCD
;
enum
BlockSize
{
...
...
vp9/encoder/vp9_temporal_filter.h
deleted
100644 → 0
View file @
00e2c6bf
/*
* Copyright (c) 2010 The WebM project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef __INC_TEMPORAL_FILTER_H
#define __INC_TEMPORAL_FILTER_H
#define prototype_apply(sym)\
void (sym) \
( \
unsigned char *frame1, \
unsigned int stride, \
unsigned char *frame2, \
unsigned int block_size, \
int strength, \
int filter_weight, \
unsigned int *accumulator, \
unsigned short *count \
)
#if ARCH_X86 || ARCH_X86_64
#include "x86/vp9_temporal_filter_x86.h"
#endif
#ifndef vp9_temporal_filter_apply
#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
#endif
extern
prototype_apply
(
vp9_temporal_filter_apply
);
typedef
struct
{
prototype_apply
(
*
apply
);
}
vp9_temporal_rtcd_vtable_t
;
#if CONFIG_RUNTIME_CPU_DETECT
#define TEMPORAL_INVOKE(ctx,fn) (ctx)->fn
#else
#define TEMPORAL_INVOKE(ctx,fn) vp9_temporal_filter_##fn
#endif
struct
VP9_COMP
;
extern
void
vp9_temporal_filter_prepare_c
(
struct
VP9_COMP
*
cpi
,
int
distance
);
#endif // __INC_TEMPORAL_FILTER_H
vp9/encoder/x86/vp9_temporal_filter_x86.h
deleted
100644 → 0
View file @
00e2c6bf
/*
* Copyright (c) 2010 The WebM project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef __INC_TEMPORAL_FILTER_X86_H
#define __INC_TEMPORAL_FILTER_X86_H
#if HAVE_SSE2
extern
prototype_apply
(
vp9_temporal_filter_apply_sse2
);
#if !CONFIG_RUNTIME_CPU_DETECT
#undef vp9_temporal_filter_apply
#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
#endif
#endif
#endif // __INC_TEMPORAL_FILTER_X86_H
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