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 ESMTPS id 63BF14D6C0
	for <ffmpegdev@gitmailbox.com>; Fri, 18 Apr 2025 14:46:57 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4CCCB687CA9;
	Fri, 18 Apr 2025 17:46:52 +0300 (EEST)
Received: from mail-qk1-f171.google.com (mail-qk1-f171.google.com
 [209.85.222.171])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1F279687CA9
 for <ffmpeg-devel@ffmpeg.org>; Fri, 18 Apr 2025 17:46:45 +0300 (EEST)
Received: by mail-qk1-f171.google.com with SMTP id
 af79cd13be357-7c554d7dc2aso286036785a.3
 for <ffmpeg-devel@ffmpeg.org>; Fri, 18 Apr 2025 07:46:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1744987603; x=1745592403; darn=ffmpeg.org;
 h=content-transfer-encoding:in-reply-to:autocrypt:from
 :content-language:references:to:subject:user-agent:mime-version:date
 :message-id:from:to:cc:subject:date:message-id:reply-to;
 bh=WfwrG+H/ElXz7wu+yJVU+ILhV1SotOMUq8iyIquzAso=;
 b=FjYGXceYyNFzf5az9Wij0v6umxkqrvOc2/s8QrYa3EqYAJeNWNIc3HnlsVyhW76vzz
 v4a1LfyQNWO8QPEmtCblLNwsP+0gva4FethQDcETU02qJXYN6Hx9WmUKlK1CuF0918ar
 KykxT5I2qzEcQOZUQcQl+1+3WXj1uq99yVfQLnGVE2hrUpxWKog+doVChktoDL3T/VvR
 AmAusXpEZX9TZeRwopZ8EgrNmiQ39k2g/tJ8Fq5GrDdB8v/P9f1RipWE3gcEqiaxvg56
 Ppt60A+Uk9xxDQyz52Nuj446sFWFVpXNSu9sFlmf295O7JeQCcwi0bJHuieuA0lSGlmh
 9aag==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1744987603; x=1745592403;
 h=content-transfer-encoding:in-reply-to:autocrypt:from
 :content-language:references:to:subject:user-agent:mime-version:date
 :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=WfwrG+H/ElXz7wu+yJVU+ILhV1SotOMUq8iyIquzAso=;
 b=aBZk6VZTWbpR0kg+feHY7GjDcf9/S5G4Zpq3tcsNWBGaeZj3WjkGpFO7G/owDZIejR
 xIsvDqONHFYt9lmavW6L6p37nwuCRHP4cFSRK2x+LKVls7rsSmvQMwFYAXAO7FxJ7vBi
 enK8+aMQAx71XQCM7bq0OjTkGzJ0PEr4irENNBs4i3DXb0i0WkQfL22Mv8k/IQHaMsvn
 nmguzkDUO6z74HrTOIZh992RQcZ9C/VPB0CmfTA0EYNCtOJ9n7QXebsJUaNmnxHv3H/C
 hOVOO+UgHMTYzRwPED6gn3xtWtSN/Bj5V4LAJGmaVKqmqTpO3AzlAQxzXJBvvAN8V/xP
 cdQA==
X-Gm-Message-State: AOJu0YxU6RcvQ94VbKht1QV6A8sHuvimyF1N34Z/Rk49UOWvJxCAeA9u
 OBqPIOswXh1/gZo2+jU+rE74xMGyO3w4lEunCu3rjPjIZzxexrtPmfvGUA==
X-Gm-Gg: ASbGncuP07behjSyMzU7km6i9S3n+9/Er+DMMyES0joJnFiNYvb5ySPfvPXuHd0nAdG
 JZRaUPK2LiR20F/ZDT8kxtYpoHE12NRappze/7V5BC7B9z35rVzQ2Q32XvDcS4Q7XdSlNkL5v5v
 sJMNTrkNo6cZIV9N9b1NMc7WUGOGra0vaTx8z/lGDYCErey5mixkP17urWTRQ8+oIpBk7DjbDSf
 gdlyyJKypLLNJ5pZOTJv0hEhKwaLLT7+sOOWFq+vEQMidsunlJ12Jvw607KskDvhXGExwU6ILaM
 jf1LvtLBSzUiAjj2BpKbPK5duwpIIem8Kgftko9vI0kZvo8kQ9MrACfTNeuMxc1/wzQZwganrxX
 UkUvs/dER+MsbZsVr9a49
X-Google-Smtp-Source: AGHT+IED0ZOPWSRWMtjJMGuRqrGzXK/RyOTjX5lTcMTgjQVHHRkJbbj+cL9SQeHBWI6UfcE+CEZP9Q==
X-Received: by 2002:a05:620a:1787:b0:7c5:9993:ba7e with SMTP id
 af79cd13be357-7c92804d3f1mr569951985a.50.1744987603508; 
 Fri, 18 Apr 2025 07:46:43 -0700 (PDT)
Received: from [192.168.1.35] (99-104-239-121.lightspeed.livnmi.sbcglobal.net.
 [99.104.239.121]) by smtp.gmail.com with ESMTPSA id
 af79cd13be357-7c925a8d484sm114130585a.31.2025.04.18.07.46.42
 for <ffmpeg-devel@ffmpeg.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 18 Apr 2025 07:46:42 -0700 (PDT)
Message-ID: <3359dc33-ab0c-4c78-9621-6be97dff07df@gmail.com>
Date: Fri, 18 Apr 2025 10:46:42 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: ffmpeg-devel@ffmpeg.org
References: <20250417165241.3266643-1-michael@niedermayer.cc>
 <aAFBGsbuU5SG2ma4@phare.normalesup.org> <20250417201238.GU4991@pb2>
Content-Language: en-US-large
From: Leo Izen <leo.izen@gmail.com>
Autocrypt: addr=leo.izen@gmail.com; keydata=
 xjMEZZw8HxYJKwYBBAHaRw8BAQdAgcfI+LbtjWarA7LQu6/WAPlKkn9tn4HalmHgGVhMUdzN
 KkxlbyBJemVuIChUcmFuZXB0b3JhKSA8bGVvLml6ZW5AZ21haWwuY29tPsKTBBMWCgA7FiEE
 HYMKC85GcJ4gOyb8dk5I6kgiGDMFAmWcPB8CGwMFCwkIBwICIgIGFQoJCAsCBBYCAwECHgcC
 F4AACgkQdk5I6kgiGDOnGAEA+oJFwblAblnhK+T5a5EuEbXMTZG4FkYTYz0VmjJ0NHIA/Rn9
 ZE9+EEsH8fmT0hRJSiM3+zbkwQJA9gVVYAek9kMKzjgEZZw8HxIKKwYBBAGXVQEFAQEHQDes
 4thejF9AU2rkGuDuut3CQYwB4SVpI4EzU8uvPJgfAwEIB8J4BBgWCgAgFiEEHYMKC85GcJ4g
 Oyb8dk5I6kgiGDMFAmWcPB8CGwwACgkQdk5I6kgiGDOv3QD+PLXrL0Ihk675Ip5FG+VJOodN
 6e+5n3iYC6wJ75eqG3EA/1nCywoGXlCYuzXgq3el6NOn+8awwaXcTVJFzZCRbe8M
In-Reply-To: <20250417201238.GU4991@pb2>
Subject: Re: [FFmpeg-devel] [PATCH v3] libavutil: Add AVMap
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-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/3359dc33-ab0c-4c78-9621-6be97dff07df@gmail.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

On 4/17/25 16:12, Michael Niedermayer wrote:
>>
>>> + * @param keyvalue_cmp compare function, will be passed the key + value concatenated.
>>
>> Please no. Pass the key and the value separately to the compare
>> function.
> 
> thats neither efficient nor does it fit the existing APIs.
> The value is most of the time not used and when used it is known exactly
> where it is. after a string compare of the key thats equal the value location is known
> or with arbitrary binary data the compare function knows the size of the data.
> Passing redudant pointers just wastes cpu cycles
> also existing APIs from av_tree strcmp() av_strcasecmp() and so on none of
> which take 4 pointers from which they would ignore 2.
> 
The problem is that passing the key and value pairs combined requires 
you to concatenate them. Since AVMapEntry has two separate pointers *key 
and *value, it doesn't make sense to concatenate them before comparison
rather than just pass the pointers as-is.

- Leo Izen (Traneptora)

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