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 EEEA64B319 for ; Thu, 4 Jul 2024 17:04:05 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DF6F168D9B6; Thu, 4 Jul 2024 20:04:02 +0300 (EEST) Received: from mail-oi1-f175.google.com (mail-oi1-f175.google.com [209.85.167.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 48DFD68D1F4 for ; Thu, 4 Jul 2024 20:03:56 +0300 (EEST) Received: by mail-oi1-f175.google.com with SMTP id 5614622812f47-3d6301e7279so526920b6e.3 for ; Thu, 04 Jul 2024 10:03:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720112635; x=1720717435; darn=ffmpeg.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=1K28IWktcOm5kUaI8AsXMUAA505fZsmZucGZxJuKoUI=; b=RILvbH/k6jdUaGFGMpbaWFwYgsxb538+GnniLoNDRxoXd87E1WlXy+DEAO5k7rheFw cPhrJlYU3fMWefdlGlC43sU86dwTqHGjJIuyUwX36HOnZR1m6Hl7ojJTr0dIJNwqoWpX kiywD+Ns9NGu91Br7mGsaGtY+DmEaazbZWQC8pZ/QNmVcQSywtvWPAabK2Xh+qx6Uj8D RCueL4M7YcdxIEGGDuuSUhW2AaUBHTLhGPdO0el8ssEtQGuuFk1wywE1zx7v+UcuzzQI KL+83GdRbR6eCnn/k3sGrcRau7/xAwebl4RFwO7/R4lXciBD8V0JWY64pobRLxfPJUIs qizg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720112635; x=1720717435; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1K28IWktcOm5kUaI8AsXMUAA505fZsmZucGZxJuKoUI=; b=I3dFlxeWiSqsAaaOQFaoOSM8GklvApIzcIYrjXwBkQUmsBSfK7IWT3YwIjaZSFUS4i 6UopKTMkx/rfUsU6Klk3gBgZGkz7tWH0xYZwFbcHJP3czNuN9ZF/N5PmZkMB7yxY6ahf L7WCVokIM68VQw2JXpqQ1EaCn7ZuQMxG9/CjaqmpifQNEcd0vhozkJY7ZeQ7zC/2YCu9 JyCdGgzAEvOPKar8sBwOIBRTIP0glwCHhBGHGL1XWM/qlenoeCjwkFyk4Un4oR1yrPrQ jwXHJ7o/5AX/oyM5xwCStylpIgbz6Av+jsnK3Rv9YX7wkgVPSmdoLkSNPLbgycoUJ/05 wPpQ== X-Gm-Message-State: AOJu0YweaL9CB6InrH+x6zbCgxmXS05jUN7BwyL+i1G/tj2WdtmJZkgW xymDwYFmqtapg/YEusxaWjHSRT7edFJc4to4w8ESzvweR0qkoTQGXfoM6pXYLgcMXQklVWy3DoU tWoBvQMEfuI+jGI8DjixrbJ9HMEgaRvBZ X-Google-Smtp-Source: AGHT+IHBA1TbBewhiVMgncC0wD3Mb7Gq9S050Q3XxtbxnaJFpZpQ9jBKXXfntqc0ZqJjM7Ru7aYttBPmEdXOUXxyrsY= X-Received: by 2002:a05:6808:200d:b0:3d6:2f3f:57f5 with SMTP id 5614622812f47-3d914c8464bmr2646640b6e.34.1720112634769; Thu, 04 Jul 2024 10:03:54 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Paul B Mahol Date: Thu, 4 Jul 2024 19:03:25 +0200 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] Sorry state of AVOptions 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-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: > NG reply: > > Paul B Mahol (12024-07-04): > > The AVOptions state is extremely ugly. > > > > It is insane to request from library users to convert non-strings option > > values from/to strings to be able to read/change them, it is ugly, > > inefficient, and slow. This becomes more relevant for recent array options > > extension for which av_opt_ptr() hack does not work at all. > You are right, and it will not change soon. > AVOptions is both about communicating with applications through > type-safe APIs and about communicating with users through generic APIs. > That last point is done through text, the universal API of humans. Text, the ASCII used by CLI ffmpeg as interface for humanoids is irrelevant here. Modern humanoids use GUI interfaces and there text interface is reserved only for actual text - STRING AVOptions and some aliases for other AVOptions types. >From the programming perspective text aka " char * " manipulations should be reserved for actual text only, not for colors,integers,floats,flags... etc. Your last point is relevant for direct CLI ffmpeg usage mostly, ffmpeg and its libraries in modern days are also used via automated process. So writing some another iteration of generic text manipulations is waste of time and resources, the current CLI text manipulations can stay and are enough good in current state. I'm not interested in text transcoding from/to as that is already done fine in current libraries. When you have GUI application which allows users to change filter parameters via various widgets, there are no string anywhere unless one needs to type actual strings. _______________________________________________ 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".