From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTPS id 0A3874DFAF
	for <ffmpegdev@gitmailbox.com>; Sat, 26 Apr 2025 23:41:50 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id AC99A68B253;
	Sun, 27 Apr 2025 02:41:47 +0300 (EEST)
Received: from mail-pj1-f46.google.com (mail-pj1-f46.google.com
 [209.85.216.46])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C42C268A2DE
 for <ffmpeg-devel@ffmpeg.org>; Sun, 27 Apr 2025 02:41:41 +0300 (EEST)
Received: by mail-pj1-f46.google.com with SMTP id
 98e67ed59e1d1-301e05b90caso3962789a91.2
 for <ffmpeg-devel@ffmpeg.org>; Sat, 26 Apr 2025 16:41:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745710899; x=1746315699; darn=ffmpeg.org;
 h=content-transfer-encoding:mime-version:message-id:date:subject:to
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=4oxDK8urSN2KFvuxn/vh7o7avlHbZBv+l+3BewAT/is=;
 b=ORW6KshOPSlgyb0B87irnpbA0FHic6Qg8JSPZkxWHtwbDfVm1oxSspjZ8sQdhq3NDM
 b3AXFKXDjrVbN0v0EFqdGSdBoIQbOll4Onys3chvAjbVR3+UCgzGCXvFWyQpjBvUTwte
 Io9uQ201rVoTPooU3nXoQGCL5mExQclaoD/iXsPI0yBqED7CkIfaY584oiTs3LJeov62
 vRDi5cYJWK3HMNg2MTPr/V2o5Z1LXSh4cM3FzW8d9endccFwb7XhPfzk8HoLyM4HK7uT
 kk3OZioCbO7/kAshWxf4oeysRDewGwukUGgjTdX1vLv7EedoEld7YzI9fMCqlOlXwljn
 OX4g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745710899; x=1746315699;
 h=content-transfer-encoding:mime-version:message-id:date:subject:to
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=4oxDK8urSN2KFvuxn/vh7o7avlHbZBv+l+3BewAT/is=;
 b=O7GWtnoXz0aW1u+Js3bxaJibZe+OtJwZnT0Ft3foAsmSxfRoSw87EylsPnvQWdch7Y
 prsXQcWNCWeRKqLpX5JkaTCCnC4fWD7RbzdPdv7glzCRh5QsojoJRxERpS+UoqRnuRwb
 YpvY1peyuo6mOvMz6Mi2skvWSxMFKnInfvmpUUgBtl7sNWnRK9cGlSh2+9A7qdFp5AyD
 wW0lSE4JiMiZXd7LL6UVcN+1GNwbROZeIOdUIQ4QSB94QzuFSmZS9qxYj37BqkPGfvuy
 tptuVm4p83Rh7aOyqN6OZMdxVuL0Lp68lyNfl2pCpd3Wu2a/5owSnmwwrwxBoynDpCqH
 NLYw==
X-Gm-Message-State: AOJu0YzB7tEZX8bV0PA13KzUCcw2q9SUSHpdcEUC1r6mIOnFSJORYCf8
 hNeB18WolyWqRG2TTY5fvG/wsoE4GckIvbGV0uVyzIy129IriQ/xcxn6vg==
X-Gm-Gg: ASbGncvicNr1NHvEKmsx1N/VgIKD0kuBva4xBsy6X/Imvik8FjThJ7tEIQWXJ5qV5He
 s2hAgsWjisJ0bpNihro8xkXOm8jkluUONN2Tn8cfT8NsKAwyljVbXNEycD9TAPR3mdI0K0wvhDU
 0x9yruIM84CvfdFcRfPEcYEXkVNaEn2Gaccvgt95P/Be+Qgm+UiaucwBqYLI7GC5Jci/xMFZPLf
 IVEjQH3V1B1v6UufXFXwsiOJW+1Rb+E11tyCjeilrXRDRVFSa6z3eUyaiBgYe+vP92Rf7f7Gdca
 2gljt+bPAbOuq3H2PlAkCntjXMGbfs252yzVB+vpOIG/B3ia2oQwGvAsjT59
X-Google-Smtp-Source: AGHT+IEkhuSd8fOLVbYETn5PnBQj0GdFgzwbKWaWIQnOBUY0szqhI94Dxt/xDDruC0B5lHX7YQfMTA==
X-Received: by 2002:a17:90b:278d:b0:2ff:6608:78cd with SMTP id
 98e67ed59e1d1-30a013279d6mr6945656a91.9.1745710898795; 
 Sat, 26 Apr 2025 16:41:38 -0700 (PDT)
Received: from localhost.localdomain ([2800:2121:b000:82e:40de:33bb:8529:da8d])
 by smtp.gmail.com with ESMTPSA id
 98e67ed59e1d1-309f774e4f1sm4624704a91.13.2025.04.26.16.41.37
 for <ffmpeg-devel@ffmpeg.org>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 26 Apr 2025 16:41:38 -0700 (PDT)
From: James Almer <jamrial@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Date: Sat, 26 Apr 2025 20:41:22 -0300
Message-ID: <20250426234122.4953-1-jamrial@gmail.com>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
Subject: [FFmpeg-devel] [PATCH] avcodec/pthread_frame: sync
 decoded_side_data arrays with all worker threads
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/20250426234122.4953-1-jamrial@gmail.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

After being filled by FFCodec->init() from the first worker thread, it needs to
be copied to every other thread context. Otherwise, its entries will not be
present when ff_decode_frame_props() populates output frames.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavcodec/pthread_frame.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c
index 4ea5dd3698..7019108af6 100644
--- a/libavcodec/pthread_frame.c
+++ b/libavcodec/pthread_frame.c
@@ -905,6 +905,14 @@ static av_cold int init_thread(PerThreadContext *p, int *threads_to_free,
             if (err < 0)
                 return err;
         }
+    } else {
+        for (int i = 0; i < avctx->nb_decoded_side_data; i++) {
+            err = av_frame_side_data_clone(&copy->decoded_side_data,
+                                           &copy->nb_decoded_side_data,
+                                           avctx->decoded_side_data[i], 0);
+            if (err < 0)
+                return err;
+        }
     }
 
     atomic_init(&p->debug_threads, (copy->debug & FF_DEBUG_THREADS) != 0);
-- 
2.49.0

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".