[FFmpeg-cvslog] lavc/hevcdec: only call export_stream_params_from_sei() once per frame
Anton Khirnov
git at videolan.org
Tue Jun 11 18:51:00 EEST 2024
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sat Jun 1 16:24:00 2024 +0200| [07eb60c0da34d146b72064ec1f316d64a6ac7ebb] | committer: Anton Khirnov
lavc/hevcdec: only call export_stream_params_from_sei() once per frame
Not once per each slice header, as it makes no sense and may cause races
with frame threading.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=07eb60c0da34d146b72064ec1f316d64a6ac7ebb
---
libavcodec/hevc/hevcdec.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavcodec/hevc/hevcdec.c b/libavcodec/hevc/hevcdec.c
index dd3c188418..bf6e93ba1b 100644
--- a/libavcodec/hevc/hevcdec.c
+++ b/libavcodec/hevc/hevcdec.c
@@ -648,10 +648,6 @@ static int hls_slice_header(HEVCContext *s, GetBitContext *gb)
s->max_ra = INT_MAX;
}
- ret = export_stream_params_from_sei(s);
- if (ret < 0)
- return ret;
-
sh->dependent_slice_segment_flag = 0;
if (!sh->first_slice_in_pic_flag) {
int slice_address_length;
@@ -2965,6 +2961,10 @@ static int hevc_frame_start(HEVCContext *s)
!(s->avctx->export_side_data & AV_CODEC_EXPORT_DATA_FILM_GRAIN) &&
!s->avctx->hwaccel;
+ ret = export_stream_params_from_sei(s);
+ if (ret < 0)
+ return ret;
+
ret = set_side_data(s);
if (ret < 0)
goto fail;
More information about the ffmpeg-cvslog
mailing list