[FFmpeg-devel] [PATCH v2 3/3] lavc/libdavs2: correct frame type setting
hwren
hwrenx at 126.com
Wed Oct 31 12:23:51 EET 2018
Signed-off-by: hwren <hwrenx at 126.com>
---
libavcodec/libdavs2.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/libavcodec/libdavs2.c b/libavcodec/libdavs2.c
index a1815d2..d7bcaa3 100644
--- a/libavcodec/libdavs2.c
+++ b/libavcodec/libdavs2.c
@@ -94,11 +94,26 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic,
pic->widths[plane] * bytes_per_sample);
}
+ switch (pic->type) {
+ case DAVS2_PIC_I:
+ frame->pict_type = AV_PICTURE_TYPE_I;
+ break;
+ case DAVS2_PIC_P:
+ frame->pict_type = AV_PICTURE_TYPE_P;
+ break;
+ case DAVS2_PIC_B:
+ case DAVS2_PIC_F:
+ frame->pict_type = AV_PICTURE_TYPE_B;
+ break;
+ default:
+ frame->pict_type = AV_PICTURE_TYPE_NONE;
+ }
+
frame->width = cad->headerset.width;
frame->height = cad->headerset.height;
frame->pts = cad->out_frame.pts;
- frame->pict_type = pic->type;
frame->format = avctx->pix_fmt;
+ frame->key_frame = pic->type == DAVS2_PIC_I ? 1 : 0;
return 1;
}
--
2.7.4
More information about the ffmpeg-devel
mailing list