Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
3cda179f
F
Ffmpeg
项目概览
小白菜888
/
Ffmpeg
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Ffmpeg
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3cda179f
编写于
3月 28, 2014
作者:
C
Clément Bœsch
提交者:
Anton Khirnov
8月 03, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
vp9mc/x86: rename ff_* to ff_vp9_*
Signed-off-by:
N
Anton Khirnov
<
anton@khirnov.net
>
上级
8be8444d
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
54 addition
and
54 deletion
+54
-54
libavcodec/x86/vp9dsp_init.c
libavcodec/x86/vp9dsp_init.c
+47
-47
libavcodec/x86/vp9mc.asm
libavcodec/x86/vp9mc.asm
+7
-7
未找到文件。
libavcodec/x86/vp9dsp_init.c
浏览文件 @
3cda179f
...
...
@@ -29,11 +29,11 @@
#if HAVE_YASM
#define fpel_func(avg, sz, opt) \
void ff_ ## avg ## sz ## _ ## opt(uint8_t *dst, const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, int mx, int my)
#define fpel_func(avg, sz, opt)
\
void ff_
vp9_
## avg ## sz ## _ ## opt(uint8_t *dst, const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, int mx, int my)
fpel_func
(
put
,
4
,
mmx
);
fpel_func
(
put
,
8
,
mmx
);
...
...
@@ -47,14 +47,14 @@ fpel_func(avg, 32, sse2);
fpel_func
(
avg
,
64
,
sse2
);
#undef fpel_func
#define mc_func(avg, sz, dir, opt) \
void \
ff_ ## avg ## _8tap_1d_ ## dir ## _ ## sz ## _ ## opt(uint8_t *dst, \
const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, \
const int8_t (*filter)[16])
#define mc_func(avg, sz, dir, opt)
\
void
\
ff_
vp9_
## avg ## _8tap_1d_ ## dir ## _ ## sz ## _ ## opt(uint8_t *dst, \
const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, \
const int8_t (*filter)[16])
#define mc_funcs(sz) \
mc_func(put, sz, h, ssse3); \
...
...
@@ -73,19 +73,19 @@ mc_funcs(16);
#define mc_rep_func(avg, sz, hsz, dir, opt) \
static av_always_inline void \
ff_
## avg ## _8tap_1d_ ## dir ## _ ## sz ## _ ## opt(uint8_t *dst,
\
ff_
vp9_ ## avg ## _8tap_1d_ ## dir ## _ ## sz ## _ ## opt(uint8_t *dst,
\
const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, \
const int8_t (*filter)[16]) \
{ \
ff_
## avg ## _8tap_1d_ ## dir ## _ ## hsz ## _ ## opt(dst, src,
\
ff_
vp9_ ## avg ## _8tap_1d_ ## dir ## _ ## hsz ## _ ## opt(dst, src,
\
dst_stride, \
src_stride, \
h, \
filter); \
ff_
## avg ## _8tap_1d_ ## dir ## _ ## hsz ## _ ## opt(dst + hsz,
\
ff_
vp9_ ## avg ## _8tap_1d_ ## dir ## _ ## hsz ## _ ## opt(dst + hsz,
\
src + hsz, \
dst_stride, \
src_stride, \
...
...
@@ -109,23 +109,23 @@ mc_rep_funcs(64, 32);
extern
const
int8_t
ff_filters_ssse3
[
3
][
15
][
4
][
16
];
#define filter_8tap_2d_fn(op, sz, f, fname) \
static void \
op ## _8tap_ ## fname ## _ ## sz ## hv_ssse3(uint8_t *dst, \
const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
LOCAL_ALIGNED_16(uint8_t, temp, [71 * 64]); \
ff_
put_8tap_1d_h_ ## sz ## _ssse3(temp, src - 3 * src_stride,
\
64, src_stride,
\
h + 7,
\
ff_filters_ssse3[f][mx - 1]);
\
ff_
## op ## _8tap_1d_v_ ## sz ## _ssse3(dst, temp + 3 * 64,
\
dst_stride, 64,
\
h,
\
ff_filters_ssse3[f][my - 1]); \
#define filter_8tap_2d_fn(op, sz, f, fname)
\
static void
\
op ## _8tap_ ## fname ## _ ## sz ## hv_ssse3(uint8_t *dst,
\
const uint8_t *src,
\
ptrdiff_t dst_stride,
\
ptrdiff_t src_stride,
\
int h, int mx, int my)
\
{
\
LOCAL_ALIGNED_16(uint8_t, temp, [71 * 64]);
\
ff_
vp9_put_8tap_1d_h_ ## sz ## _ssse3(temp, src - 3 * src_stride,
\
64, src_stride,
\
h + 7,
\
ff_filters_ssse3[f][mx - 1]);
\
ff_
vp9_ ## op ## _8tap_1d_v_ ## sz ## _ssse3(dst, temp + 3 * 64,
\
dst_stride, 64,
\
h,
\
ff_filters_ssse3[f][my - 1]); \
}
#define filters_8tap_2d_fn(op, sz) \
...
...
@@ -147,19 +147,19 @@ filters_8tap_2d_fn2(avg)
#undef filters_8tap_2d_fn
#undef filter_8tap_2d_fn
#define filter_8tap_1d_fn(op, sz, f, fname, dir, dvar) \
static void \
op ## _8tap_ ## fname ## _ ## sz ## dir ## _ssse3(uint8_t *dst, \
const uint8_t *src, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int h, int mx, \
int my) \
{ \
ff_
## op ## _8tap_1d_ ## dir ## _ ## sz ## _ssse3(dst, src,
\
dst_stride,
\
src_stride, h,
\
ff_filters_ssse3[f][dvar - 1]); \
#define filter_8tap_1d_fn(op, sz, f, fname, dir, dvar)
\
static void
\
op ## _8tap_ ## fname ## _ ## sz ## dir ## _ssse3(uint8_t *dst,
\
const uint8_t *src,
\
ptrdiff_t dst_stride,
\
ptrdiff_t src_stride,
\
int h, int mx,
\
int my)
\
{
\
ff_
vp9_ ## op ## _8tap_1d_ ## dir ## _ ## sz ## _ssse3(dst, src,
\
dst_stride,
\
src_stride, h,
\
ff_filters_ssse3[f][dvar - 1]); \
}
#define filters_8tap_1d_fn(op, sz, dir, dvar) \
...
...
@@ -197,7 +197,7 @@ av_cold void ff_vp9dsp_init_x86(VP9DSPContext *dsp)
dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = \
dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = \
dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = \
dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = ff_ ## type ## sz ## _ ## opt
dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = ff_
vp9_
## type ## sz ## _ ## opt
#define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type, opt) \
...
...
libavcodec/x86/vp9mc.asm
浏览文件 @
3cda179f
...
...
@@ -86,7 +86,7 @@ SECTION .text
%macro filter_h_fn 1
%assign %%px mmsize/2
cglobal
%
1
_8tap_1d_h_
%+
%%
px
,
6
,
6
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
cglobal
vp9_
%
1
_8tap_1d_h_
%+
%%
px
,
6
,
6
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
mova
m6
,
[
pw_256
]
mova
m7
,
[
filteryq
+
0
]
%if ARCH_X86_64 && mmsize > 8
...
...
@@ -147,7 +147,7 @@ filter_h_fn avg
%if ARCH_X86_64
%macro filter_hx2_fn 1
%assign %%px mmsize
cglobal
%
1
_8tap_1d_h_
%+
%%
px
,
6
,
6
,
14
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
cglobal
vp9_
%
1
_8tap_1d_h_
%+
%%
px
,
6
,
6
,
14
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
mova
m13
,
[
pw_256
]
mova
m8
,
[
filteryq
+
0
]
mova
m9
,
[
filteryq
+
16
]
...
...
@@ -203,9 +203,9 @@ filter_hx2_fn avg
%macro filter_v_fn 1
%assign %%px mmsize/2
%if ARCH_X86_64
cglobal
%
1
_8tap_1d_v_
%+
%%
px
,
6
,
8
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
,
src4
,
ss
tride3
cglobal
vp9_
%
1
_8tap_1d_v_
%+
%%
px
,
6
,
8
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
,
src4
,
ss
tride3
%else
cglobal
%
1
_8tap_1d_v_
%+
%%
px
,
4
,
7
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
filtery
,
src4
,
ss
tride3
cglobal
vp9_
%
1
_8tap_1d_v_
%+
%%
px
,
4
,
7
,
11
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
filtery
,
src4
,
ss
tride3
mov
filteryq
,
r5mp
%define hd r4mp
%endif
...
...
@@ -276,7 +276,7 @@ filter_v_fn avg
%macro filter_vx2_fn 1
%assign %%px mmsize
cglobal
%
1
_8tap_1d_v_
%+
%%
px
,
6
,
8
,
14
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
,
src4
,
ss
tride3
cglobal
vp9_
%
1
_8tap_1d_v_
%+
%%
px
,
6
,
8
,
14
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
filtery
,
src4
,
ss
tride3
mova
m13
,
[
pw_256
]
lea
ss
tride3q
,
[
ss
trideq
*
3
]
lea
src4q
,
[
srcq
+
ss
trideq
]
...
...
@@ -346,11 +346,11 @@ filter_vx2_fn avg
%endif
%if %2 <= 16
cglobal
%
1
%
2
,
5
,
7
,
4
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
ds
tride3
,
ss
tride3
cglobal
vp9_
%
1
%
2
,
5
,
7
,
4
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
,
ds
tride3
,
ss
tride3
lea
ss
tride3q
,
[
ss
trideq
*
3
]
lea
ds
tride3q
,
[
ds
trideq
*
3
]
%else
cglobal
%
1
%
2
,
5
,
5
,
4
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
cglobal
vp9_
%
1
%
2
,
5
,
5
,
4
,
ds
t
,
src
,
ds
tride
,
ss
tride
,
h
%endif
.loop:
%%srcfn m0, [srcq]
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录