From patchwork Fri Sep 4 17:20:21 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 22095 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 4754544B8FE for ; Fri, 4 Sep 2020 20:20:41 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2175C6882E8; Fri, 4 Sep 2020 20:20:41 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f65.google.com (mail-wm1-f65.google.com [209.85.128.65]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DB16D687FBB for ; Fri, 4 Sep 2020 20:20:34 +0300 (EEST) Received: by mail-wm1-f65.google.com with SMTP id q9so6748269wmj.2 for ; Fri, 04 Sep 2020 10:20:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=STylyTzyi5r156aLC6iv1MwUv5SOHpY3YrLJFj/Azhc=; b=OPnesRftz/Tnuo+GlWsc+VzB1ttBrAl9MlGh1r93/YWFnIVUyXUX9hNqJC0PGGIKMB FVpf1lFY7ZO4Tn0W9ZMjyo9q3w2+PLt1uRRu2mMP4BXAbQFOGmVLzF18MwutcZF0sXRN c8bq8tFNW0sOmhz8uayviQvqc2vmqG8OCz18nK3xDgn1p9Or5hee8WvCRcd4aVzwwOK8 FFx+KTvXAwS+ZRCPwDQD8br+xEnaRU7t5aZ0nR47JLD37MvQIsstiNi09CVvgVQitDZr OzCs6YCBnyQ/hyNhzeV3LmspILwUX6wiK7Q3Do7mgJJQyZ3w1KDMMptCj7mcA2VsJPLO nfWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=STylyTzyi5r156aLC6iv1MwUv5SOHpY3YrLJFj/Azhc=; b=NbqYle5gn5OAboMgo9Ssuk52r0O1hrfCSdGeYgLK2YKvE5pH+tBdZ0Jhzaffmn7IOm Mcx3K3KiEOe45ief0GE4ATMFh3bk8tHqZSa4YLOr9/SkFvomsIt1QyH/F5ns4SC/wBaG 8yDHBHRHoiOrsvgVsw+nIUlchB4twyoo1rWXV6irziWXo5e5wHvvBP2WmMzCM0zOj56T UTh2bGTJuzlhwagsOessdbXaCnC7qTS/G78jSd8+esLMjPSX8N3tlvp/bUJ4X/yimrQK uxp90fZBae4LewtCuAqqbCKqHxjEXfdwb7KW9j7LLpMasn5NYzvicl9ttMO8x70g0apK uMfw== X-Gm-Message-State: AOAM5304ZW4/kgYDycGihgxUZBbGgRSNSwT38hE0JoQ9eRk/9ECsfoCJ yHccLty1ELHZZSkuNjkddfCOJFXuOIg= X-Google-Smtp-Source: ABdhPJyK7+Ofhgu0aOjqQfEYtYqYTDZNsdflQQYo2Ed/UrJ1i3tn6pldMS/wIStO9yen9oNs+JDcUw== X-Received: by 2002:a1c:b703:: with SMTP id h3mr8493285wmf.131.1599240034007; Fri, 04 Sep 2020 10:20:34 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc1fb0f.dynamic.kabel-deutschland.de. [188.193.251.15]) by smtp.gmail.com with ESMTPSA id v3sm12282897wmh.6.2020.09.04.10.20.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Sep 2020 10:20:33 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Sep 2020 19:20:21 +0200 Message-Id: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/6] avcodec/bink: Fix memleak upon init failure X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" The init function first allocates an AVFrame and then some buffers; if one of the buffers couldn't be allocated, the AVFrame leaks. Solve this by setting the FF_CODEC_CAP_INIT_CLEANUP flag. Signed-off-by: Andreas Rheinhardt --- libavcodec/bink.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libavcodec/bink.c b/libavcodec/bink.c index f251ab4017..c7ef333bd4 100644 --- a/libavcodec/bink.c +++ b/libavcodec/bink.c @@ -1381,10 +1381,8 @@ static av_cold int decode_init(AVCodecContext *avctx) ff_hpeldsp_init(&c->hdsp, avctx->flags); ff_binkdsp_init(&c->binkdsp); - if ((ret = init_bundles(c)) < 0) { - free_bundles(c); + if ((ret = init_bundles(c)) < 0) return ret; - } if (c->version == 'b') { if (!binkb_initialised) { @@ -1424,4 +1422,5 @@ AVCodec ff_bink_decoder = { .decode = decode_frame, .flush = flush, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, }; From patchwork Fri Sep 4 17:20:22 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 22096 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 7B95044B8FE for ; Fri, 4 Sep 2020 20:21:00 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 60DDA68B2AB; Fri, 4 Sep 2020 20:21:00 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7D67668AA40 for ; Fri, 4 Sep 2020 20:20:53 +0300 (EEST) Received: by mail-wr1-f66.google.com with SMTP id g4so7483545wrs.5 for ; Fri, 04 Sep 2020 10:20:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=uMNeEnYAm2rtMzAhJQ3uOF9UIGZdLyyPm71KI0dWuhU=; b=VLFxL5q9Gil/gDHLdVn1qQVCJgRa/+N8C1G5I8y75JIjwb9MwQHk5SGJk7UVq3sBCr fzJOp+EIAtj4Sf/NY8W1xg6KhIGI9oQStho+0PXdAAR+vCUANh62Ohj6nlC079ynjeqV DquP8AFj/yL4k/ob+MrWsB+3ALtxfzAb03K8x8eeievWL2ATCMKxuj92BlSD1bMQMHrw PuJ6dg3LTOJdAS0IMEm/YLSkWGVygi4JDEbFu+mzeWlStptEYsYzePxB3tSE7xbe7/RI s1w4X2Hs8gWpCVQ21UXMBd0pmDvyfdpqRRMWFG8XUrmwiY+fz3IGU7ZL5m09/wQ5pZDJ pvog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=uMNeEnYAm2rtMzAhJQ3uOF9UIGZdLyyPm71KI0dWuhU=; b=Ra8KCemC9EfMnjI9QToQ4jxkwUWGkvS9a6uixiI6/A850roujDk6U5KCTvnAEbM8XT dTMBjrEeJjuChd/ElDv8ZP5V7yNjk00dLNDfidrmrai+UiC86v+fapgtK2vziVjAJjmD BtihORq40tuPdOeoyHV76ckX904IsecFaf7R4am8dpIyGtQ308N6LGYWBQ+OdC8nxKkE MlogkJd+A3mSKXxpYQPQk3sl4ytQarR+bIlvDHMaj+U6Qi2xYiVeo8Qlgf3VZPCQ0CG5 ZjBmtOUPbkn6OxrjPYox+eyaZO2hkB684G3lwE2H6tQST1DNDJ9TRGuQH7BM+X0slwEC gB2w== X-Gm-Message-State: AOAM530/9kAz7k70eBR4hDShIdjd3yAXk5STd7VzRlVNM49PAzSWSkVs Gk99iUAAY8nlwmfNHsz8zIbRcf7dahs= X-Google-Smtp-Source: ABdhPJz+sQvgxnZZ/dukBP3ym7y7aNkgF4VNnrN1fsXjwmE/kEphHQcpetdGJDBaITvvhzYs74W7Lg== X-Received: by 2002:adf:e7ca:: with SMTP id e10mr8387071wrn.236.1599240052567; Fri, 04 Sep 2020 10:20:52 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc1fb0f.dynamic.kabel-deutschland.de. [188.193.251.15]) by smtp.gmail.com with ESMTPSA id v3sm12282897wmh.6.2020.09.04.10.20.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Sep 2020 10:20:52 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Sep 2020 19:20:22 +0200 Message-Id: <20200904172026.28217-2-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> References: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/6] avcodec/bink: Combine allocations of arrays into one X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" Saves allocations, checks for the allocations as well as frees. Signed-off-by: Andreas Rheinhardt --- libavcodec/bink.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/libavcodec/bink.c b/libavcodec/bink.c index c7ef333bd4..9fdfa37395 100644 --- a/libavcodec/bink.c +++ b/libavcodec/bink.c @@ -178,17 +178,20 @@ static void init_lengths(BinkContext *c, int width, int bw) static av_cold int init_bundles(BinkContext *c) { int bw, bh, blocks; + uint8_t *tmp; int i; bw = (c->avctx->width + 7) >> 3; bh = (c->avctx->height + 7) >> 3; blocks = bw * bh; + tmp = av_calloc(blocks, 64 * BINKB_NB_SRC); + if (!tmp) + return AVERROR(ENOMEM); for (i = 0; i < BINKB_NB_SRC; i++) { - c->bundle[i].data = av_mallocz(blocks * 64); - if (!c->bundle[i].data) - return AVERROR(ENOMEM); - c->bundle[i].data_end = c->bundle[i].data + blocks * 64; + c->bundle[i].data = tmp; + tmp += blocks * 64; + c->bundle[i].data_end = tmp; } return 0; @@ -201,9 +204,7 @@ static av_cold int init_bundles(BinkContext *c) */ static av_cold void free_bundles(BinkContext *c) { - int i; - for (i = 0; i < BINKB_NB_SRC; i++) - av_freep(&c->bundle[i].data); + av_freep(&c->bundle[0].data); } /** From patchwork Fri Sep 4 17:20:24 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 22097 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 35EE444B9DD for ; Fri, 4 Sep 2020 20:21:04 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2297B68B32D; Fri, 4 Sep 2020 20:21:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f66.google.com (mail-wm1-f66.google.com [209.85.128.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 955FA68AA85 for ; Fri, 4 Sep 2020 20:20:55 +0300 (EEST) Received: by mail-wm1-f66.google.com with SMTP id a65so6722277wme.5 for ; Fri, 04 Sep 2020 10:20:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=o/1XOoUgKJKwlRBLPyNmkLdwDP4G9t2U5tmIcxcObZI=; b=u80YxbYR7ceawNkMVxweEfih2/oCrN7IzzMzyfU1qWSbdRiRYOBdrV5cbla+LI6ue1 RfegmlWLwb0jqt0ysdz4hqEm+5YHf3NYTRJhnkz25OiI+v0uvB5XDyGcUScEjuarPh2q axfirXDQD78C6WriGzE+CPrYliu6m7ZcCzfwHKyYDjG5pfnZyOVSOLgb8fZF1LSRExBc F+sE0yL/rf8QLyuRhMXBvBWFbA8ad7EmlXgpUUSDkoLvUXWvI9Xet+roO4ReGePowum2 Jc5uEcfsdIXQR6qdUUhYzuF006000eEOoqcLaOayfjIP0GSeVQuHMEGPMpF12EQL5Dx9 IPpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=o/1XOoUgKJKwlRBLPyNmkLdwDP4G9t2U5tmIcxcObZI=; b=TU60Hln99jQIwHGXcPNVQhrNgyeYRA2EvWwDCzmBPrgx4YGOaJMj5QsfbhsUEGl6i3 edsRKwqMRWRyRcH18KzQJCxuawSPV0vymwiJcQiYJyIRYBLxS3FrhecmKawJG3qE2yyG TXikegT1azilA5XDL6/H738o08qyqW1FBVxOXf211yxIEsAC3Kya9+iTjp7XgDIjfZa8 s6z6HJav/o7Xac3Txt9nb1Zpfx6h7UaL26aPTzMTJ/DAXan8zlgzL2QvNSCWBNBgKw/2 KPucRL/SHzokUMrPDJIci0yTZoeKFVhV69CXwJZLW1VF4N9ugPGw/n+B2K7sK6vuei7N 2A7Q== X-Gm-Message-State: AOAM5338Lsoc881JMvbaalLlwPaUfcxQxNoHqVUgrocZC3vNUwv3FR6B 5gUXsx/DIFedyvjG+GCWmF3OJqnURbc= X-Google-Smtp-Source: ABdhPJxQPV8t+8Q8wm2P+Oa3dO8BYED2TQBZ5AuLlUdQNtmmjfcvBzfr+s+/nVDMeeBE3wthXI9CXw== X-Received: by 2002:a1c:f30f:: with SMTP id q15mr8494565wmq.60.1599240054607; Fri, 04 Sep 2020 10:20:54 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc1fb0f.dynamic.kabel-deutschland.de. [188.193.251.15]) by smtp.gmail.com with ESMTPSA id v3sm12282897wmh.6.2020.09.04.10.20.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Sep 2020 10:20:54 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Sep 2020 19:20:24 +0200 Message-Id: <20200904172026.28217-4-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> References: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/6] avcodec/binkaudio: Don't use static storage for context-dependent data X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" Move it to the context instead. Signed-off-by: Andreas Rheinhardt --- libavcodec/binkaudio.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c index 012190a955..f17164da91 100644 --- a/libavcodec/binkaudio.c +++ b/libavcodec/binkaudio.c @@ -40,8 +40,6 @@ #include "rdft.h" #include "wma_freqs.h" -static float quant_table[96]; - #define MAX_CHANNELS 2 #define BINK_BLOCK_MAX_SIZE (MAX_CHANNELS << 11) @@ -58,6 +56,7 @@ typedef struct BinkAudioContext { float root; DECLARE_ALIGNED(32, FFTSample, coeffs)[BINK_BLOCK_MAX_SIZE]; float previous[MAX_CHANNELS][BINK_BLOCK_MAX_SIZE / 16]; ///< coeffs from previous audio block + float quant_table[96]; AVPacket *pkt; union { RDFTContext rdft; @@ -116,7 +115,7 @@ static av_cold int decode_init(AVCodecContext *avctx) s->root = s->frame_len / (sqrt(s->frame_len) * 32768.0); for (i = 0; i < 96; i++) { /* constant is result of 0.066399999/log10(M_E) */ - quant_table[i] = expf(i * 0.15289164787221953823f) * s->root; + s->quant_table[i] = expf(i * 0.15289164787221953823f) * s->root; } /* calculate number of bands */ @@ -197,7 +196,7 @@ static int decode_block(BinkAudioContext *s, float **out, int use_dct) return AVERROR_INVALIDDATA; for (i = 0; i < s->num_bands; i++) { int value = get_bits(gb, 8); - quant[i] = quant_table[FFMIN(value, 95)]; + quant[i] = s->quant_table[FFMIN(value, 95)]; } k = 0; From patchwork Fri Sep 4 17:20:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 22098 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 2162C44B9DD for ; Fri, 4 Sep 2020 20:21:05 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 057CC68B50F; Fri, 4 Sep 2020 20:21:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 77754688265 for ; Fri, 4 Sep 2020 20:20:56 +0300 (EEST) Received: by mail-wr1-f47.google.com with SMTP id g4so7483711wrs.5 for ; Fri, 04 Sep 2020 10:20:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xmdckS0TbaU72xXhYxEb8iV7bbpufaDBcPpemT+9frs=; b=Y8rut6DjYoh5KiS97Bb9IRCjqOHiB5aUauVoy53+ts6+9Yg1LK2hUo/A477h9vuEzc 8AFcc0IFDb0KzWU3a7d9+qgIlj4fwweFr2Lhj/j0j3e5HA5f+xJLquJv6vYjtCcWGCAP mMyjgs3+fkpRU/HkEkmxDjpTr6ZPFzx81E6q7JTvUF/GMhMy6wRMHFm74IalDaoLCcLB X5IycoVVCmX0UmU9phCgBHcqtYLsKzuiqcbDwIazKRQIXP+5atzBYRW2xf39FAmrP60l PNFNu0960Qejoi85gigZPqcZEgFKJD3Nz6hlRg9xyOivgmMqxjE+xYeKxMWY/3erJT6Y /tDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=xmdckS0TbaU72xXhYxEb8iV7bbpufaDBcPpemT+9frs=; b=H9BKKzOek7J2t/TP37U/wC1hBVAIbJ4mWrl3zSXNcuqhIIWn152pCfNmBWjQ540svV X2yDm2Ztw+HUXa+DiEVP4gTc5PPK/rjpsFc/KJN+wNwPBSdqVId5sC3G/gtBkeNBWGWC Sa8p9c44zVQg4AM1fdRV1vuYK/s0CwuUCOQmrhS6vrFgfpD9kVlRsuY3l6jQhogyXHiX fHkEVrgpgqk2em68YShmJ+q8TjJ6s1p6nv7xn508EVhF95tDbl21BrKGzCPtqNOnLnJL E7muPlAPmAGBeQqzseydvjyuXbsrhhWgzS4Vdd6ctlrOkrvQrbNYu0X3eYTzSFs/jG61 KfgQ== X-Gm-Message-State: AOAM533kuEU7jAAk0TuwokCNSorcmzVV6QdWilXxaFTyGsArGGHF+gkT mndA566rAiFEhoxHzXr2Lkpa23snnno= X-Google-Smtp-Source: ABdhPJxqyDVpMoBm6e2h8xsgXdMB2FBqr5h60ZEhxGdaJrH/x3JT2v9VmOwnUsDbQqqR1XJOG3yRDw== X-Received: by 2002:a5d:61c7:: with SMTP id q7mr8782189wrv.343.1599240055601; Fri, 04 Sep 2020 10:20:55 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc1fb0f.dynamic.kabel-deutschland.de. [188.193.251.15]) by smtp.gmail.com with ESMTPSA id v3sm12282897wmh.6.2020.09.04.10.20.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Sep 2020 10:20:55 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Sep 2020 19:20:25 +0200 Message-Id: <20200904172026.28217-5-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> References: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 5/6] avcodec/binkaudio: Remove unused array from context X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" Unused since 7bfd1766d1c18f07b0a2dd042418a874d49ea60d. Signed-off-by: Andreas Rheinhardt --- libavcodec/binkaudio.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c index f17164da91..f7e9a37a1b 100644 --- a/libavcodec/binkaudio.c +++ b/libavcodec/binkaudio.c @@ -54,7 +54,6 @@ typedef struct BinkAudioContext { int num_bands; unsigned int *bands; float root; - DECLARE_ALIGNED(32, FFTSample, coeffs)[BINK_BLOCK_MAX_SIZE]; float previous[MAX_CHANNELS][BINK_BLOCK_MAX_SIZE / 16]; ///< coeffs from previous audio block float quant_table[96]; AVPacket *pkt; From patchwork Fri Sep 4 17:20:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 22099 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 00C0644B9DD for ; Fri, 4 Sep 2020 20:21:06 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DE99A68B490; Fri, 4 Sep 2020 20:21:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f67.google.com (mail-wm1-f67.google.com [209.85.128.67]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BF5E668B44A for ; Fri, 4 Sep 2020 20:20:57 +0300 (EEST) Received: by mail-wm1-f67.google.com with SMTP id o21so6790300wmc.0 for ; Fri, 04 Sep 2020 10:20:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=VGBYhbLey8hfhxtQTJGCe/pJXeJ65QESj/dYtCSopzw=; b=cKeXfFG3/UsZHRlpKUoiZUPOqzXQ/HToIyoUfLNP9IcjAQSTfqIeup38YOWfVGqs9q vHFBhgFyw0ZLmEZGLMxdFhAqtjNbXZowDMZxDmHS52qGn0RXJJFFfCEzWEIusgTqHeMZ zwd9LG5+NDcFN6WOVwgH/uN3qYCdA07iVIk07/ig7Buvju5wB9Y4PdKnfW8hIY5NaX73 tmnKXd6HoAnKz1LBydBRcoHCGcSJzWXve+/tSVcIVfLcoT+XVkczQzcJYqYaKfYk0xTo wWXj0WaJHYS4QIhOURaARI9hTB5ny7AIwYPlcIJszsG3IXNaiq/Bf2Y3EGZ8O5tnoIVz tF9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=VGBYhbLey8hfhxtQTJGCe/pJXeJ65QESj/dYtCSopzw=; b=ezJqDPFYuTNg0YxYSPVJHNkclWLyUMzZviIN/tGLijZ/57a3y97a3L8BAIbrxZeHQg k7VJCBUsDfYaBvo7rNEfcw93MU165UYNFK1E/mTd7hKYn4BzPwnS6bSBHUtu/72DRIJA wqsse/f7lAHIPG7Ywe9mDBWr47f2h7dUllrGDDWPGQlOe8PLtdNBeWmrCBLM/raamcGS HTnxXMZnx5MIbV/kHqwgRyccYdkFWz0nbWzlrvsO+gsYfB9v6UhiW0daAzzA8CaTdyp5 DtLUuYH+qcQYINBfY63Pkk8z0KFb5Qg3xOVSIgFrk9qPfJREOD9CtIABVSOV47rHxG4Q /bTw== X-Gm-Message-State: AOAM532BZvfzNZqqtI9uRNmxruYsMEXt1VYqkjBP6xmVpyMohQCSon3D hhQez9XmUYfXYNfTL1LljOYUCy0iqys= X-Google-Smtp-Source: ABdhPJyn5M1drOH/8ABgUoMHUMribBMJwlv7Ffa+o69IlKwjSKVLD/DM3vvyyCf/pXmmydtNZ9ppAA== X-Received: by 2002:a1c:80d7:: with SMTP id b206mr8581429wmd.161.1599240056780; Fri, 04 Sep 2020 10:20:56 -0700 (PDT) Received: from sblaptop.fritz.box (ipbcc1fb0f.dynamic.kabel-deutschland.de. [188.193.251.15]) by smtp.gmail.com with ESMTPSA id v3sm12282897wmh.6.2020.09.04.10.20.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Sep 2020 10:20:56 -0700 (PDT) From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Sep 2020 19:20:26 +0200 Message-Id: <20200904172026.28217-6-andreas.rheinhardt@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> References: <20200904172026.28217-1-andreas.rheinhardt@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 6/6] avcodec/binkaudio: Avoid allocation for array X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" The array in question can not be too large (only 26 elements), so it can simply be put on the context. Signed-off-by: Andreas Rheinhardt --- libavcodec/binkaudio.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c index f7e9a37a1b..7b5965ede1 100644 --- a/libavcodec/binkaudio.c +++ b/libavcodec/binkaudio.c @@ -52,8 +52,8 @@ typedef struct BinkAudioContext { int overlap_len; ///< overlap size (samples) int block_size; int num_bands; - unsigned int *bands; float root; + unsigned int bands[26]; float previous[MAX_CHANNELS][BINK_BLOCK_MAX_SIZE / 16]; ///< coeffs from previous audio block float quant_table[96]; AVPacket *pkt; @@ -122,10 +122,6 @@ static av_cold int decode_init(AVCodecContext *avctx) if (sample_rate_half <= ff_wma_critical_freqs[s->num_bands - 1]) break; - s->bands = av_malloc((s->num_bands + 1) * sizeof(*s->bands)); - if (!s->bands) - return AVERROR(ENOMEM); - /* populate bands data */ s->bands[0] = 2; for (i = 1; i < s->num_bands; i++) @@ -273,7 +269,6 @@ static int decode_block(BinkAudioContext *s, float **out, int use_dct) static av_cold int decode_end(AVCodecContext *avctx) { BinkAudioContext * s = avctx->priv_data; - av_freep(&s->bands); if (CONFIG_BINKAUDIO_RDFT_DECODER && avctx->codec->id == AV_CODEC_ID_BINKAUDIO_RDFT) ff_rdft_end(&s->trans.rdft); else if (CONFIG_BINKAUDIO_DCT_DECODER)