summaryrefslogtreecommitdiff
path: root/libavcodec/hevc_parser.c
diff options
context:
space:
mode:
authorPraveen Karadugattu <praveenkumar@outlook.com>2020-01-23 18:54:17 +0530
committerPaul B Mahol <onemda@gmail.com>2020-02-06 17:04:41 +0100
commit31d7b17c4671329a372e2762b4c5892dd0314ee5 (patch)
treecc2776bb3ebdd010d2004be7142cd9aa76547329 /libavcodec/hevc_parser.c
parent270068b5af281dae9280306b1621d1f2b7920adb (diff)
downloadffmpeg-31d7b17c4671329a372e2762b4c5892dd0314ee5.tar.gz
avcodec/hevc: add support for Frame Duplication (Doubling/Tripling)
Parse picture_struct SEI value.
Diffstat (limited to 'libavcodec/hevc_parser.c')
-rw-r--r--libavcodec/hevc_parser.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/hevc_parser.c b/libavcodec/hevc_parser.c
index 87d5dba4f5..84f19b485c 100644
--- a/libavcodec/hevc_parser.c
+++ b/libavcodec/hevc_parser.c
@@ -235,6 +235,11 @@ static int parse_nal_units(AVCodecParserContext *s, const uint8_t *buf,
case HEVC_NAL_RADL_R:
case HEVC_NAL_RASL_N:
case HEVC_NAL_RASL_R:
+ if (ctx->sei.picture_timing.picture_struct == HEVC_SEI_PIC_STRUCT_FRAME_DOUBLING) {
+ s->repeat_pict = 1;
+ } else if (ctx->sei.picture_timing.picture_struct == HEVC_SEI_PIC_STRUCT_FRAME_TRIPLING) {
+ s->repeat_pict = 2;
+ }
ret = hevc_parse_slice_header(s, nal, avctx);
if (ret)
return ret;