Re: [MMUSIC] RSDP directorate review of draft-ietf-avtcore-rtp-vvc-14

Bernard Aboba <bernard.aboba@gmail.com> Sat, 02 April 2022 02:00 UTC

Return-Path: <bernard.aboba@gmail.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D684C3A0854; Fri, 1 Apr 2022 19:00:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.107
X-Spam-Level:
X-Spam-Status: No, score=-7.107 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_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=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 ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DK9WrWXRItl1; Fri, 1 Apr 2022 19:00:32 -0700 (PDT)
Received: from mail-vs1-xe31.google.com (mail-vs1-xe31.google.com [IPv6:2607:f8b0:4864:20::e31]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 371A63A0819; Fri, 1 Apr 2022 19:00:32 -0700 (PDT)
Received: by mail-vs1-xe31.google.com with SMTP id a127so4302142vsa.3; Fri, 01 Apr 2022 19:00:32 -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 :cc; bh=nEJFqAAyAJJVJkvq/n18A3uqs/MzdiYjUeileKDFesk=; b=QYPPi7oBD4BarqQQqrUqlihNhU7aAUNx6IozDemO6owIr5WeVJXtCkkgtVgvA9IxZh qgmTo3F5jX8f3ia47Jtk2hnZg3E7JjmU7c1dfCN2Sw4QECT3xv6KJ6untlrGb8W/sPKd AzaVkoaGJG/Op///2VrFZsMZrepMbvJHEkfxHuhgLh7JNDaREF6LvKkF5wT8iErl7LJz vo96pK9Y3ENWdfoHkCrAUyjV2zKlXnxxJBJkGm6eKaRqnYKg5PhZzcsV4K6ZzpN3WrK0 UwNdSWT3W3McNpdSqz/JLh7a4QUJ9LT+yZOpT1QvV6Z/l6+7Ti2HKp2fye5TVRYPjx8Y A5jg==
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:cc; bh=nEJFqAAyAJJVJkvq/n18A3uqs/MzdiYjUeileKDFesk=; b=XTE87NPEDraAuba6ATH3vnV1HI6NRvdCvIBbjO8RGZ9lXzLkjC3tVnLvgx98RMvWWJ 8nmAQQa6s+EmYskFwv+WOpVnqKp+wAwXx2SSdFy5VVKsv3zpwx7j2pzJjIhNFaYK76hw tkClGIG4tf0pi5hgedzUYUubmom+oMqJj+230dn3l0mFExuR4cT3GIeO9u+Cdq9Qcr5W WZHL+EKYAE980rIwv1Qbg2DJTK290TEzjH4BYT+TghT1sZ53dNxlE/G85HB1GswsPusB h5Ma5QLTPOtCXP/fOp60bCXXYNYZCi4sMBBMqQV2w1EGtivHKb6jY9Pop5GTAR9C9aZY SgEw==
X-Gm-Message-State: AOAM5304OxjryDl9S1uYhPGya6e5lnnZYsDzL73Fw2qbq28aeNC5rM9g HK+TbPKqJ6IzSuxtSlybOxXG8pzlUF63kUgw+CU=
X-Google-Smtp-Source: ABdhPJzoBqTXk49J5V/GeCRAIbhG3XMkmm0QHujZpUKvEawWSYmoflvKHBgmwMYkB89vi/KFK0+b0nzF9BBpJKSYDps=
X-Received: by 2002:a67:c787:0:b0:31e:874e:b9a3 with SMTP id t7-20020a67c787000000b0031e874eb9a3mr4230150vsk.54.1648864830663; Fri, 01 Apr 2022 19:00:30 -0700 (PDT)
MIME-Version: 1.0
References: <HE1PR07MB44418A938EBFB8B68EDA0B3B931F9@HE1PR07MB4441.eurprd07.prod.outlook.com> <951E8349-746B-4E64-A43D-197928E25251@stewe.org>
In-Reply-To: <951E8349-746B-4E64-A43D-197928E25251@stewe.org>
From: Bernard Aboba <bernard.aboba@gmail.com>
Date: Fri, 01 Apr 2022 19:00:20 -0700
Message-ID: <CAOW+2duWE0n35X_hiQmy=f-MxPR-knnq4b=6xkwAYVn4b-RQ0g@mail.gmail.com>
To: Stephan Wenger <stewe@stewe.org>
Cc: Christer Holmberg <christer.holmberg=40ericsson.com@dmarc.ietf.org>, IETF AVTCore WG <avt@ietf.org>, Miska Hannuksela <miska.hannuksela@nokia.com>, "avtcore-chairs@ietf.org" <avtcore-chairs@ietf.org>, mmusic <mmusic@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000083b00405dba242f0"
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/QM4RqXK45vI4ngPFKHmvjfW6xX0>
Subject: Re: [MMUSIC] RSDP directorate review of draft-ietf-avtcore-rtp-vvc-14
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 02 Apr 2022 02:00:37 -0000

Stefan said:

"This has come up before in the AVTCORE WG.  There are upsides and
downsides to examples.  One key downside is that no few implementers have
taken the presence of examples as an excuse of not reading/understanding
the spec, leading to botched implementations.  I’m not an implementer
myself—never really was—but that’s a story I have heard often.  Therefore,
we authors consciously minimized the number of examples in this spec.  As
said, we discussed that in AVTCORE, last during IETF112.

- Bernard Aboba: Is an additional profile document needed to enable
interoperability? Without this, we are seeing problems with HEVC interop.

- Mo Zanaty: examples for all complex cases are not needed, but some basic
ones might help.

My recollection is that I went out of the virtual room with a clear mandate
not to include more and more complex examples.  I don’t have time right now
to verify that from the audio record.


[BA] The specific situation that I was referring to in the notes is the
situation with WebRTC support for HEVC. It is currently supported in Safari
behind a flag, but interop has been tricky, both at the SDP and RTP
levels.  RFC 7742 covers H.264 but not HEVC, and the lack of SDP examples
in RFC 7798 has added to the vacuum.   One might cover HEVC and VVC in a
followon to RFC 7798 and do the profiling and examples there.  But having
some basic examples to draw upon would provide a foundation for that.

On Thu, Mar 31, 2022 at 3:24 PM Stephan Wenger <stewe@stewe.org> wrote:

> Hi Christer,
>
>
>
> Thanks very much for this detailed and timely review.  Initial reactions
> inline.
>
> Miska: please take a look at Q5 below and my answer.
>
> AVTCore: please take a look at Q7 below, and my answer.  Is there
> interest, and are there volunteers?
>
>
>
> Stephan
>
>
>
> *From: *mmusic <mmusic-bounces@ietf.org> on behalf of Christer Holmberg
> <christer.holmberg=40ericsson.com@dmarc.ietf.org>
> *Date: *Wednesday, March 30, 2022 at 11:39
> *To: *IETF AVTCore WG <avt@ietf.org>
> *Cc: *"avtcore-chairs@ietf.org" <avtcore-chairs@ietf.org>, mmusic <
> mmusic@ietf.org>
> *Subject: *[MMUSIC] RSDP directorate review of
> draft-ietf-avtcore-rtp-vvc-14
>
>
>
> Hi,
>
>
>
> I have performed the SDP directorate review of
> draft-ietf-avtcore-rtp-vvc-14.
>
>
>
> GEN:
>
>
>
> In general, it is quite difficult to read and parse the SDP sections.
> Also, for the offer/answer procedures, we often have dedicated sub-sections
> for creating the offer, creating the answer, etc.
>
>
>
> However, I will focus on things which I think are unclear.
>
>
>
> ---
>
>
>
> Q1:
>
>
>
> Section 7.2.1 says:
>
>
>
>    *  The OPTIONAL parameters profile-id, tier-flag, sub-profile-id,
>
>       interop-constraints, level-id, sprop-sublayer-id, sprop-ols-id,
>
>       recv-sublayer-id, recv-ols-id, max-recv-level-id, max-lsr, max-
>
>       fps, sprop-max-don-diff, sprop-depack-buf-bytes and depack-buf-
>
>       cap, when present, MUST be included in the "a=fmtp" line of SDP.
>
>       This parameter is expressed as a media type string, in the form of
>
>       a semicolon-separated list of parameter=value pairs.
>
>
>
> What does “this parameter” refer to? Do you mean “these parameters”?
>
>
>
> ---
>
>
>
> I believe “this parameter” refers to the a=fmtp line.  Does that make
> sense?  If yes, we can rephrase by replacing “This parameter” with “The
> fmtp line”
>
>
>
> Q2:
>
>
>
> Section 7.2.1 says:
>
>
>
>    *  The OPTIONAL parameter sprop-vps, sprop-sps, sprop-pps, sprop-sei,
>
>       and sprop-dci, when present, MUST be included in the "a=fmtp" line
>
>       of SDP or conveyed using the "fmtp" source attribute as specified
>
>       in Section 6.3 of [RFC5576] <https://datatracker.ietf.org/doc/html/rfc5576#section-6.3>.
>
>
>
> Why are you using the “fmtp” source attribute?
>
>
>
> ---
>
>
>
> This was inherited from the comparable section of the H.265 payload format, RFC7798 (which most of the SDP stuff was copied from and adapted).  RFC7798 includes this informative note:
>
>          Informative note: Conveyance of sprop-vps, sprop-sps, and
>
>          sprop-pps using the "fmtp" source attribute allows for out-of-
>
>          band transport of parameter sets in topologies like Topo-Video-
>
>          switch-MCU as specified in [RFC7667].
>
> We deleted the informative note for brevity’s sake but can reinsert it if
> you see a value (and if the note makes sense to you).
>
>
>
>
>
> Q3:
>
>
>
> Section 7.2.1 says:
>
>
>
>       When included in
>
>       the "a=fmtp" line of SDP, those parameters are expressed as a
>
>       media type string, in the form of a semicolon-separated list of
>
>       parameter=value pairs.  When conveyed in the "a=fmtp" line of SDP
>
>       for a particular payload type, the parameters sprop-vps, sprop-
>
>       sps, sprop-pps, sprop-sei, and sprop-dci MUST be applied to each
>
>       SSRC with the payload type.
>
>
>
> First, what is a “media type string”?
>
>
>
> It’s not a term of art that I’m aware of.  Absent that, I think its
> definition is in the same sentence.  If “media type string” is confusing
> (and I think it may well be, considering that it sounds like a term of art
> without being one), we could simply remove “a media type string, in the
> form of”.  The result would read
>
>       When included in
>
>       the "a=fmtp" line of SDP, those parameters are expressed as
>
>       a semicolon-separated list of
>
>       parameter=value pairs.  When conveyed in the "a=fmtp" line of SDP
>
>       for a particular payload type, the parameters sprop-vps, sprop-
>
>       sps, sprop-pps, sprop-sei, and sprop-dci MUST be applied to each
>
>       SSRC with the payload type.
>
>
>
>
>
> Second, the “fmtp” attribute is ALWAYS associated with a particular
> payload type, isn’t it?
>
>
>
> I believe so, yes.
>
>
>
> ---
>
>
>
> Q4:
>
>
>
> It would be very useful to have some SDP offer/answer examples.
>
>
>
> This has come up before in the AVTCORE WG.  There are upsides and
> downsides to examples.  One key downside is that no few implementers have
> taken the presence of example as an excuse of not reading/understanding the
> spec, leading to botched implementations.  I’m not an implementer
> myself—never really was—but that’s a story I have heard often.  Therefore,
> we authors consciously minimized the number of examples in this spec.  As
> said, we discussed that in AVTCORE, last during IETF112.  Here are the
> relevant notes:
>
>   5. RTP Payloads for VVC/EVC (Stefan Wenger, 15 min)
>
> https://datatracker.ietf.org/doc/html/draft-ietf-avtcore-rtp-vvc
>
> https://datatracker.ietf.org/doc/html/draft-ietf-avtcore-rtp-evc
>
> - Stephan Wenger asked whether more complete examples of SDP Offer/Asnwer
> are needed, and recommends no. Simple cases already have examples.
>
> - Bernard Aboba: Is an additional profile document needed to enable
> interoperability? Without this, we are seeing problems with HEVC interop.
>
> - Mo Zanaty: examples for all complex cases are not needed, but some basic
> ones might help.
>
> My recollection is that I went out of the virtual room with a clear
> mandate not to include more and more complex examples.  I don’t have time
> right now to verify that from the audio record.
>
>
>
> In the light of this discussion, would you suggest to add more examples?
>
>
>
> ---
>
>
>
> Q5:
>
>
>
> Section 7.2.2.3 says:
>
>
>
>       When dealing with VVC, the offerer assumes that the answerer will
>
>       be able to receive media encoded using the configuration being
>
>       offered.
>
>
>
> And what if the answerer is not able to?
>
>
>
> ---
>
>
>
>
>
> Once more, this is adapted from the H.265 payload format, RFC 7798, page
> 65 towards the bottom.  I have only a weak recollection of the reasoning.
> The context of this sentence is the negotiation of sprop-max-don-diff and
> sprop-depack-buf-bytes.  For both of these parameters, there are reasonably
> low maximums that would prevent the use of the maximum range to become a
> serious implementation burden for a receiver.  Insofar, we require that the
> receiver is able to handle anything the sender could throw at him, within
> those hard limits of course.  Instead, these parameters are now packet
> stream properties that can be used to optimize/minimize playout delay in
> the receiver (by knowing the maximum interleaving and the maximum
> depacketization buffer that the sender is ever using).
>
>
>
> Co-authors, especially *Miska*: I think you were deeper into this than
> me.  Is above about right?
>
>
>
> Q6:
>
>
>
> Is there a reason why Section 7.2.2.3 is not placed before Sections
> 7.2.2.1 and 7.2.2.2, as it applies to both?
>
>
>
> ---
>
>
>
> Again, a copy-paste leftover and ancient RFC 7798 history.  No particular
> reason that I recall.
>
>
>
> Q7:
>
>
>
> The text says nothing (as far as I can tell) sending subsequent offers and
> answers within a session, and whether there are restrictions etc regarding
> which parameters can be modified etc.
>
>
>
> Uh.  That’s a hard one.  Once more, our starting point RFC 7798 didn’t say
> anything either AFAICT, and no one complained about it.  Old payload
> formats for ITU codecs had somewhat similar SDP sections, and I also do not
> recall anyone complaining about the absence of that aspect.  Perhaps that
> is because most folks who use complex H.26x bitstreams negotiate them using
> something other than SDP.  Whatever.
>
>
>
> I’m not against adding language, but, as it should be obvious by now, I’m
> far from an SDP expert or enthusiast, and AFAIK so are my co-authors.  If
> such modifications of existing sessions were desirable to anyone using SDP,
> we would need to find the right people to work towards it.  So, folks in
> AVTCore, is that something we should address, and who is willing to help?
>
>
>
> ---
>
>
>
> Thanks again, Christer,
>
>
>
> Stephan
>
>
>
> Regards,
>
>
>
> Christer
>
>
>