From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 306DD4241D for ; Tue, 15 Mar 2022 21:26:47 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7DD7F68AFB1; Tue, 15 Mar 2022 23:26:45 +0200 (EET) Received: from mail-oo1-f45.google.com (mail-oo1-f45.google.com [209.85.161.45]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id CC18E68AA97 for ; Tue, 15 Mar 2022 23:26:39 +0200 (EET) Received: by mail-oo1-f45.google.com with SMTP id n5-20020a4a9545000000b0031d45a442feso554993ooi.3 for ; Tue, 15 Mar 2022 14:26:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:subject:content-language:to :references:from:in-reply-to:content-transfer-encoding; bh=d5xrrJB23eJDjehl0yrFf4KSJgkEWHoSGRkWX9Il2/w=; b=OE4Uhs7kvPSbam1EI6A9/lXWjExp/M8ddEi5OPUObBs4OWf4s4dwfp1Cnrcp/Ym3x5 coWqmsJj7ZKfEZD6h5mVq6zLDlD8YiuacOG2TR3eeSuK2ubDxl791sX/ScfwWaazSG4s OMOMhFgCqTwb2nytzqFDnoT7AiKa2MHqO6RJeP4f4QksI4vSM03k+6NXkNlhuRDe0yvb LDn7H8C8riixPfCXABH31yllOp6HLHBslejN1DClU/pjSRwFSROXIRmVOMANdQBGIFDC yhgOrcBmLdqb8lsd24lt0FfdMvWvo2lPxUa9rgiDwcSVZaxGDAOYD0gnzBWh8MEgC1LQ lsOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=d5xrrJB23eJDjehl0yrFf4KSJgkEWHoSGRkWX9Il2/w=; b=Xcn+qMcbTxC5CA36dRKG1etD5tOpgsESU7CMgyceBcA1set6bKKGmCup8r44hQsDBb Vod8pRFM+rfwUFmnBqjL8NObmxiQvLrkGMvJOJvHJAzXRi8pdqdpd9QwIoTVTfWc4E/l 6KrzlNg8ddktkDM3x3W/5LaLu2WaKVxQRPfs/oHLQIwt982BKmruhO+2hXmTdDNgbwD2 Y3NlFBPHnwbAbi0xgACn+8paUALkCjtLyNN9mMmH1TS/Rh7/Ku8/X09l3Puu67mum5mp 0BivFwZe1KZvzi3imHU6HFCU5wZC9Qgzh7dEWO4cK71RekI7muVhfscKOhrhM8FssY6Y GDvg== X-Gm-Message-State: AOAM530RgTFCQNr8DwQxGf2IqOMSDmMU66qsAMM2xMfWlHojzELtTN10 uQ5gZKV8xKCSQ19AnSWoDI0fpy5Hegy9dw== X-Google-Smtp-Source: ABdhPJwctveVzohl6ikUnP4MxJIUXk9lL8fzwBoOkXJvOB+SYgGa+9UHv1lS6kwTirZfO2e5f0FX/w== X-Received: by 2002:a05:6870:128c:b0:ce:c0c9:5ba with SMTP id 12-20020a056870128c00b000cec0c905bamr2382279oal.12.1647379597622; Tue, 15 Mar 2022 14:26:37 -0700 (PDT) Received: from [192.168.0.13] ([186.136.131.95]) by smtp.gmail.com with ESMTPSA id bc36-20020a05682016a400b003240a532a1csm93706oob.29.2022.03.15.14.26.36 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 15 Mar 2022 14:26:37 -0700 (PDT) Message-ID: <50127ba7-4120-d7af-702e-824f2110062a@gmail.com> Date: Tue, 15 Mar 2022 18:26:36 -0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <1382f5bd-673f-f429-0ce9-ce39c3f9b586@gmail.com> <20220315211858.26800-1-cus@passwd.hu> <20220315211858.26800-3-cus@passwd.hu> From: James Almer In-Reply-To: <20220315211858.26800-3-cus@passwd.hu> Subject: Re: [FFmpeg-devel] [PATCH v2 3/4] avutil/channel_layout: do not copy alloc new map for extra channel layout 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 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On 3/15/2022 6:18 PM, Marton Balint wrote: > Also use av_channel_layout_bprint directly for describing channel layout for > extra channels. > > Signed-off-by: Marton Balint > --- > libavutil/channel_layout.c | 17 ++++------------- > 1 file changed, 4 insertions(+), 13 deletions(-) > > diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c > index 0069c6257b..fb1f72737f 100644 > --- a/libavutil/channel_layout.c > +++ b/libavutil/channel_layout.c > @@ -704,29 +704,20 @@ static int try_describe_ambisonic(AVBPrint *bp, const AVChannelLayout *channel_l > nb_ambi_channels = (order + 1) * (order + 1); > if (nb_ambi_channels < channel_layout->nb_channels) { > AVChannelLayout extra = { 0 }; > - char buf[128]; > > if (channel_layout->order == AV_CHANNEL_ORDER_AMBISONIC) { > extra.order = AV_CHANNEL_ORDER_NATIVE; > extra.nb_channels = av_popcount64(channel_layout->u.mask); > extra.u.mask = channel_layout->u.mask; > } else { > - const AVChannelCustom *map = channel_layout->u.map; > - > extra.order = AV_CHANNEL_ORDER_CUSTOM; > extra.nb_channels = channel_layout->nb_channels - nb_ambi_channels; > - extra.u.map = av_calloc(extra.nb_channels, sizeof(*extra.u.map)); > - if (!extra.u.map) > - return AVERROR(ENOMEM); > - > - memcpy(extra.u.map, &map[nb_ambi_channels], > - sizeof(*extra.u.map) * extra.nb_channels); > + extra.u.map = channel_layout->u.map + nb_ambi_channels; > } > > - av_channel_layout_describe(&extra, buf, sizeof(buf)); > - av_channel_layout_uninit(&extra); > - > - av_bprintf(bp, "+%s", buf); > + av_bprint_chars(bp, '+', 1); > + av_channel_layout_describe_bprint(&extra, bp); > + /* Not calling uninit here on extra because we don't own the u.map pointer */ > } > > return 0; LGTM. _______________________________________________ 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".