aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <nfxjfg@googlemail.com>2017-06-29 15:36:55 +0200
committerwm4 <nfxjfg@googlemail.com>2017-06-30 19:18:11 +0200
commitff2d21a58c9c4797ea2d1c4ded09c797abc5a39f (patch)
tree684f9ab90c035a085dba9bc741b0fd67df6ce252
parentac8ad8d0981baee33bc5e9cd3b0a44643971f2e8 (diff)
downloadffmpeg-ff2d21a58c9c4797ea2d1c4ded09c797abc5a39f.tar.gz
hevcdec: properly export some side data with frame threading
I noticed this with mastering display data. If frame threading is enabled, this side data is exported only for some frames. It turns out it's not properly propagated to the worker threads. I didn't touch A53 captions, because that involves memory allocation and freeing the data as side data is exported. Micro bump so that API users can detect the bug fix.
-rw-r--r--libavcodec/hevcdec.c6
-rw-r--r--libavcodec/version.h2
2 files changed, 7 insertions, 1 deletions
diff --git a/libavcodec/hevcdec.c b/libavcodec/hevcdec.c
index 3b24fb9bec..cc8ac82164 100644
--- a/libavcodec/hevcdec.c
+++ b/libavcodec/hevcdec.c
@@ -3355,6 +3355,12 @@ static int hevc_update_thread_context(AVCodecContext *dst,
s->max_ra = INT_MAX;
}
+ s->sei.frame_packing = s0->sei.frame_packing;
+ s->sei.display_orientation = s0->sei.display_orientation;
+ s->sei.mastering_display = s0->sei.mastering_display;
+ s->sei.content_light = s0->sei.content_light;
+ s->sei.alternative_transfer = s0->sei.alternative_transfer;
+
return 0;
}
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 06615268f3..3c5fea9327 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -29,7 +29,7 @@
#define LIBAVCODEC_VERSION_MAJOR 57
#define LIBAVCODEC_VERSION_MINOR 100
-#define LIBAVCODEC_VERSION_MICRO 102
+#define LIBAVCODEC_VERSION_MICRO 103
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \