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 ESMTP id E26FE49186
	for <ffmpegdev@gitmailbox.com>; Sun,  4 Feb 2024 20:00:24 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D3B5968D119;
	Sun,  4 Feb 2024 22:00:21 +0200 (EET)
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01olkn2027.outbound.protection.outlook.com [40.92.64.27])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1D8A768C248
 for <ffmpeg-devel@ffmpeg.org>; Sun,  4 Feb 2024 22:00:16 +0200 (EET)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X/eJBy3Jq6p3bRGcv+elxMqZEDQ1TELxCMIhbf4ORUB6rHe3eDNE6WsjgWMiK6W3a0qqy5qQv9+guOpZjK732Fui3PwRopCrkBe5FQH98GVQiE8L/s26Pq1kp+YmAXMbe2zC5D6uXu4yvN1AEin7uMUSJMwbM5JQmPW8yg1H2le5tmApVvnsoQzb99TQp7qDJW8sgzivY/j4MWWObPwYyS80C8ua7QMYnTMEwNjwzhgVeKGsCExQ9QD0+I9jeUg7+hE+tHluSmmlWgbXPtmBEQ3OcfiAfSO0G6iW39PBqNWxDfmjGkIND0uniBlBEY9G6SwRb+0W30LnzXbwlHzHwA==
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=JXx5j2xnmaQOxM7VH/GIrSE0TFAdmNAZwk3QRf7lhTs=;
 b=MrA8EzoIDoC4PGPywEs/Lzp+rzSvoEJbsrGBl6+e31a8y7C20cUymBa1ORTEHP/8HP2pSUC9ArE+ifyOVFNDANJq10Z+3LYh9r5kJsoOjTA0Iib9FDHBPx/9+cwzMWttfIwffqSNC2USXDSLX/i4GwvmQEZzPV/4typZsbcnE+6EgXZe64r8ApYQE4HxumMCnAZjMdYQmmtuE4uBct9psW4qA7y6A0ti5NcZRODM0e3esdfrbKieq21nDhZCt5q3cRgCSkIckPgeRKkACHE2BrBPV3qb9jOcYzRgqvFxthbLsGpb73jlm4G5+0Igcwm6+euyzW6Bvhnb2rOS3bnoZw==
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=JXx5j2xnmaQOxM7VH/GIrSE0TFAdmNAZwk3QRf7lhTs=;
 b=sz4DtNQks3Wg0KL5CV/Wt3K9iH9sNI1/L5WNvuTFlDEvThVpUK97TC0X2RBJP1p2g6r//essNIshFBzamNah8NjJQho7u2clfUszKlF+x/XSR8qwvag2nZcdTpqCBuEXC6egJsmdRljG7TfJ8A3xHRIxbTYYT+OUE6eYA//KIKho400VuUjwLexS1vOeMW4bjxhEc7UW2UN2GfjLKOstcA6ejwCW1ekhI93Jafywul1AqKc+dhcyBfFeJjELt/RlL5KAgWD1/UUY80W32/IjXlvqakK0qhGtglfqPBuKx6hrjOIEd/DUu+5V6dQQZ9qE6avdDifQAqDwoqLXq+WUNw==
Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14)
 by AM8P250MB0230.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:325::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.34; Sun, 4 Feb
 2024 20:00:14 +0000
Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM
 ([fe80::65aa:deb0:a18e:d48d]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM
 ([fe80::65aa:deb0:a18e:d48d%5]) with mapi id 15.20.7202.031; Sun, 4 Feb 2024
 20:00:14 +0000
Message-ID: <AS8P250MB074407A39CFE5C5A42651CA08F402@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM>
Date: Sun, 4 Feb 2024 21:02:06 +0100
User-Agent: Mozilla Thunderbird
To: ffmpeg-devel@ffmpeg.org
References: <20240125134425.374-1-jamrial@gmail.com>
 <20240125134425.374-17-jamrial@gmail.com>
Content-Language: en-US
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
In-Reply-To: <20240125134425.374-17-jamrial@gmail.com>
X-TMN: [qSxMDbCJsB+xgDUsC+wN54ZqVJCqYrQ99+YhrUoP1e0=]
X-ClientProxiedBy: FR3P281CA0209.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a5::8) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM
 (2603:10a6:20b:541::14)
