Re: [payload] Adam Roach's Discuss on draft-ietf-payload-rtp-ancillary-10: (with DISCUSS and COMMENT)

"Ali C. Begen" <ali.begen@networked.media> Tue, 10 October 2017 21:41 UTC

Return-Path: <ali.begen@networked.media>
X-Original-To: payload@ietfa.amsl.com
Delivered-To: payload@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CD09D1321A2 for <payload@ietfa.amsl.com>; Tue, 10 Oct 2017 14:41:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=networked-media.20150623.gappssmtp.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 KEwbMNp3mK7l for <payload@ietfa.amsl.com>; Tue, 10 Oct 2017 14:41:22 -0700 (PDT)
Received: from mail-qt0-x230.google.com (mail-qt0-x230.google.com [IPv6:2607:f8b0:400d:c0d::230]) (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 4F8471342FF for <payload@ietf.org>; Tue, 10 Oct 2017 14:41:22 -0700 (PDT)
Received: by mail-qt0-x230.google.com with SMTP id a43so49798161qta.0 for <payload@ietf.org>; Tue, 10 Oct 2017 14:41:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networked-media.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=YrKYBsLkjZEm4qQu9qSoPcfSaItuemU9YRu0O20gcHw=; b=oVL2FTXqRB1G/hyNuzJZ5doXBaRAx7TOa4kk2Iv8V0uVjqf883iU0mPIxE0sdbkhRJ CbTD79xYkiJtbIWL9+B6Q/GfDoFLSv1cykpeWgnt99wG7fMjZOawkKOMRBSlFZj2zWbQ HrdylkToSmmtLz1hkZ+jVddf0vYY6rXsH9hDM+jGYKM36lNdjNfL9xgFMb/PsAzhdcml ib4lRGSy3VcsHD5M7FU7WG3oCpXA+xSMv61HAEz86NLMmoul/ij+HgstRMJfjXFzHo94 lETi+wcmXgKiZ13TX5e0p859nKfyK0ZQnAn49ilD/0qKBPT1i3qxFs4olZp6fPGgLReo erOA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=YrKYBsLkjZEm4qQu9qSoPcfSaItuemU9YRu0O20gcHw=; b=DI84MNZN5rykoOfWBmLy3NjvxU4tdbnBlmYKFi66NhuMnD/aKxeI5MiDsp4ljUPvyr u3ijPatttOgqHG+SpfLk0eqR+fU9+Ly7AYSHGjgN5wYLGVsFMy7EtCq4oEyulxhvCIXz jZjAt03FtnHx8/9grvjtCnJjKuPlZw5nbQEwCazzXbJ/TZv9Dz3DT9awYiDSHC6iryh5 gX6gT6IQq9HYFicFFSN/8y9Y6WrN3eTDYxrxIK2h0QP3mByyyb9EAqsrpLSzwUo2hURm 18GzsoTBhKBJEF08srVv+3H9SuI/z0cDaZuXyliTvPDnyG+hlm0qiThcf0emqB5U1gKV gHsw==
X-Gm-Message-State: AMCzsaUtr5KSsDwKVOXCV/aHMzVRs/6dBijB4sB+8pl3wHXF5aq+vP25 tt8q0CPV2grdHePri2LLS1FwKEFoJLwUgpn9HxASUg==
X-Google-Smtp-Source: AOwi7QDWoh16QQCCESrw/bXqg9nyvGrGgTCwXnM4hv77dslEXrfu9iYeCP8FQfyrKBJAisnykLpIfWrQkacsOiGZG+U=
X-Received: by 10.37.51.68 with SMTP id z65mr3087852ybz.353.1507671681232; Tue, 10 Oct 2017 14:41:21 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.13.194.129 with HTTP; Tue, 10 Oct 2017 14:41:20 -0700 (PDT)
In-Reply-To: <5b0066c9-9f5b-0e71-0428-72a07cde3e3c@nostrum.com>
References: <150285025423.12514.106587665039751833.idtracker@ietfa.amsl.com> <3B259563-1075-4C41-A832-D7633C39173B@foxeg.com> <61440eb5-32c3-3696-be38-8dc7c4eaf72f@nostrum.com> <863974D7-E112-4794-AD4D-C39C99BD40C9@foxeg.com> <b601dc36-8aee-75db-7159-6d4d5b6e684e@nostrum.com> <0C6F1364-DAB5-4AA3-8450-84771EF0ED1E@foxeg.com> <deb11f6f-3e21-df5d-1391-fc20bad88ce4@nostrum.com> <AD92A1F3-5B6F-4D49-BC47-3E662B6673F7@csperkins.org> <6E58094ECC8D8344914996DAD28F1CCD810BB8@DGGEMM506-MBX.china.huawei.com> <37F6B554-530B-4A30-B66F-A70D026DD2B8@csperkins.org> <6E58094ECC8D8344914996DAD28F1CCD810CC5@DGGEMM506-MBX.china.huawei.com> <04D71781-0E87-461C-BDA0-D44F94FED1A0@csperkins.org> <6E58094ECC8D8344914996DAD28F1CCD810D79@DGGEMM506-MBX.china.huawei.com> <7574DE41-96BB-45C1-8279-F9E2460E0452@csperkins.org> <6E58094ECC8D8344914996DAD28F1CCD81103C@DGGEMM506-MBX.china.huawei.com> <7D009531-3DB3-4923-80B2-38BC3F9FB020@foxeg.com> <CAA4MczuXjD=b_Kr-vLfqzOonrmHkT0gNXTFnU_bOqNe=azO1AA@mail.gmail.com> <5b0066c9-9f5b-0e71-0428-72a07cde3e3c@nostrum.com>
From: "Ali C. Begen" <ali.begen@networked.media>
Date: Wed, 11 Oct 2017 00:41:20 +0300
Message-ID: <CAA4McztxjLWgzJeo4Or93To4a_e82sXVB=F+Z7FN9k_6Hny-yg@mail.gmail.com>
To: Adam Roach <adam@nostrum.com>
Cc: Thomas Edwards <Thomas.Edwards@fox.com>, Roni Even <roni.even@huawei.com>, Colin Perkins <csp@csperkins.org>, The IESG <iesg@ietf.org>, "payload-chairs@ietf.org" <payload-chairs@ietf.org>, "payload@ietf.org" <payload@ietf.org>
Content-Type: multipart/alternative; boundary="001a1148aa62ffb3ae055b382aa4"
Archived-At: <https://mailarchive.ietf.org/arch/msg/payload/i9Q2cAPgUM3isSxgg9cJpePorUE>
Subject: Re: [payload] Adam Roach's Discuss on draft-ietf-payload-rtp-ancillary-10: (with DISCUSS and COMMENT)
X-BeenThere: payload@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Audio/Video Transport Payloads working group discussion list <payload.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/payload>, <mailto:payload-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/payload/>
List-Post: <mailto:payload@ietf.org>
List-Help: <mailto:payload-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/payload>, <mailto:payload-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Oct 2017 21:41:28 -0000

On Wed, Oct 11, 2017 at 12:02 AM, Adam Roach <adam@nostrum.com> wrote:

> Here are the salient points that pertain to my discuss:
>
>
>    1. This mechanism is broken and must not be published unless there is
>    an explicit way to correlate ancillary data with its corresponding video
>    stream.
>
>    2. LS is 100% the wrong mechanism to do so.
>
>    3. I believe that what is needed here is in the spirit of what FID is
>    intended to convey, although I take Thomas' point that there is some
>    language in the specific definition of FID that he believes makes it
>    unsuitable for this purpose.
>
>
> Given that we seem to have reached an impasse on the final point in
> particular, I would propose that the most straightforward solution here is
> to define a new group semantic (e.g., "a=group:ANC") that is explicitly
> intended to pair ancillary data with its corresponding video stream. This
> should take at most one short paragraph and an additional IANA registration.
>

Ah, did not see your email before my earlier email. I'd agree but I would
do the new grouping semantics for generic metadata not just for ANC.

-acbegen


>
>
> /a
>
>
>
> On 10/10/17 1:44 AM, Ali C. Begen wrote:
>
> Hi Thomas
>
> Please go ahead and submit a revision. Then reach out to the individual
> DISCUSS holders to clear theirs. And then lets focus on Adam's discuss.
>
> Thanks
> -acbegen (your payload wg co-chair)
>
> On Tue, Oct 10, 2017 at 3:06 AM, Thomas Edwards <Thomas.Edwards@fox.com>
> wrote:
>
>> I will note that I have uploaded a new version,
>> draft-ietf-payload-rtp-ancillary-11, to address most of the comments
>> from the IESG evaluation.
>>
>> draft-ietf-payload-rtp-ancillary-11, Section 4.1 “Grouping ANC Streams
>> with other Media Streams” has two examples.
>>
>> In the first SDP example, two “m=” lines are present (with each having a
>> different “c=” line), one for uncompressed video, and one for ancillary
>> data.  The two RTP sessions are identified with RFC 5888 Media Stream
>> Identification Attributes (mid), and are grouped together using Lip
>> Synchronization (LS), in a fashion similar to the Lip Synchronization of
>> video and audio streams in RFC 5888 Section 7.1 “Example of LS”.
>>
>> In the second SDP example, a single “m=” line is present without any
>> grouping, implying any synchronization would be from SSRC/CNAME linkage
>> and/or RTCP.
>>
>> The most likely implementation of this RTP payload in professional video
>> production would be where multiple endpoints are contributing elementary
>> streams of media: video, audio channels or channel groups, and SMPTE ST
>> 291-1 ancillary data sources.  Those endpoints (microphones, cameras,
>> Closed Caption generators, etc.) are all likely to be different, thus with
>> different SSRCs and CNAMEs, and transmitting to separate multicast IP
>> addresses and UDP ports.  However, they will likely be transmitted with a
>> commonly synchronized clock as per RFC 7273 “RTP Clock Source Signalling”,
>> most likely IEEE 1588 PTP.
>>
>> The individual elementary media streams will be composed together by
>> receivers as required for production.  For example, for an English language
>> service, an English audio channel group of AES67/RFC 3190 RTP audio would
>> be composed together with the RFC 4175 video and the ST 291-1 ancillary
>> data flow of English language Closed Captions ancillary data and SMPTE
>> 2016-1 AFD ancillary data.    Meanwhile the Spanish language service would
>> have the same video and AFD ancillary data, but would have Spanish language
>> audio and Spanish Closed Captions.  Likely it would be a distribution
>> quality encoder (perhaps H.264 encoder) that subscribes to the different
>> streams in order to create the final service.
>>
>> Every time I read about “FID” in RFC 5888, I am struck by the sentence in
>> Section 8 “Flow Identification (FID)” that says “there are situations where
>> a single media instance (e.g., an audio stream or a video stream) is sent
>> using more than one RTP session,” which I believe is not the case here.
>> For example, video is one media instance, and ancillary data is a second
>> media instance.  You can’t “add” video and ancillary data together, like
>> you can add together voice audio and DTMF tone audio (as in RFC 5888
>> Section 8.2).
>>
>> RFC 5888 Section 8.4 “FID Semantics” also states: “It is assumed that the
>> application uses only one codec at a time to encode the media produced.
>> This codec MAY change dynamically during the session, but at any particular
>> moment, only one codec is in use.”  Again, this does not seem relevant to
>> the SDP description of multiple RTP streams of video, audio, and ancillary
>> data intended for synchronized presentation.  All three “codecs” are in use
>> at all times for their particular media stream.  And in particular
>> regarding draft-ietf-payload-rtp-ancillary, there is only one “codec”
>> ever used, the encapsulation of SMPTE ST 291-1 ancillary data packets into
>> RTP.
>>
>> I could really use the help of the IESG to see how we can move forward
>> regarding the open DISCUSS item on draft-ietf-payload-rtp-ancillary.
>>
>> (I will note that SMPTE is eagerly awaiting the publishing of this RFC
>> for use as a normative reference in the upcoming ST 2110-40 standard, see:
>> https://www.smpte.org/st-2110).
>>
>> Thanks!
>>
>> -Thomas Edwards
>>  FOX
>>
>> On 10/4/17, 9:27 AM, "Roni Even" <roni.even@huawei.com> wrote:
>>
>>     Hi Colin,
>>
>>     I agree.
>>
>>     There are two cases. The assumption is that both video and ANC have
>> the same source and have same CNAME (Thomas - is this correct?)
>>
>>
>>
>>     1. Both video and ANC are in the same RTP session (same m-line)  will
>> be synchronized.
>>
>>
>>
>>     The second is the one we are discussing:
>>
>>     2. The video and ANC are in separate RTP sessions (two m-lines). If
>> both are a single flow (single RTP stream) should group using FID. If they
>> are not a single RTP stream (flow) should use LS.
>>
>>
>>
>>     I can agree that it looks like a single flow (FID) but want
>> clarification from the authors (Thomas)
>>
>>
>>
>>
>>
>>
>>
>>     Roni
>>
>>
>>
>>     > -----Original Message-----
>>
>>     > From: Colin Perkins [mailto:csp@csperkins.org]
>>
>>     > Sent: יום ד 04 אוקטובר 2017 01:50
>>
>>     > To: Roni Even
>>
>>     > Cc: Adam Roach; Thomas Edwards; The IESG; payload-chairs@ietf.org;
>> draft-
>>
>>     > ietf-payload-rtp-ancillary@ietf.org; payload@ietf.org;
>> acbegen@gmail.com
>>
>>     > Subject: Re: [payload] Adam Roach's Discuss on
>> draft-ietf-payload-rtp-
>>
>>     > ancillary-10: (with DISCUSS and COMMENT)
>>
>>     >
>>
>>     > Roni,
>>
>>     >
>>
>>     > I said nothing about multicast vs unicast, since I don’t think that
>> distinction is
>>
>>     > important.
>>
>>     >
>>
>>     > Sending the streams on separate m= lines or sending using a single
>> a m= line
>>
>>     > both work. The draft doesn’t need to discuss this, since it’s
>> standard RTP as
>>
>>     > would apply to any RTP session. If you use separate m= lines, then
>> you need
>>
>>     > a grouping mechanism. The choice of grouping mechanism is what we’re
>>
>>     > discussing.
>>
>>     >
>>
>>     > Colin
>>
>>     >
>>
>>     >
>>
>>     >
>>
>>     >
>>
>>     > > On 3 Oct 2017, at 23:19, Roni Even <roni.even@huawei.com> wrote:
>>
>>     > >
>>
>>     > > Colin,
>>
>>     > > We still need some feedback from Thomas, in a previous email
>> response to
>>
>>     > Adam he gave a reason for using multiple RTP sessions:
>>
>>     > >
>>
>>     > > "The challenge is that the use case of the Ancillary I-D within
>> the SMPTE ST
>>
>>     > 2110 architecture would generally require separate network
>> destination
>>
>>     > addresses for the different elements (video, audio, ancillary data)
>> so they
>>
>>     > can be flexibly composed within broadcast plants at the network
>> level.  Your
>>
>>     > alternative SDP example appears to place both the video and the
>> ancillary
>>
>>     > data onto the same destination address (
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__233.
>> 252.0.1&d=DwIGaQ&c=uw6TLu4hwhHdiGJOgwcWD4AjKQx6zvFcGEsbfiY9-
>> EI&r=lekNOOM5noV61zrPH3rwPyhtNnLLWoLEHgd0quQxly8&m=
>> dOxHA7dn5d2eo_tU3divd4ks6mmXPhk5WmodLULHUPY&s=
>> srzDHDG2LTcTBJexIDta4-p9142SYkQ2gDH3S8PMdZg&e=).  Is there an
>>
>>     > appropriate SDP mechanism to communicate the intimate relationship
>>
>>     > between the RTP streams, but also have them transmitted on separate
>>
>>     > destination IP addresses (and synchronized)?
>>
>>     > >
>>
>>     > > (In production practice, this may not be a significant issue as
>> the RTP
>>
>>     > streams to be combined by IP receivers for conversion to SDI/HDMI
>> or for
>>
>>     > input to a distribution encoder may be specified by a control
>> system directly
>>
>>     > to the receiver using an API that isn’t just an SDP file.)"
>>
>>     > >
>>
>>     > > I want to assume that by different destination addresses it
>> refers to
>>
>>     > multicast addresses like above and not to different unicast IP
>> addresses.
>>
>>     > > You are right that for unicast it will make sense to use the same
>> RTP session
>>
>>     > with the same SSRC.
>>
>>     > >
>>
>>     > > Roni
>>
>>     > >
>>
>>     > >> -----Original Message-----
>>
>>     > >> From: Colin Perkins [mailto:csp@csperkins.org]
>>
>>     > >> Sent: יום ד 04 אוקטובר 2017 00:46
>>
>>     > >> To: Roni Even
>>
>>     > >> Cc: Adam Roach; Thomas Edwards; The IESG;
>> payload-chairs@ietf.org;
>>
>>     > >> draft- ietf-payload-rtp-ancillary@ietf.org; payload@ietf.org;
>>
>>     > >> acbegen@gmail.com
>>
>>     > >> Subject: Re: [payload] Adam Roach's Discuss on
>>
>>     > >> draft-ietf-payload-rtp-
>>
>>     > >> ancillary-10: (with DISCUSS and COMMENT)
>>
>>     > >>
>>
>>     > >>
>>
>>     > >>> On 3 Oct 2017, at 21:40, Roni Even <roni.even@huawei.com>
>> wrote:
>>
>>     > >>>
>>
>>     > >>> Hi Colin,
>>
>>     > >>> I re-read RFC5888 and tried to understand what is the difference
>>
>>     > >>> between FID and LS I was trying to understand what is a flow and
>>
>>     > >>> from section 8.3
>>
>>     > >>>
>>
>>     > >>> "The previous examples show that the definition of a media
>> stream in
>>
>>     > >>> [RFC2326] does not cover some scenarios.  It cannot be assumed
>> that
>>
>>     > >>> a  single media instance maps into a single RTP session.
>> Therefore,
>>
>>     > >>> we  introduce the definition of a media flow:
>>
>>     > >>>
>>
>>     > >>>     A media flow consists of a single media instance, e.g., an
>> audio
>>
>>     > >>>     stream or a video stream as well as a single whiteboard or
>> shared
>>
>>     > >>>     application group.  When using RTP, a media flow comprises
>> one or
>>
>>     > >>>     more RTP sessions."
>>
>>     > >>>
>>
>>     > >>> It looks to me that a media flow is a SINGLE media stream that
>> spans
>>
>>     > >>> over
>>
>>     > >> multiple RTP sessions (the term media instance is a what we call
>> a
>>
>>     > >> media stream in the taxonomy). Section 8.5 (8.5.1) enhance this
>> by
>>
>>     > >> saying when FID cannot be used " FID semantics are useful when
>> the
>>
>>     > application only uses
>>
>>     > >> one codec at   a time"  which again describe a flow as a single
>> media
>>
>>     > stream.
>>
>>     > >>>
>>
>>     > >>> I am not sure how ANC and the video relates to each other this
>> is
>>
>>     > >>> what I am
>>
>>     > >> asking Thomas to be more clear. If the video and ANC are one
>> stream
>>
>>     > >> over multiple RTP sessions FID is correct otherwise I think the
>> LS should be
>>
>>     > used.
>>
>>     > >>
>>
>>     > >> My understanding is that the video and ancillary data are the
>> same
>>
>>     > >> stream. In broadcast TV the ancillary data is sent in-band, in
>> the blanking
>>
>>     > intervals.
>>
>>     > >>
>>
>>     > >>> My reading on  the ancillary draft is that ANC and the video are
>>
>>     > >>> what we call
>>
>>     > >> a single RTP stream but this is not what Thomas says.
>>
>>     > >>
>>
>>     > >>
>>
>>     > >> I expect one could send the ancillary data using the same SSRC,
>> and
>>
>>     > >> the same 5-tuple, as the media data (in the same way comfort
>> noise
>>
>>     > >> and speech data can be sent), in which case you don’t need the
>>
>>     > >> grouping. If they’re sent as separate RTP streams, with separate
>> m=
>>
>>     > >> lines, then you need grouping. I believe FID makes sense for
>> this.
>>
>>     > >>
>>
>>     > >> --
>>
>>     > >> Colin Perkins
>>
>>     > >> https://urldefense.proofpoint.com/v2/url?u=https-3A__csperki
>> ns.org_&d=DwIGaQ&c=uw6TLu4hwhHdiGJOgwcWD4AjKQx6zvFcGEsbfiY9-
>> EI&r=lekNOOM5noV61zrPH3rwPyhtNnLLWoLEHgd0quQxly8&m=
>> dOxHA7dn5d2eo_tU3divd4ks6mmXPhk5WmodLULHUPY&s=s2We2es-My1JRf
>> cPlYZEmqGCYYi9rf9Wc7dYRzxspsY&e=
>>
>>     > >>
>>
>>     > >>
>>
>>     > >>
>>
>>     > >
>>
>>     >
>>
>>     >
>>
>>     >
>>
>>     > --
>>
>>     > Colin Perkins
>>
>>     > https://urldefense.proofpoint.com/v2/url?u=https-3A__csperki
>> ns.org_&d=DwIGaQ&c=uw6TLu4hwhHdiGJOgwcWD4AjKQx6zvFcGEsbfiY9-
>> EI&r=lekNOOM5noV61zrPH3rwPyhtNnLLWoLEHgd0quQxly8&m=
>> dOxHA7dn5d2eo_tU3divd4ks6mmXPhk5WmodLULHUPY&s=s2We2es-My1JRf
>> cPlYZEmqGCYYi9rf9Wc7dYRzxspsY&e=
>>
>>     >
>>
>>     >
>>
>>     >
>>
>>
>>
>>
>>
>>
>
>