Re: [Cellar] Publication has been requested for draft-ietf-cellar-flac-08

Martijn van Beurden <mvanb1@gmail.com> Fri, 04 August 2023 18:24 UTC

Return-Path: <mvanb1@gmail.com>
X-Original-To: cellar@ietfa.amsl.com
Delivered-To: cellar@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4DFB0C152574; Fri, 4 Aug 2023 11:24:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.854
X-Spam-Level:
X-Spam-Status: No, score=-1.854 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id K1-0Lh26hLz5; Fri, 4 Aug 2023 11:24:25 -0700 (PDT)
Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [IPv6:2a00:1450:4864:20::12a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB9F3C1524D3; Fri, 4 Aug 2023 11:24:24 -0700 (PDT)
Received: by mail-lf1-x12a.google.com with SMTP id 2adb3069b0e04-4fe5ab64a26so1514834e87.2; Fri, 04 Aug 2023 11:24:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1691173463; x=1691778263; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=+asCwBLvACODeX1vIDYQr4cBn+XOPb+dPpuhye56qVY=; b=Vm3Hi+w9Xkt8/yF70kEmEy2Aosy8z3Zqf7sUx44DQti8vd/nT1CUfTqHOkY8L+A5fG RUaf7jzwRQvVxgkxVqsfJRrdSfX6rhvhBuGChI3eK5kCpPJZIicIrVZrzMbsr71lTCkp 2qBrK+2QcEYCd0O2hZXRo2t5HDrp/tFv4J4vaxttXKBrAKy0Ytp6yLUdA0Bgo9bJHLJw ihVmH9ZY1XOYMeKK8E21ZTur0kJNzdC8WNc67howsOpY97MOizLMDk/qGFOQqaQi4Gr2 Q2ixmVpNzTcRzq62XMCGy5OGdXT3TeFOtob+jWEo76MAJb82OCwTkccU32oGY/klT7dk Oorg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691173463; x=1691778263; h=cc: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=+asCwBLvACODeX1vIDYQr4cBn+XOPb+dPpuhye56qVY=; b=JZObbFjdpvz1O3QdfrS+DkddvBxvFUlFKLv+JfmxZpXJ9H7ZdrHvrEgwKEp12kxHkl 5ejb9WBykR7w0Eqqee4Uqd58bcTi3nfHEyF+NQuxb48GhVjPQu7NUCZr3+I6i/H3OQPo 1bZe1zhB6cQrfmi5d52xfDzhjoKBG3VKkNEyq8+Z58jOYXYsykTYvBBGJ2tQOLfMFul7 oigELcYYlRa34ix7Pn+eHiRQgb4WhNdk194XUVkTNwi6NiKT9VmLAmh+IfC8jC8rvUs7 ZwPkUeX33tmz0IbFmJ+0zirRakVzlkkkTlMGAGzfQdXLsepkcYsxNf2HrDbBFdnP4vdM irQw==
X-Gm-Message-State: AOJu0Yx7lY7BrmTC/M07PJMpV22VxA9HowxeSdhkcsz0gqpWpvgBkc17 0j5HktyueCAKX25N+veg9BCN42MX6Krm38PhaOE=
X-Google-Smtp-Source: AGHT+IHHghRQmr93M5JImaV+NgjQSEbOT0RlWMQr+8HfkD/cARtr2ugmM6ppO2j4pdCn3ahgYrU8y9aqPxolNbm4ovY=
X-Received: by 2002:a05:6512:ea6:b0:4fb:5dd5:715c with SMTP id bi38-20020a0565120ea600b004fb5dd5715cmr2551873lfb.4.1691173462188; Fri, 04 Aug 2023 11:24:22 -0700 (PDT)
MIME-Version: 1.0
References: <168065714453.60406.7912546908159152005@ietfa.amsl.com> <CAL0qLwYm2=B78fjPMJWMttmz+3FS27tsjxJOMsLD_wk4U4T0uw@mail.gmail.com> <CADQbU6-sRkW3Ua5niaBTRhtehOzRnOH2cxBc3WZCMzNMuDGFaw@mail.gmail.com> <CADQbU6_hTrfiysWtdRw+rx1s5X_7sxmPk9FztL+EJ87SYqZwBw@mail.gmail.com>
In-Reply-To: <CADQbU6_hTrfiysWtdRw+rx1s5X_7sxmPk9FztL+EJ87SYqZwBw@mail.gmail.com>
From: Martijn van Beurden <mvanb1@gmail.com>
Date: Fri, 04 Aug 2023 20:23:49 +0200
Message-ID: <CADQbU69FkyC3ZkKKgPEs6i+Ze-sxHyTEPSBw5Mgx+io49yHnVg@mail.gmail.com>
To: "Murray S. Kucherawy" <superuser@gmail.com>
Cc: spencerdawkins.ietf@gmail.com, cellar-chairs@ietf.org, cellar@ietf.org
Content-Type: multipart/alternative; boundary="00000000000077a91606021d01cd"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cellar/vhDogsUVPgd_0h9Se5IKmKTl1Ig>
Subject: Re: [Cellar] Publication has been requested for draft-ietf-cellar-flac-08
X-BeenThere: cellar@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Codec Encoding for LossLess Archiving and Realtime transmission <cellar.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cellar>, <mailto:cellar-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cellar/>
List-Post: <mailto:cellar@ietf.org>
List-Help: <mailto:cellar-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cellar>, <mailto:cellar-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Aug 2023 18:24:29 -0000

Hi all,

With some help, I've tried to address all the raised issues to the best of
my abilities. I have uploaded a new I-D, draft-ietf-cellar-flac-10. The
diff is quite long, because I've used a grammar checker as suggested, which
found a lot of possible improvements.

Kind regards, Martijn van Beurden

Op ma 31 jul 2023 om 09:43 schreef Martijn van Beurden <mvanb1@gmail.com>:

> Hi all,
>
> Currently I'm not sure how to proceed on updating the draft. Could someone
> please help with some of the questions in the email below?
>
> Kind regards, Martijn van Beurden
>
> Op ma 10 jul 2023 om 10:00 schreef Martijn van Beurden <mvanb1@gmail.com>:
>
>>
>>
>> Op ma 10 jul 2023 om 04:19 schreef Murray S. Kucherawy <
>> superuser@gmail.com>:
>>
>>> On Tue, Apr 4, 2023 at 9:12 PM Spencer Dawkins via Datatracker <
>>> noreply@ietf.org> wrote:
>>>
>>>> Spencer Dawkins has requested publication of draft-ietf-cellar-flac-08
>>>> as Proposed Standard on behalf of the CELLAR working group.
>>>>
>>>> Please verify the document's state at
>>>> https://datatracker.ietf.org/doc/draft-ietf-cellar-flac/
>>>>
>>>
>>> Sorry for the long delay getting to this review.  I have to admit, as I
>>> think I did for Matroska, that codecs are not an area of my strength.  I've
>>> focused primarily here on the document's overall readiness to move forward
>>> in the process, but could easily have missed something specific to the way
>>> codecs work.  That said, it was an interesting read and I learned from it.
>>>
>>
>> Many thanks for your review. I have a few questions about some of the
>> raised issues,
>>
>>
>>>
>>> Here are my comments, in no particular order:
>>>
>>> In Section 13.1, the parameters say "None" but they should say "N/A";
>>> see Section 5.6 of RFC 6838.
>>>
>>>
>> OK, I'll change that.
>>
>>
>>> Also related to the media type registration, RFC 6838 requires that
>>> Security Considerations of the registration include, or refer to, an
>>> explicit statement about whether the payload found in the media type object
>>> is executable code.  I think this can be resolved by just adding a sentence
>>> to Section 12 of this document that makes that explicit one way or the
>>> other.
>>>
>>>
>> Okay, I'll add that back in. It used to say FLAC carries no executable
>> content, but there is no reason to state that. In fact, I know some people
>> use FLAC to store mixed-mode CD images, which do contain executable code.
>> So perhaps I'll state that FLAC files may contain executable code, although
>> the FLAC format is not designed for it and it is uncommon.
>>
>>
>>>
>>> I think IEC.60908.1999 should be a normative reference.  I think the
>>> references to RFC 6838 and RFC 7942 should be normative, but I also don't
>>> think they are necessary and could be removed to simplify things a bit.
>>>
>>>
>> Please explain. I thought normative references specify documents that
>> must be read to understand or implement this document? How can the
>> reference be a required read only when present?
>>
>> As for IEC.60908.1999, could you please explain what parts of the
>> specification are hard to understand without having read it? I don't have
>> access to IEC.60908.1999, I have never read it myself, and as far as I know
>> all relevant parts have already been explained in this document. From my
>> point of view, the reference is only there to point to the origin of some
>> fields.
>>
>>
>>>
>>> In Section 12, there's a reference to a github link.  I'm not sure how
>>> this will be received by the RFC Editor or the IESG.  What guarantees are
>>> there that this link is permanent?  This goes for other github links, e.g.,
>>> in Section 10.3.
>>>
>>>
>> Considering the other github links, the working group considered github a
>> more stable resource than IETF's trac. If I recall correctly the IETF wiki
>> wasn't ready when these parts were prepared. Do you think we should move
>> these resources to the IETF wiki?
>>
>> Considering the github link in section 12 (which I don't think we can
>> move to the wiki), the working group considered these permanent. Does the
>> IETF provide for storing a collection of large files somewhere permanent,
>> so these files can be transferred there? Perhaps the link should go to an
>> IETF wiki page that points to the github so the link can be updated if
>> necessary?
>>
>>
>>>
>>> There are numerous in-document references (i.e., to other sections) that
>>> render as links to github where this document is developed.  Is this
>>> generated by the xml2rfc code, or something else?  They will need to become
>>> regular section references before this moves ahead.  This may just be my
>>> unfamiliarity with recent changes in the xml2rfc tooling, but it stood out
>>> to me.
>>>
>>>
>> Can you name an example? I just checked and as far as I can see, there
>> are a few links to the github wiki (which can be moved to the IETF wiki if
>> necessary), one link to the github repo for the example files, the github
>> repo which test files and one to the FLAC source code repo for the full MP4
>> mapping.
>>
>>
>>>
>>> Regarding the SHOULD in Section 5, I'd like to know why there's an
>>> option here.  What effect is there on interoperability if an implementation
>>> chooses not to do what's described there?  I have the same question about
>>> the RECOMMENDED in Section 8.2, the RECOMMENDED in Section 8.6.2, the
>>> SHOULD in Section 8.7, the RECOMMENDED and SHOULD NOT in 8.7.1, and the
>>> SHOULD in 12.
>>>
>>>
>> Section 5: the reason for this SHOULD is explained in that paragraph, but
>> perhaps it isn't clear enough? Can you point me to the ambiguity? I'll
>> paraphrase: unsigned samples can be represented in signed samples in
>> several ways. As the coding tools provided by the FLAC format work best
>> with samples centered around zero (i.e. the highest compression is
>> reached), it is recommended to convert unsigned samples to signed samples
>> by subtracting half the range, if that indeed results in samples being
>> centered around zero. There is no interoperability concern when choosing
>> another method to convert unsigned samples to signed samples, it just
>> doesn't compress as good.
>>
>> Section 8.2: here I also do not understand the ambiguity, can you point
>> me to it? I'll paraphrase: FLAC is designed for audio, which has a sample
>> rate, otherwise it is no audio. If someone chooses to store something in
>> FLAC without a samplerate (i.e. something that is not audio), it is
>> recommended to add some metadata on what the data is. As I do not know of
>> these non-audio uses, the document cannot specify a format for this
>> metadata, so I can only recommend it, not enforce it.
>>
>> Section 8.6.2 is pretty much the same as 8.2, paraphrasing: if audio is
>> stored of which the specifics cannot be formally described in the FLAC
>> format, please store it informally in some way. This is deliberately
>> "open-ended". I'm unsure how to clarify this.
>>
>> Section 8.7: it says the bits have no meaning in a particular context. I
>> don't think the document should enforce these bits to be zero when they
>> have no meaning: a decoder should ignore these bits, not throw an error
>> when they are not zero.
>>
>> Section 8.7.1: the numbers should start with 1 and increase sequentially
>> because that makes sense to users. However, I think a parser should still
>> accept a cuesheet where this is not the case. This is because I know some
>> musicians have used cuesheet track numbers for artistic purposes in the
>> past, see for example: https://en.wikipedia.org/wiki/Hidden_track Or see
>> for example the album Follow the Leader by KoЯn, which starts on track 13.
>> Should I further clarify this?
>>
>> Section 12: The document says one SHOULD do something, except in certain
>> circumstances. If I change that to MUST, it doesn't work I think? Can a
>> MUST statement have exceptions written like this?
>>
>>
>>>
>>> Thanks for including Section 11.  Is the intent to include it after
>>> publication, or should the RFC Editor be asked to remove it?  Thanks also
>>> for Appendix B, which is useful for contex-setting for implementers.
>>>
>>>
>> The intention is to keep section 11 around. For that reason, a github
>> wiki is referenced, which can be properly updated.
>>
>>
>>>
>>> You might consider loading this into something that can pick off
>>> grammatical errors.  The ones I found are minor and the RFC Editor will
>>> certainly catch them, but it might make for a shorter AUTH48 if they're
>>> caught earlier.  For instance, in Section 9.2.7.2, there's "An odd
>>> folded residual value is gets shifted ...", wherein I believe the "is"
>>> should be dropped.
>>>
>>>
>> I will do that, thanks.
>>
>>
>>>
>>> Section 5 says "Older decoders MAY choose to abort decoding or skip data
>>> encoded using methods they do not recognize".  I thought having the "skip"
>>> option was curious, as this would allow potentially large or semantically
>>> significant gaps in the output of the decoder.  Isn't the "abort" option
>>> preferable?
>>>
>>>
>> Yes, probably. I'll change that.
>>
>> Kind regards, Martijn van Beurden
>>
>