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 DF70C40AEE for ; Sun, 5 Jun 2022 08:52:28 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6D0A068B6AC; Sun, 5 Jun 2022 11:52:25 +0300 (EEST) Received: from mail-yb1-f174.google.com (mail-yb1-f174.google.com [209.85.219.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 91F7E68B68F for ; Sun, 5 Jun 2022 11:52:19 +0300 (EEST) Received: by mail-yb1-f174.google.com with SMTP id f34so20847676ybj.6 for ; Sun, 05 Jun 2022 01:52:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=XeHnrgC/mGGEGpm2SPOJynZL20mNga1RyDKIO4yhO2I=; b=LTvIZxSL661eeKgQGsVITIh6xrjazoK6y87DNL+NyNGsN/08VWsCK0m9Ei3/dit0gC NAr9y/p6RZSrhvQqJpp/dxAEniWUZ5ClKUCt7NF9G6PejqahYYDOPyeRRH0+jFGYT4HN ooqs/rUHRzegyZ+cUknycZWctuaeKvXjh3AkQq6PKo0sXZUJ40Q58AUyzh6GZNW6vjxo xRvs4tX66ReE02iSaz/R63lpKXRDD3Ker9idqS1IWlBP7wO7f9sgjM4sTKb3pn7ldoG6 xQlpPeeLqPl0d4DcdihZKtoSkLY9yDMkzqDpjlb4LCMt45jLKWspzFBxENnTkz/Z1/hA STNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=XeHnrgC/mGGEGpm2SPOJynZL20mNga1RyDKIO4yhO2I=; b=rlQSPIxOPjih56rFpdBmxpJO8vhWNYNpQG+GPDSQkgOZO9l5zRMDB94Vgx1dkfVxkL C7h463xgWWObvvgD9b8T7UnDSbeYEzlPS2MBTzy9hpC22Sv1JASeQh+AmqDCGJ/Wl5Eb aAkwaDGg+LHmluks+sheP7ZflQyJt9trXGxquO0JM2GUnx9dJoyJq1R/+732GHFXE/MO uscSZPwwoZ2fJQTQvGdhb8hTrC9l8nbkzeExu59n590GM5XZxpAB9eihxOjBmK/0R9KC 6WEqmYM4qdwqLpEzj+4Wc0nYGIetRVqtGcr5ZQX51h3BMWEY+AMULfuzOoQnHg9qg8VE SgDQ== X-Gm-Message-State: AOAM532JMuC+h0p2nF1uOeR7ZDiCbCvqu2M0cf06Zs6t3FY6Trf8+GLH 1hJXdRk7rDgiOSi8WTsZbKWK7NceYWJFPKfu7lmwJoxphec= X-Google-Smtp-Source: ABdhPJzqBMVt3sH6x3ss1Iz6aQ8bU3JFCYchqm5LATb40tsdFWHwvGQyqSB+WLbjfa04mvhhq+QRlaQuUm0skl1bGck= X-Received: by 2002:a5b:542:0:b0:64f:b168:8f11 with SMTP id r2-20020a5b0542000000b0064fb1688f11mr19565836ybp.227.1654419137977; Sun, 05 Jun 2022 01:52:17 -0700 (PDT) MIME-Version: 1.0 References: <20220323155720.20017-1-anton@khirnov.net> <165441247425.5088.1095760194724448724@lain.red.khirnov.net> <165441720181.5088.3725748658698613904@lain.red.khirnov.net> In-Reply-To: <165441720181.5088.3725748658698613904@lain.red.khirnov.net> From: Paul B Mahol Date: Sun, 5 Jun 2022 10:55:13 +0200 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH 1/8] lavc/avcodec: simplify codec id/type validity checking 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: On Sun, Jun 5, 2022 at 10:20 AM Anton Khirnov wrote: > Quoting Soft Works (2022-06-05 09:54:51) > > > > > > > -----Original Message----- > > > From: ffmpeg-devel On Behalf Of > Anton > > > Khirnov > > > Sent: Sunday, June 5, 2022 9:01 AM > > > To: FFmpeg development discussions and patches < > ffmpeg-devel@ffmpeg.org> > > > Subject: Re: [FFmpeg-devel] [PATCH 1/8] lavc/avcodec: simplify codec > id/type > > > validity checking > > > > > > Quoting Soft Works (2022-06-05 07:23:18) > > > > This is causing a regression in ffprobe. > > > > > > > > The commit removes the special-case check for > AVMEDIA_TYPE_ATTACHMENT which > > > > was required for ffprobe and had been added with > > > e83c716e16c52fa56a78274408f7628e5dc719da. > > > > > > > > The demand from the commit message is not yet guaranteed to be > fulfilled: > > > > > > > > > On entry to avcodec_open2(), the type and id either have to be > > > > > UNKNOWN/NONE or have to match the codec to be used. > > > > > > > > I have one verified example (maybe a second will follow), which is > an MKV > > > with > > > > an attachment "stream" of type "text". > > > > The found codec will be textdec of type 'subtitle' even though the > stream > > > type > > > > is attachment. Without the special condition for attachment streams, > this > > > > is now causing ffprobe to error out with non-zero exit code and > incomplete > > > > output. > > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > Example: > > > > > > > > [...] > > > > Stream #0:9: Attachment: text > > > > Metadata: > > > > filename : textfile.text > > > > mimetype : text/plain > > > > [text @ 000001AC32310340] Codec type or id mismatches > > > > Could not open codec for input stream 9 > > > > > ------------------------------------------------------------------------ > > > > > > This sounds very much like a bug in ffprobe. It makes no sense to call > > > avcodec_open2() with the AVMEDIA_TYPE_ATTACHMENT type. > > > > You make a behavioral change to an API function that had this behavior > > established and constant over more than 10 years, and when that change > > breaks functionality, it's the callers' fault? > > How does this go together with all that peanut counting of major, minor > > and micro version numbers per library? What is this versioning good for, > > when you can make breaking changes and declare the breakage as bugs? > > We maintain compatibility for valid API usage. We do not maintain bug > compatibility. > > I fail to see how calling avcodec_open2() with AVMEDIA_TYPE_ATTACHMENT > is valid API usage. What do you expect it to do? There are no > AVMEDIA_TYPE_ATTACHMENT decoders. > > More generally, arguments along the line of "change is needed to > keep program working>" on their own sound very shady to me and > suggest that perhaps program should not be doing whatever it is > doing. > You broke existing functionality, fix it ASAP or revert those changes! > -- > Anton Khirnov > _______________________________________________ > 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". > _______________________________________________ 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".