Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
a2f088c0
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,发现更多精彩内容 >>
提交
a2f088c0
编写于
4月 14, 2014
作者:
M
Michael Niedermayer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
swscale: factor ff_sws_init_range_convert() out
Signed-off-by:
N
Michael Niedermayer
<
michaelni@gmx.at
>
上级
3751e5a8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
28 addition
and
21 deletion
+28
-21
libswscale/swscale.c
libswscale/swscale.c
+26
-21
libswscale/swscale_internal.h
libswscale/swscale_internal.h
+2
-0
未找到文件。
libswscale/swscale.c
浏览文件 @
a2f088c0
...
...
@@ -705,6 +705,31 @@ static int swscale(SwsContext *c, const uint8_t *src[],
return
dstY
-
lastDstY
;
}
av_cold
void
ff_sws_init_range_convert
(
SwsContext
*
c
)
{
c
->
lumConvertRange
=
NULL
;
c
->
chrConvertRange
=
NULL
;
if
(
c
->
srcRange
!=
c
->
dstRange
&&
!
isAnyRGB
(
c
->
dstFormat
))
{
if
(
c
->
dstBpc
<=
14
)
{
if
(
c
->
srcRange
)
{
c
->
lumConvertRange
=
lumRangeFromJpeg_c
;
c
->
chrConvertRange
=
chrRangeFromJpeg_c
;
}
else
{
c
->
lumConvertRange
=
lumRangeToJpeg_c
;
c
->
chrConvertRange
=
chrRangeToJpeg_c
;
}
}
else
{
if
(
c
->
srcRange
)
{
c
->
lumConvertRange
=
lumRangeFromJpeg16_c
;
c
->
chrConvertRange
=
chrRangeFromJpeg16_c
;
}
else
{
c
->
lumConvertRange
=
lumRangeToJpeg16_c
;
c
->
chrConvertRange
=
chrRangeToJpeg16_c
;
}
}
}
}
static
av_cold
void
sws_init_swscale
(
SwsContext
*
c
)
{
enum
AVPixelFormat
srcFormat
=
c
->
srcFormat
;
...
...
@@ -731,27 +756,7 @@ static av_cold void sws_init_swscale(SwsContext *c)
:
hScale16To15_c
;
}
c
->
lumConvertRange
=
NULL
;
c
->
chrConvertRange
=
NULL
;
if
(
c
->
srcRange
!=
c
->
dstRange
&&
!
isAnyRGB
(
c
->
dstFormat
))
{
if
(
c
->
dstBpc
<=
14
)
{
if
(
c
->
srcRange
)
{
c
->
lumConvertRange
=
lumRangeFromJpeg_c
;
c
->
chrConvertRange
=
chrRangeFromJpeg_c
;
}
else
{
c
->
lumConvertRange
=
lumRangeToJpeg_c
;
c
->
chrConvertRange
=
chrRangeToJpeg_c
;
}
}
else
{
if
(
c
->
srcRange
)
{
c
->
lumConvertRange
=
lumRangeFromJpeg16_c
;
c
->
chrConvertRange
=
chrRangeFromJpeg16_c
;
}
else
{
c
->
lumConvertRange
=
lumRangeToJpeg16_c
;
c
->
chrConvertRange
=
chrRangeToJpeg16_c
;
}
}
}
ff_sws_init_range_convert
(
c
);
if
(
!
(
isGray
(
srcFormat
)
||
isGray
(
c
->
dstFormat
)
||
srcFormat
==
AV_PIX_FMT_MONOBLACK
||
srcFormat
==
AV_PIX_FMT_MONOWHITE
))
...
...
libswscale/swscale_internal.h
浏览文件 @
a2f088c0
...
...
@@ -617,6 +617,8 @@ void ff_yuv2rgb_init_tables_ppc(SwsContext *c, const int inv_table[4],
void
updateMMXDitherTables
(
SwsContext
*
c
,
int
dstY
,
int
lumBufIndex
,
int
chrBufIndex
,
int
lastInLumBuf
,
int
lastInChrBuf
);
av_cold
void
ff_sws_init_range_convert
(
SwsContext
*
c
);
SwsFunc
ff_yuv2rgb_init_x86
(
SwsContext
*
c
);
SwsFunc
ff_yuv2rgb_init_ppc
(
SwsContext
*
c
);
SwsFunc
ff_yuv2rgb_init_bfin
(
SwsContext
*
c
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录