summaryrefslogtreecommitdiff
path: root/libavcodec/hevcdec.c
diff options
context:
space:
mode:
authorLimin Wang <lance.lmwang@gmail.com>2020-06-11 10:25:47 +0800
committerLimin Wang <lance.lmwang@gmail.com>2020-06-15 07:19:55 +0800
commited6dbbfc16e0121de5562c097535285d3136a6c5 (patch)
tree7c6a3417a3e7e65f898ec47c824a702398c83750 /libavcodec/hevcdec.c
parent318a1a383dc0312ad5b4afec0ddf0d8d231f5c79 (diff)
avcodec/hevc_sei: add support for user data unregistered SEI message
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Diffstat (limited to 'libavcodec/hevcdec.c')
-rw-r--r--libavcodec/hevcdec.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/libavcodec/hevcdec.c b/libavcodec/hevcdec.c
index 0772608a30..c9e28f5826 100644
--- a/libavcodec/hevcdec.c
+++ b/libavcodec/hevcdec.c
@@ -2794,6 +2794,20 @@ static int set_side_data(HEVCContext *s)
s->avctx->properties |= FF_CODEC_PROPERTY_CLOSED_CAPTIONS;
}
+ for (int i = 0; i < s->sei.unregistered.nb_buf_ref; i++) {
+ HEVCSEIUnregistered *unreg = &s->sei.unregistered;
+
+ if (unreg->buf_ref[i]) {
+ AVFrameSideData *sd = av_frame_new_side_data_from_buf(out,
+ AV_FRAME_DATA_SEI_UNREGISTERED,
+ unreg->buf_ref[i]);
+ if (!sd)
+ av_buffer_unref(&unreg->buf_ref[i]);
+ unreg->buf_ref[i] = NULL;
+ }
+ }
+ s->sei.unregistered.nb_buf_ref = 0;
+
return 0;
}