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

Thomas Edwards <Thomas.Edwards@fox.com> Tue, 10 October 2017 00:07 UTC

Return-Path: <Thomas.Edwards@fox.com>
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 E5A73132143; Mon, 9 Oct 2017 17:07:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.621
X-Spam-Level:
X-Spam-Status: No, score=-2.621 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=foxgroupinc.onmicrosoft.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 Yx3LnDv0MFyb; Mon, 9 Oct 2017 17:06:58 -0700 (PDT)
Received: from mx0a-00195501.pphosted.com (mx0a-00195501.pphosted.com [67.231.149.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0CFD1120720; Mon, 9 Oct 2017 17:06:57 -0700 (PDT)
Received: from pps.filterd (m0082295.ppops.net [127.0.0.1]) by mx0a-00195501.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id v9A06ToP019750; Mon, 9 Oct 2017 17:06:43 -0700
Received: from nam01-bn3-obe.outbound.protection.outlook.com (mail-bn3nam01lp0182.outbound.protection.outlook.com [216.32.180.182]) by mx0a-00195501.pphosted.com with ESMTP id 2dgkcgr01r-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 09 Oct 2017 17:06:42 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=FoxGroupInc.onmicrosoft.com; s=selector1-fox-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=L0TeoDFfDMSTtdHGA2czZK8GOYGMZ6/gy3vQTlUAAHE=; b=Z55vwV6QYnOKbhyWXxSz2mAmqWXVajkAl8hRCXQo+EgM4T7KBmkNJD9BRN0aOrjeLBaAepfHqaVavDpWF/jC71CuZwGieAbRijJAMc8hsVdn9IVH0mQZsNCN6ZGIWOWBeeNXFi+KZ/h+XIVk+/74VS+zLvC/rjaAHf6aIju6qnc=
Received: from BN3PR05MB2657.namprd05.prod.outlook.com (10.166.72.21) by BN3PR05MB2658.namprd05.prod.outlook.com (10.166.72.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.5; Tue, 10 Oct 2017 00:06:39 +0000
Received: from BN3PR05MB2657.namprd05.prod.outlook.com ([10.166.72.21]) by BN3PR05MB2657.namprd05.prod.outlook.com ([10.166.72.21]) with mapi id 15.20.0077.020; Tue, 10 Oct 2017 00:06:39 +0000
From: Thomas Edwards <Thomas.Edwards@fox.com>
To: Roni Even <roni.even@huawei.com>, Colin Perkins <csp@csperkins.org>
CC: Adam Roach <adam@nostrum.com>, The IESG <iesg@ietf.org>, "payload-chairs@ietf.org" <payload-chairs@ietf.org>, "draft-ietf-payload-rtp-ancillary@ietf.org" <draft-ietf-payload-rtp-ancillary@ietf.org>, "payload@ietf.org" <payload@ietf.org>, "acbegen@gmail.com" <acbegen@gmail.com>
Thread-Topic: [payload] Adam Roach's Discuss on draft-ietf-payload-rtp-ancillary-10: (with DISCUSS and COMMENT)
Thread-Index: AQHTFjbD5uxO79354kmKPbq9ZGEoqKK9h+8AgAIma4CAAROegIAAhb4AgAZyKgCABOWIAIAGBRyAgAAQJQCAABALgIAAHp+AgAASIwCAAAlbgIAACLOAgAEnQQCAB+a9AA==
Date: Tue, 10 Oct 2017 00:06:39 +0000
Message-ID: <7D009531-3DB3-4923-80B2-38BC3F9FB020@foxeg.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>
In-Reply-To: <6E58094ECC8D8344914996DAD28F1CCD81103C@DGGEMM506-MBX.china.huawei.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.25.0.170815
x-originating-ip: [216.205.246.234]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR05MB2658; 20:4VGCDnXqmkrhrLfl28VDJf8DMUmXuA0kHclV1Y8Fe3HU7V8GAPGzzuDrQ87XT9uki3b8mAeI2imEpBtbt4tobHLSEwWxsy5kfN9W5wZ5FxrNHZP7dltV4CnrijtbfXnL/ZCFOW3A1zh9w4PTuWisJrNMmUOQa0pMLXhEotkhqYZ4JfBmCR67uDDS4B9lfe6tysYAHgTmkmBj17WSf7jsQrvPLvSowkqOnpucCUweAzeAyE8wLtes/xZwJl58ihMW
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 4e479f02-e754-413a-b827-08d50f72c7f0
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(48565401081)(2017052603199)(201703131423075)(201703031133081)(201702281549075); SRVR:BN3PR05MB2658;
x-ms-traffictypediagnostic: BN3PR05MB2658:
x-exchange-antispam-report-test: UriScan:(10436049006162)(131327999870524)(50582790962513);
x-microsoft-antispam-prvs: <BN3PR05MB26584F5A8F17B0EA4D07D6A694750@BN3PR05MB2658.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(3002001)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123560025)(20161123564025)(20161123562025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR05MB2658; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR05MB2658;
x-forefront-prvs: 04569283F9
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(39860400002)(376002)(346002)(13464003)(377454003)(189002)(199003)(24454002)(68736007)(2900100001)(106356001)(101416001)(105586002)(81166006)(81156014)(8676002)(83716003)(83506001)(189998001)(54356999)(7736002)(305945005)(82746002)(50986999)(76176999)(8936002)(6116002)(3846002)(102836003)(97736004)(86362001)(575784001)(25786009)(53936002)(9686003)(6512007)(6306002)(39060400002)(6246003)(93886005)(3280700002)(2906002)(4326008)(3660700001)(6506006)(2950100002)(72206003)(6436002)(229853002)(6486002)(58126008)(33656002)(77096006)(966005)(14454004)(53546010)(54906003)(110136005)(316002)(478600001)(36756003)(99286003)(230783001)(66066001)(5660300001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR05MB2658; H:BN3PR05MB2657.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en;
received-spf: None (protection.outlook.com: fox.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <AF2D74C00908B04F95345279C2A7C736@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: fox.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Oct 2017 00:06:39.6048 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: de99ade3-81db-4070-ae0d-3c1562041b30
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR05MB2658
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2017-10-09_07:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000 definitions=main-1710100000
Archived-At: <https://mailarchive.ietf.org/arch/msg/payload/qQBMLkcvRzQ_fr8tO1q9fjg5J9U>
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 00:07:01 -0000

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__csperkins.org_&d=DwIGaQ&c=uw6TLu4hwhHdiGJOgwcWD4AjKQx6zvFcGEsbfiY9-EI&r=lekNOOM5noV61zrPH3rwPyhtNnLLWoLEHgd0quQxly8&m=dOxHA7dn5d2eo_tU3divd4ks6mmXPhk5WmodLULHUPY&s=s2We2es-My1JRfcPlYZEmqGCYYi9rf9Wc7dYRzxspsY&e=
    
    > >>
    
    > >>
    
    > >>
    
    > >
    
    > 
    
    > 
    
    > 
    
    > --
    
    > Colin Perkins
    
    > https://urldefense.proofpoint.com/v2/url?u=https-3A__csperkins.org_&d=DwIGaQ&c=uw6TLu4hwhHdiGJOgwcWD4AjKQx6zvFcGEsbfiY9-EI&r=lekNOOM5noV61zrPH3rwPyhtNnLLWoLEHgd0quQxly8&m=dOxHA7dn5d2eo_tU3divd4ks6mmXPhk5WmodLULHUPY&s=s2We2es-My1JRfcPlYZEmqGCYYi9rf9Wc7dYRzxspsY&e=
    
    > 
    
    > 
    
    >