Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
2f300f89
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,发现更多精彩内容 >>
提交
2f300f89
编写于
7月 27, 2005
作者:
M
Michael Niedermayer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
motion vector limit for mpeg2
Originally committed as revision 4482 to
svn://svn.ffmpeg.org/ffmpeg/trunk
上级
966265bc
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
5 deletion
+10
-5
libavcodec/motion_est.c
libavcodec/motion_est.c
+10
-5
未找到文件。
libavcodec/motion_est.c
浏览文件 @
2f300f89
...
...
@@ -1896,6 +1896,11 @@ int ff_get_best_fcode(MpegEncContext * s, int16_t (*mv_table)[2], int type)
int
best_fcode
=-
1
;
int
best_score
=-
10000000
;
if
(
s
->
msmpeg4_version
)
range
=
FFMIN
(
range
,
16
);
else
if
(
s
->
codec_id
==
CODEC_ID_MPEG2VIDEO
&&
s
->
avctx
->
strict_std_compliance
>=
FF_COMPLIANCE_NORMAL
)
range
=
FFMIN
(
range
,
256
);
for
(
i
=
0
;
i
<
8
;
i
++
)
score
[
i
]
=
s
->
mb_num
*
(
8
-
i
);
for
(
y
=
0
;
y
<
s
->
mb_height
;
y
++
){
...
...
@@ -1950,9 +1955,10 @@ void ff_fix_long_p_mvs(MpegEncContext * s)
int
y
,
range
;
assert
(
s
->
pict_type
==
P_TYPE
);
range
=
(((
s
->
out_format
==
FMT_MPEG1
)
?
8
:
16
)
<<
f_code
);
if
(
s
->
msmpeg4_version
)
range
=
16
;
range
=
(((
s
->
out_format
==
FMT_MPEG1
||
s
->
msmpeg4_version
)
?
8
:
16
)
<<
f_code
);
assert
(
range
<=
16
||
!
s
->
msmpeg4_version
);
assert
(
range
<=
256
||
!
(
s
->
codec_id
==
CODEC_ID_MPEG2VIDEO
&&
s
->
avctx
->
strict_std_compliance
>=
FF_COMPLIANCE_NORMAL
));
if
(
c
->
avctx
->
me_range
&&
range
>
c
->
avctx
->
me_range
)
range
=
c
->
avctx
->
me_range
;
...
...
@@ -2000,9 +2006,8 @@ void ff_fix_long_mvs(MpegEncContext * s, uint8_t *field_select_table, int field_
int
y
,
h_range
,
v_range
;
// RAL: 8 in MPEG-1, 16 in MPEG-4
int
range
=
(((
s
->
out_format
==
FMT_MPEG1
)
?
8
:
16
)
<<
f_code
);
int
range
=
(((
s
->
out_format
==
FMT_MPEG1
||
s
->
msmpeg4_version
)
?
8
:
16
)
<<
f_code
);
if
(
s
->
msmpeg4_version
)
range
=
16
;
if
(
c
->
avctx
->
me_range
&&
range
>
c
->
avctx
->
me_range
)
range
=
c
->
avctx
->
me_range
;
h_range
=
range
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录