From 7c95c7de4ae2109baa00cd12b36f5fa69cc1b095 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Tue, 11 Jun 2024 09:24:38 +0200 Subject: [PATCH] avcodec/libx265: Don't copy A53 closed captions by default The SEI handling of libx265 is buggy and can easily lead to memory corruption: It reuses certain buffers, but when reusing them it presumes that it is enough for these buffers to exist and does not check whether they are actually large enough to hold what is intended to be stored in them.* Our users are exposed to this because forwarding A53 CC data is enabled by default. Change this to make it disabled by default. "Fixes" tickets #10411, #11052 and (presumably) #10906. *: See https://trac.ffmpeg.org/ticket/9666#comment:1 Signed-off-by: Andreas Rheinhardt --- libavcodec/libx265.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c index ac1dbc4f97..0dc7ab6eeb 100644 --- a/libavcodec/libx265.c +++ b/libavcodec/libx265.c @@ -948,7 +948,7 @@ static const AVOption options[] = { { "tune", "set the x265 tune parameter", OFFSET(tune), AV_OPT_TYPE_STRING, { 0 }, 0, 0, VE }, { "profile", "set the x265 profile", OFFSET(profile), AV_OPT_TYPE_STRING, { 0 }, 0, 0, VE }, { "udu_sei", "Use user data unregistered SEI if available", OFFSET(udu_sei), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, - { "a53cc", "Use A53 Closed Captions (if available)", OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, VE }, + { "a53cc", "Use A53 Closed Captions (if available)", OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "x265-params", "set the x265 configuration using a :-separated list of key=value parameters", OFFSET(x265_opts), AV_OPT_TYPE_DICT, { 0 }, 0, 0, VE }, #if X265_BUILD >= 167 { "dolbyvision", "Enable Dolby Vision RPU coding", OFFSET(dovi.enable), AV_OPT_TYPE_BOOL, {.i64 = FF_DOVI_AUTOMATIC }, -1, 1, VE, .unit = "dovi" },