X-Microsoft-Original-Message-ID: <bbf6b8aa-6410-4f38-a7ff-736d5b7efba6@outlook.com>
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0230:EE_
X-MS-Office365-Filtering-Correlation-Id: 5248d95f-c7d6-4862-79d9-08dc25bbe6b4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /X/MY6Ld1I9LVpue7dAhTr+jSeua71liryhl6wXetvxrtX7Ut5YpYv2kCFPrNxJmamzHolua2IcYkvx+Pi92iPiQWUf10UqEok7betVa6wk3apRguHhKgwWVtxBN2RxAiuobLqZOKoLukXQZhjJs2wwr6TLoi9Sz3tHENhApUS76UKxc86OBHzGp+c6dsRZNkN6kHqmiIk/SngZzwLFW8QZpUjFzSYM+CqVHJ/6yqo1Zf94mJjz0k8DwHdBYZ4aBRQt5fyRB2gNODqUgyS8ZETAtvv2OKqFOjDNGDAFHD0PLAoCC8/vT5XafCK0FKjoWyvOLiD7Tpoua5p1fnZU0OzkVywspRM6a+bCqfGZ7naUeHEDh2IOIJrO8UIpJS0PPTnit2yhO/sOtsfX9kVe8KT2gkSe36hN2RpLwAbT7KVEOafDLFUxHYGi6rXDKQb5PxBz/v+LqZfR6YK3/DGQUz3paVeLh0UnXhsZlCO+deBnwUHBEXuET5YGDRUCajK7DC4vVjgiC99LovkYOKWgTRbz1yQ6iGHFpbqEzJgdGcxupeXjKgGy2evbzB9LJKo0k
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SE9zYzZaVy9PSVV4T3JhUWlSWDR6ejNKVEtsTHJlQXQ0Rnc1NmFCN2JPL2pE?=
 =?utf-8?B?R2MzNUVaWVNvVXFydUNnaDU3Y3JkZS8vSDBiRmtSZk5xSFZCZm9SUmIxdm1o?=
 =?utf-8?B?RUdkZ2V2SWF2SjBLZHNjbmZia09EZDZycFVmd29OeUJ2WGRBNTlBaHcwUzI4?=
 =?utf-8?B?VDQ2SEdHdFVXTmdUNmNESDNpU09KNlp5N0RWOHAwTDE1dHl5c210MnBBY3oy?=
 =?utf-8?B?dXN6NWk1Sm4zdVZzbTc4ZXEzNmpQZVpGclQ3MFI0OEJ2WTdlektQR2ZwWm5H?=
 =?utf-8?B?YXVDdlorOEJjb2JIOHR6QjhvcjVvVnplZ054eXJma0Jhcy9JMWhCQ3V6U0t4?=
 =?utf-8?B?ay9jclE3d1J6K2ExN1U0Y1IrN3lxd1ZoQXlLbG9rbkczNkx4RE51T1Jtd3A1?=
 =?utf-8?B?MW5FMHhtOEhKMHpKQW10a2RxeE9zLys2MUpzanFzenIxUGxmKzY3UUphLzdK?=
 =?utf-8?B?UGFJcTBrUStycVNzUG1IdmhxMjRuUUVuQ21yM090OWF4MlVqM0REb2tlTytQ?=
 =?utf-8?B?NHdrM1VubkpwOEpiZjZrdjVZOHZLRGxLeGs1cUpqbzRhTXRUSW1LOHU3RVJv?=
 =?utf-8?B?VGc5MzFtYk1ldXFVZ3BzRmJlZGUvODgyQVMzVlBDOEZ6K0E2cndSWDEzYVpD?=
 =?utf-8?B?bjlFclp6WDFzUzdxSmk5dWxyNUNFN0YvOUFUQUNPKzNzNFBHSVhNQk1IVy9V?=
 =?utf-8?B?RldVZ1Y4QXNEY1pHNy9vZmd1cFJ6WktqaG5ab2k1Q2loOEhXV1dObUd3WURa?=
 =?utf-8?B?V05lRXB0eENsT3Z2c2V0czhOQnFHQmk4MFNWcklkUmZqNnFPNVo4MVBtNUly?=
 =?utf-8?B?NVd1UHJlcHFURHMyS2hkVUlmVVF1QWlST0E0ZzN0SU5icWsrcFlXSzVTbHA1?=
 =?utf-8?B?elRpQ0JUK1ZqVVhTTHRlejZpcTltOFdwOWhmNHVxWVhJeGdlUHEwQjZvTHJ4?=
 =?utf-8?B?VUdSd0JVNzFSaURqQzNrRGVYdHpxQjJHU1BTUHl1Y0lmcXZCZGREM0NZMzZ0?=
 =?utf-8?B?U1Y4Y0VsU1hORzdFV0FXR1drY0xNd3hDMDVXMjF5eWtndGNhaEs1ZHdpSkdP?=
 =?utf-8?B?bjJWdUNnZzFKaklTcUNidTZTby9rOXU2enNlMUl6cUtBUFhwRkZ3cEt1MStZ?=
 =?utf-8?B?NE50N2l4VFMxU1ROaHlvRS83UE50ZUkxZU5SaUh5WkxCNUhlYVhwUzlsQU0w?=
 =?utf-8?B?QnVVUXpqYm8xV2E1N1VORlRmNzlUV2FHcS9hOUR0MTVnUmFoK3VieWNQZUNr?=
 =?utf-8?B?eDNXUXlCYmIvV0t4NmJJQmlUUjc0RWgrd0trUVpuT0UxNTlxVkl5YkJEcWJG?=
 =?utf-8?B?dC9ubzN0bFdjRDg0bEFJVzZmZXplN3N5ejlWc1lZaEhFNVQ3UDJ1RWJMV2hk?=
 =?utf-8?B?Z3dOanVhWXlSN1NNVzZUV0JDRWtHc2ZnbnN0V2ZTNkpUNVEwanliZ3lXZm5v?=
 =?utf-8?B?cS9MdmNXMnpLVTZsSTFuSmNFeXhsTjRPVjhpZlJ5QmFsQzYrMHlqMk5ZSit1?=
 =?utf-8?B?S3RVVlI3RTJxeWtXN3g0NnFET3pDVUpsSVNpc0tiUm5UYjF1R042eGZpNktO?=
 =?utf-8?B?TmlhTldDTTZmZHZ6bW9VSlBzZlRrdmExVHgwQ3MvUjBtcU5oQVh3QStFUm9D?=
 =?utf-8?B?RlhtSnBOLzdZOU9MQTdHNDFTUzdjYjVNdGdqOUQwWXV3Qm1lMUxDNkRuNzJN?=
 =?utf-8?Q?GwSkzdf6bz6Ksvo2rTkz?=
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5248d95f-c7d6-4862-79d9-08dc25bbe6b4
X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2024 20:00:14.1333 (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: AM8P250MB0230
Subject: Re: [FFmpeg-devel] [PATCH 16/24] avutil: remove deprecated
 FF_API_OLD_CHANNEL_LAYOUT
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/AS8P250MB074407A39CFE5C5A42651CA08F402@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

James Almer:
> Signed-off-by: James Almer <jamrial@gmail.com>
> ---
> diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
> index b59d798f29..35b03078c8 100644
> --- a/libavutil/channel_layout.c
> +++ b/libavutil/channel_layout.c
> @@ -214,190 +214,6 @@ static const struct channel_layout_name channel_layout_map[] = {
>      { "22.2",           AV_CHANNEL_LAYOUT_22POINT2,           },
>  };
>  
> -#if FF_API_OLD_CHANNEL_LAYOUT
> -FF_DISABLE_DEPRECATION_WARNINGS
> -static uint64_t get_channel_layout_single(const char *name, int name_len)
> -{
> -    int i;
> -    char *end;
> -    int64_t layout;
> -
> -    for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++) {
> -        if (strlen(channel_layout_map[i].name) == name_len &&
> -            !memcmp(channel_layout_map[i].name, name, name_len))
> -            return channel_layout_map[i].layout.u.mask;
> -    }
> -    for (i = 0; i < FF_ARRAY_ELEMS(channel_names); i++)
> -        if (channel_names[i].name &&
> -            strlen(channel_names[i].name) == name_len &&
> -            !memcmp(channel_names[i].name, name, name_len))
> -            return (int64_t)1 << i;
> -
> -    errno = 0;
> -    i = strtol(name, &end, 10);
> -
> -    if (!errno && (end + 1 - name == name_len && *end  == 'c'))
> -        return av_get_default_channel_layout(i);
> -
> -    errno = 0;
> -    layout = strtoll(name, &end, 0);
> -    if (!errno && end - name == name_len)
> -        return FFMAX(layout, 0);
> -    return 0;
> -}
> -
> -uint64_t av_get_channel_layout(const char *name)
> -{
> -    const char *n, *e;
> -    const char *name_end = name + strlen(name);
> -    int64_t layout = 0, layout_single;
> -
> -    for (n = name; n < name_end; n = e + 1) {
> -        for (e = n; e < name_end && *e != '+' && *e != '|'; e++);
> -        layout_single = get_channel_layout_single(n, e - n);
> -        if (!layout_single)
> -            return 0;
> -        layout |= layout_single;
> -    }
> -    return layout;
> -}
> -
> -int av_get_extended_channel_layout(const char *name, uint64_t* channel_layout, int* nb_channels)
> -{
> -    int nb = 0;
> -    char *end;
> -    uint64_t layout = av_get_channel_layout(name);
> -
> -    if (layout) {
> -        *channel_layout = layout;
> -        *nb_channels = av_get_channel_layout_nb_channels(layout);
> -        return 0;
> -    }
> -
> -    nb = strtol(name, &end, 10);
> -    if (!errno && *end  == 'C' && *(end + 1) == '\0' && nb > 0 && nb < 64) {
> -        *channel_layout = 0;
> -        *nb_channels = nb;
> -        return 0;
> -    }
> -
> -    return AVERROR(EINVAL);
> -}
> -
> -void av_bprint_channel_layout(struct AVBPrint *bp,
> -                              int nb_channels, uint64_t channel_layout)
> -{
> -    int i;
> -
> -    if (nb_channels <= 0)
> -        nb_channels = av_get_channel_layout_nb_channels(channel_layout);
> -
> -    for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++)
> -        if (nb_channels    == channel_layout_map[i].layout.nb_channels &&
> -            channel_layout == channel_layout_map[i].layout.u.mask) {
> -            av_bprintf(bp, "%s", channel_layout_map[i].name);
> -            return;
> -        }
> -
> -    av_bprintf(bp, "%d channels", nb_channels);
> -    if (channel_layout) {
> -        int i, ch;
> -        av_bprintf(bp, " (");
> -        for (i = 0, ch = 0; i < 64; i++) {
> -            if ((channel_layout & (UINT64_C(1) << i))) {
> -                const char *name = get_channel_name(i);
> -                if (name) {
> -                    if (ch > 0)
> -                        av_bprintf(bp, "+");
> -                    av_bprintf(bp, "%s", name);
> -                }
> -                ch++;
> -            }
> -        }
> -        av_bprintf(bp, ")");
> -    }
> -}
> -
> -void av_get_channel_layout_string(char *buf, int buf_size,
> -                                  int nb_channels, uint64_t channel_layout)
> -{
> -    AVBPrint bp;
> -
> -    av_bprint_init_for_buffer(&bp, buf, buf_size);
> -    av_bprint_channel_layout(&bp, nb_channels, channel_layout);
> -}
> -
> -int av_get_channel_layout_nb_channels(uint64_t channel_layout)
> -{
> -    return av_popcount64(channel_layout);
> -}
> -
> -int64_t av_get_default_channel_layout(int nb_channels) {
> -    int i;
> -    for (i = 0; i < FF_ARRAY_ELEMS(channel_layout_map); i++)
> -        if (nb_channels == channel_layout_map[i].layout.nb_channels)
> -            return channel_layout_map[i].layout.u.mask;
> -    return 0;
> -}
> -
> -int av_get_channel_layout_channel_index(uint64_t channel_layout,
> -                                        uint64_t channel)
> -{
> -    if (!(channel_layout & channel) ||
> -        av_get_channel_layout_nb_channels(channel) != 1)
> -        return AVERROR(EINVAL);
> -    channel_layout &= channel - 1;
> -    return av_get_channel_layout_nb_channels(channel_layout);
> -}
> -
> -const char *av_get_channel_name(uint64_t channel)
> -{
> -    int i;
> -    if (av_get_channel_layout_nb_channels(channel) != 1)
> -        return NULL;
> -    for (i = 0; i < 64; i++)
> -        if ((1ULL<<i) & channel)
> -            return get_channel_name(i);

This function is now unused after this patch and needs to be removed as
well.

> -    return NULL;
> -}
> -
> -const char *av_get_channel_description(uint64_t channel)
> -{
> -    int i;
> -    if (av_get_channel_layout_nb_channels(channel) != 1)
> -        return NULL;
> -    for (i = 0; i < FF_ARRAY_ELEMS(channel_names); i++)
> -        if ((1ULL<<i) & channel)
> -            return channel_names[i].description;
> -    return NULL;
> -}
> -
> -uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index)
> -{
> -    int i;
> -
> -    if (av_get_channel_layout_nb_channels(channel_layout) <= index)
> -        return 0;
> -
> -    for (i = 0; i < 64; i++) {
> -        if ((1ULL << i) & channel_layout && !index--)
> -            return 1ULL << i;
> -    }
> -    return 0;
> -}
> -
> -int av_get_standard_channel_layout(unsigned index, uint64_t *layout,
> -                                   const char **name)
> -{
> -    if (index >= FF_ARRAY_ELEMS(channel_layout_map))
> -        return AVERROR_EOF;
> -    if (layout) *layout = channel_layout_map[index].layout.u.mask;
> -    if (name)   *name   = channel_layout_map[index].name;
> -    return 0;
> -}
> -FF_ENABLE_DEPRECATION_WARNINGS
> -#endif
> -
>  int av_channel_layout_from_mask(AVChannelLayout *channel_layout,
>                                  uint64_t mask)
>  {


_______________________________________________
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".