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 7E6F748CFF for ; Tue, 23 Apr 2024 21:23:09 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 28CAD68D2B7; Wed, 24 Apr 2024 00:23:06 +0300 (EEST) Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EB2FF68CEC6 for ; Wed, 24 Apr 2024 00:22:59 +0300 (EEST) Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-2abf9305afcso3719720a91.1 for ; Tue, 23 Apr 2024 14:22:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713907377; x=1714512177; darn=ffmpeg.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id:from :to:cc:subject:date:message-id:reply-to; bh=egOVDIx33egXbujbGRlEIL9vPIvttSgY+IdTP4UKwu0=; b=CXk0GxpScxyQx8juDx03ItehGbFWUliDTBRmzAXDovI1P9gkYFR1Exu/NnUytSJb8d VuUN/eIkGbEiWrfSxo1wD8Jtk7CfKkPePhTrOd2r13JZRViwM1XcjPy0AT2d6YHBw9Sz c7JY0LjwLrv7s6AS+bL4mVI5Z3OY3gPMw2V318GIs/g4FLpnlH1t2ZdKlb7RiOrffApo WlocNwawhI5mJPEE4BsptJvArPuO+3tBvtCYbh7hj10/hpOlwfpYYkm+HVP/Hq6u8bin 5QBHvaApaIljuVTctdnX9RQ5qprl4EPKX76GMTIJ0rCAfFDlcPdNFNY2E7xDyB3RKcND 1cdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713907377; x=1714512177; h=content-transfer-encoding:in-reply-to: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=egOVDIx33egXbujbGRlEIL9vPIvttSgY+IdTP4UKwu0=; b=er/BE54EY4VDC3aLjafl1/l6d5Oehc0HYXMCEzd6N954P4Ii+kSw950Nng37XcEOER BsJ4jbiUDVZLpul1d5zngTTlsXOWln7VRKNoXjN5D6bvIU899L9uBGmwT50HdQBM863E 6RG/84lAMcd/tLigtcfFNvnTKNmI+pHN/L73L33/AKvSB2ViwQbqH4gtoYKbKwly9o4I KCc1wLUBzlIZETP1DnWnycVHLgCrCNrJ/LBD9Nw9KZ1HYQSKgxC62keavif0GUF/XGUX JW2CkiJhdUPlpZhKUTBs3MiJIxESOy4SnAnnoz4RIiDjSosAmfZaY21o4pWPTAfdx0yh g4+A== X-Gm-Message-State: AOJu0Yz39MpvNA5gAswMLJlgPQj8yscG/P13xp5s1KkGbvYdfu5DiK7I OfmbYBOkDpbs/TM94dWPgEdWtV4+iycPjXs1uhL4Cg3SqJcCrAceBaNodQ== X-Google-Smtp-Source: AGHT+IHMJJ43lDxtU0FN5pdlhbXOm60nwinyIs5JYzGAhC+fdQKCLE14eYaAx4qfMB1Fvx/l9LPW6w== X-Received: by 2002:a17:90a:ba08:b0:2ad:f88d:9fd6 with SMTP id s8-20020a17090aba0800b002adf88d9fd6mr613925pjr.8.1713907376922; Tue, 23 Apr 2024 14:22:56 -0700 (PDT) Received: from [192.168.0.10] ([190.194.167.233]) by smtp.gmail.com with ESMTPSA id v4-20020a17090a0c8400b002a54222e694sm10829346pja.51.2024.04.23.14.22.55 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 23 Apr 2024 14:22:56 -0700 (PDT) Message-ID: <95887da9-e3d6-4739-b46a-7d6809aaa932@gmail.com> Date: Tue, 23 Apr 2024 18:23:04 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20240422120925.380253-1-ffmpeg-devel@pileofstuff.org> <171386408794.22242.4320691091356910947@lain.khirnov.net> <171386667402.5069.14623062002271611181@lain.khirnov.net> <20240423111552.GI6420@pb2> <927b5c94-c765-4852-a502-4369b4a624c6@gmail.com> <20240423205342.GL6420@pb2> Content-Language: en-US From: James Almer In-Reply-To: <20240423205342.GL6420@pb2> Subject: Re: [FFmpeg-devel] [PATCH v2] lavu/opt: Clarify that AVOptions is not indended for general use 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 4/23/2024 5:53 PM, Michael Niedermayer wrote: > On Tue, Apr 23, 2024 at 05:24:03PM -0300, James Almer wrote: >> On 4/23/2024 8:15 AM, Michael Niedermayer wrote: >>> On Tue, Apr 23, 2024 at 11:10:43AM +0100, Andrew Sayers wrote: >>>> On Tue, Apr 23, 2024 at 12:04:34PM +0200, Anton Khirnov wrote: >>>>> Quoting Andrew Sayers (2024-04-23 11:51:00) >>>>>> On Tue, Apr 23, 2024 at 11:21:27AM +0200, Anton Khirnov wrote: >>>>>>>> lavu/opt: Clarify that AVOptions is not indended for general use >>>>>>> >>>>>>> They _are_ intended for general use though. >>>>>> >>>>>> In that case I'm confused... >>>>>> >>>>>> Let's say I make a desktop app to transcode videos. Obviously I would use >>>>>> AVOptions to display configuration options for different encoders. And it's >>>>>> possible to create AVOptions objects for my UI. But how strongly is that use >>>>>> case recommended? >>>>>> >>>>>> To provide a particularly difficult example - let's say I want to let the user >>>>>> choose between interface themes, and I want to show both some text and a >>>>>> picture of the theme. AVOption doesn't include a "text + picture" option, >>>>>> so how would I extend it to meet my needs? >>>>> >>>>> If they fit your use case, then use them, otherwise don't - that's true >>>>> for pretty much all APIs we provide. >>>> >>>> Ah ok, so how about if I changed "intended" to "optimized" in the subject? >>> >>> If FFmpeg which is a multimedia tool in no place needs or wants to store >>> pictures through its option API in a way not curently supported. >>> I would say thats not going to qualify as "general use" outside specialized >>> software thats already dealing with a lot of pictures >>> >>> still you certainly can handle binary data (like a bitmap picture) through >>> AVOption >>> >>> thx >> >> Take for example AVIAMFReconGain.recon_gain in libavutil/iamf.h, which is >> currently the only field not covered by an AVOption (And thus not currently >> configurable from the CLI). How could it be supported? Binary type doesn't >> work because it expects a pointer + size field and allocates the former. > > i would guess some form of AV_OPT_TYPE_FLAG_ARRAY > > we have similar arrays like intra_matrix in mpeg codecs Same situation it seems, it expects a pointer + size field. _______________________________________________ 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".