Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
8ef0fdaa
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,体验更适合开发者的 AI 搜索 >>
提交
8ef0fdaa
编写于
12月 03, 2018
作者:
H
hwrenx
提交者:
Steven Liu
12月 03, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
lavc/libdavs2: fix function return value error
Signed-off-by:
N
hwrenx
<
hwrenx@126.com
>
上级
42597d6f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
6 deletion
+10
-6
libavcodec/libdavs2.c
libavcodec/libdavs2.c
+10
-6
未找到文件。
libavcodec/libdavs2.c
浏览文件 @
8ef0fdaa
...
...
@@ -58,7 +58,7 @@ static av_cold int davs2_init(AVCodecContext *avctx)
return
0
;
}
static
int
davs2_dump_frames
(
AVCodecContext
*
avctx
,
davs2_picture_t
*
pic
,
static
int
davs2_dump_frames
(
AVCodecContext
*
avctx
,
davs2_picture_t
*
pic
,
int
*
got_frame
,
davs2_seq_info_t
*
headerset
,
int
ret_type
,
AVFrame
*
frame
)
{
DAVS2Context
*
cad
=
avctx
->
priv_data
;
...
...
@@ -66,8 +66,10 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic,
int
plane
=
0
;
int
line
=
0
;
if
(
!
headerset
)
if
(
!
headerset
)
{
*
got_frame
=
0
;
return
0
;
}
if
(
!
pic
||
ret_type
==
DAVS2_GOT_HEADER
)
{
avctx
->
width
=
headerset
->
width
;
...
...
@@ -76,6 +78,7 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic,
AV_PIX_FMT_YUV420P10
:
AV_PIX_FMT_YUV420P
;
avctx
->
framerate
=
av_d2q
(
headerset
->
frame_rate
,
4096
);
*
got_frame
=
0
;
return
0
;
}
...
...
@@ -122,7 +125,8 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic,
frame
->
pts
=
cad
->
out_frame
.
pts
;
frame
->
format
=
avctx
->
pix_fmt
;
return
1
;
*
got_frame
=
1
;
return
0
;
}
static
int
send_delayed_frame
(
AVCodecContext
*
avctx
,
AVFrame
*
frame
,
int
*
got_frame
)
...
...
@@ -136,7 +140,7 @@ static int send_delayed_frame(AVCodecContext *avctx, AVFrame *frame, int *got_fr
return
AVERROR_EXTERNAL
;
}
if
(
ret
==
DAVS2_GOT_FRAME
)
{
*
got_frame
=
davs2_dump_frames
(
avctx
,
&
cad
->
ou
t_frame
,
&
cad
->
headerset
,
ret
,
frame
);
ret
=
davs2_dump_frames
(
avctx
,
&
cad
->
out_frame
,
go
t_frame
,
&
cad
->
headerset
,
ret
,
frame
);
davs2_decoder_frame_unref
(
cad
->
decoder
,
&
cad
->
out_frame
);
}
return
ret
;
...
...
@@ -185,11 +189,11 @@ static int davs2_decode_frame(AVCodecContext *avctx, void *data,
ret
=
davs2_decoder_recv_frame
(
cad
->
decoder
,
&
cad
->
headerset
,
&
cad
->
out_frame
);
if
(
ret
!=
DAVS2_DEFAULT
)
{
*
got_frame
=
davs2_dump_frames
(
avctx
,
&
cad
->
ou
t_frame
,
&
cad
->
headerset
,
ret
,
frame
);
ret
=
davs2_dump_frames
(
avctx
,
&
cad
->
out_frame
,
go
t_frame
,
&
cad
->
headerset
,
ret
,
frame
);
davs2_decoder_frame_unref
(
cad
->
decoder
,
&
cad
->
out_frame
);
}
return
buf_size
;
return
ret
==
0
?
buf_size
:
ret
;
}
AVCodec
ff_libdavs2_decoder
=
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录