From patchwork Sun Mar 17 20:00:40 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jan_Ekstr=C3=B6m?= X-Patchwork-Id: 47132 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:958e:b0:1a3:31a3:7958 with SMTP id iu14csp656282pzb; Sun, 17 Mar 2024 13:01:47 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCX/lvO+5S8s7krrDxnCcy3BatjNFlnvkzwcn85PKSQtRMR2X7xCtk5EYC2OAeJoUh/5vOWEz0GD5zLumW84lDR5KVR+C1toEmqQcw== X-Google-Smtp-Source: AGHT+IFoV10PK1Bc2dXIYqf2v6a2V+uTCMW8HVmi38F953BCMS8OAkxW8yt4sieu6xGkkzHDgr1b X-Received: by 2002:a05:6402:4588:b0:568:546e:2a6a with SMTP id ig8-20020a056402458800b00568546e2a6amr4167405edb.3.1710705706974; Sun, 17 Mar 2024 13:01:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1710705706; cv=none; d=google.com; s=arc-20160816; b=jhhDCvsy65RWbL6KhhLkVTGQw9Ba4rK/N6BRkPe8okOIW9TyrR0UwR4TphWaRv6YQE BRmed42Lnz9jKh8UqvJtkJ8MhqFx7mkrDey9Pdxggv/tsMaibrQiSfreOzbciKIetC0i zmy/DEthEPFvSJnGyPa47xjubOk08QG01p8ovnWF4e/N6qFPEH4zVvE9SrGxNtyAAIJ5 P2Kyq97cIetZaKNw9VIcfGUfTQn/jhkFPQwiihAZZbMJVLXqT4z4Q7a62LnvKuvKmvVa 7ydrAfU5lvX8uFueP3g4Fd7qOWGnU6lvTBd95eQP1484rLQVLpc2qMhFmKlivMdEwo5o ryaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=PHjp+elTY++XM58NemnkW5o/nFmtfgvgs9zOhfQWXFE=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=WleTyi9ZLsSwstbQbF02Grm8dcsy5JBDAYhO0KfswBBXEj5Z4cnhG4XpbIeub7jSTX YqMZlgj50FrtSuvbQPNPSZ6mzju903Tg/1vArvM1RdW49WGHo/SbvPKBEEwbGo1wvRKP jv3B6AxoTMuVpPNWnnyYh29RQmho420bBqDcT6L9GLAlP3YPP7C1gkLLlBz91D3lTWX2 TLbD+O9sorujhqPrD6qf0r5CIafjxdJvUQioF+f79E786LnmkVRXJJcu+QrZf18IQTla v09cv9QOLCnYDbkX0b3R2Jt7SxgxQ5/uALuZNJJt+41Xc5vsqBlGqUIiw3tScbENhzGX uzaw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MIN96Ubu; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id i7-20020a05640242c700b00568d14170b6si919757edc.311.2024.03.17.13.01.46; Sun, 17 Mar 2024 13:01:46 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=MIN96Ubu; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 27D7768D1F6; Sun, 17 Mar 2024 22:01:20 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 05A3868D1AC for ; Sun, 17 Mar 2024 22:01:11 +0200 (EET) Received: by mail-lf1-f51.google.com with SMTP id 2adb3069b0e04-513e14b2bd9so1373563e87.2 for ; Sun, 17 Mar 2024 13:01:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710705670; x=1711310470; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=AotvT5w3UgblKqo5Lgu2NSe5ikU6BGlHNWc1J4yWfrU=; b=MIN96Ubu3rJMm+7DvBSezBOBpr8/7FutYZGUA81QhHbYhsIyFL47TQa8YTvJUV4Q9W UcAl8SHWxNlYVbSxt2y9t5NVzIzoYJqCm5Fp6GhNcS/KW6/I+GxhbZasIbeIQw55AWZ4 uQLGCfrWBfdgTJstw0TPL9BKsao/cA11KwxcdjPJJuILwwX2/+b13Ed6E21FfiuVrSG6 9nn7ul21XbGPtxpTs8JCG1etPv3q7cjVpbowAqQmSelY+CIK6zMeYdx8gOdZE6KWdUZv 8fbzyBhBlkEJopFq+jNSCH6kXTJxijDenmbqaQZIvrAUj9IMAjAEIUjwVPZz/HXWIMt9 maTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710705670; x=1711310470; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AotvT5w3UgblKqo5Lgu2NSe5ikU6BGlHNWc1J4yWfrU=; b=h6fVyOdcZOK8kQi5g5tae5s3sPQxpqz2vPNyNGYPYmpzfG2g7ffRZdaUlI4ogHTV1J dzxLH9cNpPuOCUbP5wj/8J6bZ9rG4ZTxWy+VQ2km4YW3HHdv8Ip1Q2xwUgZ5E50WrvDH jR+XWGuf0g0MTaW7MYtItsTDWyg9lXNMrp6+LAtYpAlMpCEXYljRnLSvSS4PH/wm12Nx Ml6xDKgu0rVFdr6fSmVBA27/w1k2JR7UERaVSXj/iouJTTpqviDiZI/jX0tzbTrrOz0g 8FPN4gUMGRgSnsnHo+4+RjzTQkayGWFjuPXhX/VMXsN0ihCgC3kDqeX3ac/Q7R3NdWnu 9x+g== X-Gm-Message-State: AOJu0YyAUNXX6mnFUYeSbFD3/vTrCMIjOeMrvxrjhDoaXJAiBM4odQsz Nj3M6lnZg1St5+LS4gi2Zx9Ry1WN2JiQMovMTaWCYRb9Y7RrNc9LZdYNlaTr X-Received: by 2002:a19:4318:0:b0:513:e623:e6b8 with SMTP id q24-20020a194318000000b00513e623e6b8mr1479310lfa.5.1710705670135; Sun, 17 Mar 2024 13:01:10 -0700 (PDT) Received: from localhost.localdomain (91-153-198-187.elisa-laajakaista.fi. [91.153.198.187]) by smtp.gmail.com with ESMTPSA id y3-20020a056512044300b00513c844603fsm1340462lfk.41.2024.03.17.13.01.09 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Mar 2024 13:01:09 -0700 (PDT) From: =?utf-8?q?Jan_Ekstr=C3=B6m?= To: ffmpeg-devel@ffmpeg.org Date: Sun, 17 Mar 2024 22:00:40 +0200 Message-ID: <20240317200100.152097-4-jeebjp@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240317200100.152097-1-jeebjp@gmail.com> References: <20240317200100.152097-1-jeebjp@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v9 03/14] avutil/frame: split side_data_from_buf to base and AVFrame func X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: NJNQ2oVEeysu --- libavutil/frame.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/libavutil/frame.c b/libavutil/frame.c index baac0706db..9ebe830c5c 100644 --- a/libavutil/frame.c +++ b/libavutil/frame.c @@ -679,23 +679,23 @@ AVBufferRef *av_frame_get_plane_buffer(const AVFrame *frame, int plane) return NULL; } -AVFrameSideData *av_frame_new_side_data_from_buf(AVFrame *frame, - enum AVFrameSideDataType type, - AVBufferRef *buf) +static AVFrameSideData *add_side_data_to_set_from_buf(AVFrameSideData ***sd, + int *nb_sd, + enum AVFrameSideDataType type, + AVBufferRef *buf) { AVFrameSideData *ret, **tmp; if (!buf) return NULL; - if (frame->nb_side_data > INT_MAX / sizeof(*frame->side_data) - 1) + if (*nb_sd > INT_MAX / sizeof(*sd) - 1) return NULL; - tmp = av_realloc(frame->side_data, - (frame->nb_side_data + 1) * sizeof(*frame->side_data)); + tmp = av_realloc(*sd, (*nb_sd + 1) * sizeof(*sd)); if (!tmp) return NULL; - frame->side_data = tmp; + *sd = tmp; ret = av_mallocz(sizeof(*ret)); if (!ret) @@ -706,11 +706,20 @@ AVFrameSideData *av_frame_new_side_data_from_buf(AVFrame *frame, ret->size = buf->size; ret->type = type; - frame->side_data[frame->nb_side_data++] = ret; + (*sd)[(*nb_sd)++] = ret; return ret; } +AVFrameSideData *av_frame_new_side_data_from_buf(AVFrame *frame, + enum AVFrameSideDataType type, + AVBufferRef *buf) +{ + return + add_side_data_to_set_from_buf(&frame->side_data, &frame->nb_side_data, + type, buf); +} + AVFrameSideData *av_frame_new_side_data(AVFrame *frame, enum AVFrameSideDataType type, size_t size)