From patchwork Thu Dec 9 13:08:04 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 32246 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp344119iog; Thu, 9 Dec 2021 05:09:16 -0800 (PST) X-Google-Smtp-Source: ABdhPJy7DHOTumgUWQLYq7owUGUhl9AbE70XodOtvMVPwxX+DN4dnACcI60i0IhvhmHnG/fo8NaY X-Received: by 2002:a50:ce4a:: with SMTP id k10mr29311074edj.31.1639055355149; Thu, 09 Dec 2021 05:09:15 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id cy12si9755573edb.70.2021.12.09.05.09.14; Thu, 09 Dec 2021 05:09:15 -0800 (PST) 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=@outlook.com header.s=selector1 header.b="KRdcPn/2"; arc=fail (body hash mismatch); 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=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 00A7268AFD4; Thu, 9 Dec 2021 15:09:11 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2065.outbound.protection.outlook.com [40.92.91.65]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9515F68AFF2 for ; Thu, 9 Dec 2021 15:09:04 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J99xVXFSdhTWf7QxTxg36mzd3Ao6xsFQEQ3u/feWEaUPd97fRiYsa4lwR+YYicjz7MolDyxV2+g/DqXYiVVnPwPK+fVMhmUGQT4/KC/9m6KEQREiu3GcuKQ/3DSUXZkWkMp8OFiKb6n/+igFgYi9CUqav9U0H+n8gaiiJeJB5KybbpNURZwvQkyWBp4cMrCo0ZE1OO1gx6YzBvizc9dsVc2QV5oQdF2ogVoPPnOrAu6VGH5F+CnbTWoWEke6sI2MdlgH/PTzfhFk3DxGUwMxVI38qbt9WoRnnh1leJPF/CMVYcdFYMtMbTjpt9GMg6frjpnJNVIF4/jBEuCBcm93ZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=v3UkW8DWSPesGaOlIB4sjxm1AxpRyMqqo+GKzKsR9XU=; b=aS0sntj06FS07R3HZQCpR9aIzKxBz26s75oj+xcxNVlNUCiSWssjIgXv9vYpjM7W4sgbpUJxFA5z2Yy4tB5kaNKqsyQ3mkD5XLOzdZf1L/uczcR377dPoSaTCYB81sNb1gycjaR4J4FzgEjKRoxrL0BeeByAnMsfI29OUVpj0qjNeR9ADIn0x504JRy2PkD7IG2Ik9p6LcOZryCG5797/ykW4AprrYmAa2ztIg6AE3jn4mMC0gRUyuTjxiRGFf1mvLnarGCnJGd8Wk4vnHYkdZh9LxLZ7wzaCro4wk5mMUsBA3iYyQ8JpmmZfX6IwxiYy/IllO/yFCLYRJ/m5q3hmA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v3UkW8DWSPesGaOlIB4sjxm1AxpRyMqqo+GKzKsR9XU=; b=KRdcPn/2kDUtoy/Y+1GQJFE8UuWqEwJ09Gi2UvB+j/r54iKmxjkXTzjx0hxSVFiO2QCdwaFroqVSCsUCBfZT74elX6QiFROSlY6zvnJ0yRuEIqvy5dx+/rgwwfu1aBJ+eWmiQ2olHcPYGRUTsnyJ/UN8ky6W/orvR6ZA8X6NQQ8QcVHj1mZoqamQOEtOJpsalXaZEYvhw7VLjfZNB1GFIs27EzvFF6Fi6SFgSioTnibs3c2B5VLTzU2EWIK9LoU2xYLIupMkUEwczf/S5ERT23fWoqkRIDefP0pGjrEKPv0MwBFetufB3APjmzGRGIMELqCIII1wl3ibZ1gxZ5bhHA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB3605.eurprd03.prod.outlook.com (2603:10a6:209:2f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.20; Thu, 9 Dec 2021 13:09:03 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f0dc:92f5:6bc2:45ca]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f0dc:92f5:6bc2:45ca%4]) with mapi id 15.20.4755.025; Thu, 9 Dec 2021 13:09:03 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 9 Dec 2021 14:08:04 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [whhpyOFtWFVkrYTTQCXX+/BhQvZH7w7N] X-ClientProxiedBy: AM5PR1001CA0039.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:15::16) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211209130805.678224-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.248.74) by AM5PR1001CA0039.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:15::16) with Microsoft SMTP Server (version=TLS1_2, cipher=) via Frontend Transport; Thu, 9 Dec 2021 13:09:02 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 27137809-fe9f-4646-bcb1-08d9bb151282 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiQpdocItI9cpVOSbzBL2rPwn7CENtoLQIHKgMdWoGjWByOodlcvegKAMzHVPlXFJDj1O68+cPptJtUzhwndWjteSu/SMpSmlFqkHsj8y2Gnqjr6/jz5QfSPgC+7++KiKWhyktUznOZdbHzLZJrdDl3XgKHgMWqa+HYCflOY4x8EIHojFsYeP2rAJKDNXB1iUwLL/POs7JYfAM9soH8h5W4OIkf0y4GrPP6ResvCBN2uhnyX63bq+bbUlpH2njbu+G7s2tpl6Kdc9v80zyuew/I3qQtfBGlROwhQgb2VpmfLQKNOb/1sxTpgydpGxgS6S+Hayo7c0s4c3obx9t4ximJcmmNwUqYlGsWI+aVPM2dJ7wCMEbXeWnPodww+8jggb21Xct1sUFLBDTa938BpGv2Osjf+V7bp4zoXgMHIZuGz+qDC2RKIIa84HamUI1Hj7SIZeRsijTF3VRzf/mqSlrMbXchAoelbyhIxbz9DB4IzVgwRePoLG9cwYYSwfGNYUjbDTw6JjUgh/V5kZK4PfdXVU8hN8rYFKSgu3ilrH2eU2VhC2999p5ugKP6uP/qy0oCHoyo15U9plyPzQsBnDVF/UytOyEWBHPt3ZVQ7QeYuGUXBogZzBj9cD0QEQYrk5JwgBYcG4WYZxDoNfrq2aoVLwNS3A3u/FpcUzwDmX/rNcuckPqXrRkv+JBQlzekHLbIBFVcYXlrRAXQpEgJE62IlmnxDLnCDILXFMhPm+qO94kImWhQX90YB8geT0163HeA= X-MS-TrafficTypeDiagnostic: AM6PR03MB3605:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mbpn69Dm2ghetJXor3vk1leBx7Kizmsl40v3+YPrsBse1mc4weGTrwOH/kpHbRqzG8BD8pyDx3NOdmv/D1c3vyQK2Ipkx2rW0sAhB4FQL3Rpv+Q3XpygLuIeBE+tlFcb6LTSOKmIWxVRAzH9Djdrntuohe6hDrti4EWeTCNmYfSVooRFlX+ohuCQ7tFXfR6kAK/3qoor9Hffd1RCUnAlUhKJTB7zutu99krzjNPHfxHTIdYJpPmEkolZ1m/M/HzckuzvLf0mnoXTM/DKr86ua+wmXctDDbpycEd6iaNvEKtpQS3fkhHI2BThhnkG5y0dRrkuhpGvi/7KX+S0Wkvoq+HadcxK64UmISrdGEtcPm98C9F6TEHFHR2znwp3SRLLwRtCVPqFCgoHlPlK9QxLqHMqd7LlflF7o56ojWHwRgBmEzYCbEsvwYm58FZaM/3GJmJiGom9foHT6NzqUibBuKO8JlPV1qF8mEmDMIFZ7HnlQBMdeC2zLk7XbQJASWqZrfS/kN42z3AoTpXCGBDsWMseEFEQZK8g46zbz9HGoiu/hd1jfH35ArL32baaLL/7WOE20GfnMgENzQ7fkJ1hRQ== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: cpdbAN4zSRSgKfdnLSQfJnskzjF7DhEdWIrbKFwww82hqNJ4qAmtsBCvr1kEs4jQ1y1x1gqcpdn+IHV5U3nRfjj4PFJFixjvGbPVfUVV4gdtsiSINaTycULaaXYJs08dDGHJld6k8K6gLo3oINYZL72hCeF3x3PVutsbsy7EWlDq1Lmgr7XDKB+jhmI0Np2CAkC1l7cTt533mQ1D8AHsCBrHnvQo9ijy3ovMxnoiPTHo/LKnXKsEIH6CN43tsZyiWBBBdRIXzuhrh2GR3K02jCZ9Wlx9FVRH+kMjQfX3ZFhqFIHOXvjIUyuppDImU6t4xqhVGJGJKP/PC7fOs8bPz27lmIG53jXgAV7VfuyGsbXtQIp5RMzKfSH0Ra7bLCZfdNj+Mf+mRdUIFqc46c6ciymX8fjoIQRmWWcjvE8yNKkILOod1/Bi+YB0V9zwZGQjqSy9ONTosDMnMvOXTjvh4O8OQi8GhhJHFvsq5R8ajK9xU5oQeCXk5uq5NGFJ82XaWuTRRoCIcS+OBTdD7JfndVT2NFhJsdkY5oQIa4sPK0W6hPQU2brbZj692k3n9gy2dEcteC78XotsRVer+eEPtKfyiL3ITXiVtXKq2LOjOy0T9gtXRnEGfaCe8b0slfHDFWOEHuzsjZIg9mxX/C3vzP4CHHsMFCLximcEldbBRGfmOAvH7a1WFTfxm8IEf+wBLcECKZt3U1Sq+PSrlGB4HB1EcOgb3SomnnZE710FtvYorVOYvwV6Q+oRBY3SYIYxvwrbteXScZt2e+sNlJYZWtKB6EDVB83OnrzA5zWa1bsBI1G2jgGThQ1u1lLvE4I65e1idtK12ZLyWYTm14cIVpN7VMiRgRP00KzsIv4yHNl2LGNi6dHIqqikn237VfMMCaOfIM2ioND42aeHSlWwzfUwOiQGHeFnTDuzCRRIdivrtKsV+svnLgQb5i8VRP8L/gO464EzCv8ZGteGX2QXzA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 27137809-fe9f-4646-bcb1-08d9bb151282 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Dec 2021 13:09:03.3900 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR03MB3605 Subject: [FFmpeg-devel] [PATCH v3 4/5] avcodec/mmaldec: Avoid creating unnecessary reference, simplify code 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 Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: mo7jiIEtoyTM ffmal_add_packet() basically duplicated the logic in av_packet_make_refcounted() with the added twist that it always created a reference even if one is already available. This commit stops doing this. Signed-off-by: Andreas Rheinhardt --- libavcodec/mmaldec.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/libavcodec/mmaldec.c b/libavcodec/mmaldec.c index 3e11d487ab..0c7df0a0bc 100644 --- a/libavcodec/mmaldec.c +++ b/libavcodec/mmaldec.c @@ -485,29 +485,19 @@ static int ffmmal_add_packet(AVCodecContext *avctx, AVPacket *avpkt, int is_extradata) { MMALDecodeContext *ctx = avctx->priv_data; - AVBufferRef *buf = NULL; + const AVBufferRef *buf = NULL; int size = 0; uint8_t *data = (uint8_t *)""; uint8_t *start; int ret = 0; if (avpkt->size) { - if (avpkt->buf) { - buf = av_buffer_ref(avpkt->buf); - size = avpkt->size; - data = avpkt->data; - } else { - buf = av_buffer_alloc(avpkt->size); - if (buf) { - memcpy(buf->data, avpkt->data, avpkt->size); - size = buf->size; - data = buf->data; - } - } - if (!buf) { - ret = AVERROR(ENOMEM); + ret = av_packet_make_refcounted(avpkt); + if (ret < 0) goto done; - } + buf = avpkt->buf; + data = avpkt->data; + size = avpkt->size; if (!is_extradata) ctx->packets_sent++; } else { @@ -573,7 +563,6 @@ static int ffmmal_add_packet(AVCodecContext *avctx, AVPacket *avpkt, } while (size); done: - av_buffer_unref(&buf); av_packet_unref(avpkt); return ret; }