From 718488cab6f0e57fa0ba55a073e9beeee51f7663 Mon Sep 17 00:00:00 2001 From: Geir Ertzaas Date: Wed, 13 Nov 2024 16:06:04 +0100 Subject: [PATCH 1/5] Update NMOS With MPEG TS.md --- docs/NMOS With MPEG TS.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/NMOS With MPEG TS.md b/docs/NMOS With MPEG TS.md index 55c08b3..2865e3e 100644 --- a/docs/NMOS With MPEG TS.md +++ b/docs/NMOS With MPEG TS.md @@ -45,11 +45,6 @@ The Source is therefore unaffected by the use of MPEG TS or the encapsulated con ### Flows The Flow resource **MUST** indicate `video/MP2T` in the `media_type` attribute, and `urn:x-nmos:format:mux` for the `format`. -For Nodes implementing IS-04 v1.3 or higher, the following additional attributes defined in the [Flow Attributes register][Flow-Attributes] of the NMOS Parameter Registers are used for MPEG TS: - -- [Bit Rate][Flow-Bit-Rate] - This attribute **MUST** be present in the flow resource definition. - An example Flow resource is provided in the [Examples](../examples/). ### Senders @@ -57,6 +52,11 @@ For Nodes transmitting MPEG TS over RTP transport as defined by ST 2022-2, the S The SDP file published at the `manifest_href` end-point **MUST** comply with the IS-05 usage guidelines for the specific transport and [RFC 4566][RFC-4566] +For Nodes implementing IS-04 v1.3 or higher, the following additional attributes defined in the [sender attributes register][Sender-Attributes] of the NMOS Parameter Registers are used for MPEG TS: + +- [Bit Rate][Sender-Bit-Rate] + This attribute **MUST** be present as defined in equipment where the bit rate is known, and **MAY** be signaled in the sender SDP as "b=AS:bit-rate", where bit-rate is in integer units of kilobits/second. + An example Sender resource is provided in the [Examples](../examples/). ## MPEG TS IS-04 Receivers @@ -73,8 +73,8 @@ It is not always practical for the constraints to indicate every type of stream The `constraint_sets` parameter within the `caps` object can be used to describe combinations of parameters which the Receiver can support, using the parameter constraints defined in the [Capabilities register][Capabilities-Register] of the NMOS Parameter Registers. -The following parameter constraints can be used to express limitations on MPEG TS streams: -- [Transport Bit Rate][Cap-Bit-Rate] +The following parameter constraints **MAY** be used to express limitations on MPEG TS streams: +- [Transport Bit Rate][Transport-Bit-Rate] An example Receiver resource is provided in the [Examples](../examples/). @@ -105,8 +105,8 @@ Controllers **MUST** be capable of handling RTP transports as per the NMOS speci [RFC-4566]: https://datatracker.ietf.org/doc/html/rfc4566 "SDP: Session Description Protocol" [NMOS-Glossary]: https://specs.amwa.tv/nmos/main/docs/Glossary.html "NMOS Glossary" [Capabilities-Register]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/ "Capabilities Register" -[Flow-Attributes]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/flow-attributes/ "Flow Attributes Register" -[Flow-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/flow-attributes/#bit-rate "Flow Bit Rate" -[Cap-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/#transport-bit-rate "Transport Bit Rate" +[Sender-Attributes]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes "Sender Attributes Register" +[Sender-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes/#bit-rate "Sender Bit Rate" +[Cap-Transport-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/#transport-bit-rate "Transport Bit Rate" From 1df005cbc0f014cdfde41ae7fe6d4049971aebe7 Mon Sep 17 00:00:00 2001 From: Geir Ertzaas Date: Wed, 27 Nov 2024 14:28:04 +0100 Subject: [PATCH 2/5] Update NMOS With MPEG TS.md --- docs/NMOS With MPEG TS.md | 44 ++++++++++----------------------------- 1 file changed, 11 insertions(+), 33 deletions(-) diff --git a/docs/NMOS With MPEG TS.md b/docs/NMOS With MPEG TS.md index 2865e3e..c265c44 100644 --- a/docs/NMOS With MPEG TS.md +++ b/docs/NMOS With MPEG TS.md @@ -9,12 +9,6 @@ _(c) AMWA 2024, CC Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)_ [MPEG Transport Stream][MPEG-TS] is a standard digital container format specified in ISO/IEC 13818-1, widely used for transmission and storage of audio, video, and data. -SMPTE [ST 2022-2][ST-2022-2] defines the Unidirectional Transport of Constant Bit Rate MPEG-2 Transport Streams using RTP on IP Networks. - -The [Video Services Forum][VSF] developed Technical Recommendations [TR-01][TR-01] and [TR-07][TR-07], which cover the encapsulation of JPEG 2000 and JPEG XS video respectively within MPEG TS over IP networks, compliant with ST 2022-2. - -AMWA IS-04 and IS-05 have support for RTP transport and can signal the media type `video/MP2T` as defined in [RFC 3555][RFC-3555]. - This BCP allows for the use of all transport types defined by IS-05 that can carry media type `video/MP2T`. ## Use of Normative Language @@ -28,7 +22,7 @@ The NMOS terms 'Controller', 'Node', 'Source', 'Flow', 'Sender', 'Receiver' are ## MPEG TS IS-04 Sources, Flows, and Senders -Nodes capable of transmitting MPEG TS streams, including those carrying JPEG 2000 or JPEG XS content as per VSF TR-01 and TR-07, **MUST** have Source, Flow, and Sender resources in the IS-04 Node API. +Nodes capable of transmitting MPEG TS streams **MUST** have Source, Flow, and Sender resources in the IS-04 Node API. Nodes **MUST** support IS-04 v1.3 to implement all aspects of this specification. @@ -48,24 +42,18 @@ The Flow resource **MUST** indicate `video/MP2T` in the `media_type` attribute, An example Flow resource is provided in the [Examples](../examples/). ### Senders -For Nodes transmitting MPEG TS over RTP transport as defined by ST 2022-2, the Sender `transport` attribute **MUST** be `urn:x-nmos:transport:rtp` or one of its sub-classifications. - -The SDP file published at the `manifest_href` end-point **MUST** comply with the IS-05 usage guidelines for the specific transport and [RFC 4566][RFC-4566] - For Nodes implementing IS-04 v1.3 or higher, the following additional attributes defined in the [sender attributes register][Sender-Attributes] of the NMOS Parameter Registers are used for MPEG TS: -- [Bit Rate][Sender-Bit-Rate] - This attribute **MUST** be present as defined in equipment where the bit rate is known, and **MAY** be signaled in the sender SDP as "b=AS:bit-rate", where bit-rate is in integer units of kilobits/second. +- [Bit Rate][Sender-Transport-Bit-Rate] + This attribute **MUST** be present as defined in equipment where the bit rate is known. -An example Sender resource is provided in the [Examples](../examples/). +An example Sender JSON is provided in the [Examples](../examples/). ## MPEG TS IS-04 Receivers -Nodes capable of receiving MPEG TS streams, including those carrying JPEG 2000 or JPEG XS content as per VSF TR-01 and TR-07, **MUST** have a Receiver resource in the IS-04 Node API, which lists `video/MP2T` in the `media_types` array within the `caps` object. +Nodes capable of receiving MPEG TS streams **MUST** have a Receiver resource in the IS-04 Node API, which lists `video/MP2T` in the `media_types` array within the `caps` object. -If the Receiver supports RTP transport, it **MUST** have the `transport` attribute set to `urn:x-nmos:transport:rtp` or one of its sub-classifications.. - -If the Receiver has limitations on or preferences regarding the MPEG TS streams that it supports, the Receiver resource **MUST** indicate constraints in accordance with the [BCP-004-01][] Receiver Capabilities specification. +If the Receiver has limitations on or preferences regarding the MPEG TS streams that it supports, the Receiver resource **MUST** indicate constraints in accordance with the [BCP 004-01][BCP-004-01] Receiver Capabilities specification. The Receiver **SHOULD** express its constraints as precisely as possible, to allow a Controller to determine with a high level of confidence the Receiver's compatibility with the available streams. @@ -74,17 +62,13 @@ It is not always practical for the constraints to indicate every type of stream The `constraint_sets` parameter within the `caps` object can be used to describe combinations of parameters which the Receiver can support, using the parameter constraints defined in the [Capabilities register][Capabilities-Register] of the NMOS Parameter Registers. The following parameter constraints **MAY** be used to express limitations on MPEG TS streams: -- [Transport Bit Rate][Transport-Bit-Rate] +- [Transport Bit Rate][Cap-Transport-Bit-Rate] -An example Receiver resource is provided in the [Examples](../examples/). +An example Receiver JSON is provided in the [Examples](../examples/). ## MPEG TS IS-05 Senders and Receivers -Connection Management using IS-05 proceeds in exactly the same manner as for any other stream format carried over the RTP tranport type. - -Any SDP file published at the **/transportfile** end-point **MUST** comply with the IS-05 usage guidelines for the RTP transport and [RFC 4566][RFC-4566]. - -An example SDP file is provided in the [Examples](../examples/). +Connection Management follows IS-05 for the transport type. ## Controllers @@ -92,21 +76,15 @@ Controllers **MUST** use IS-04 to discover MPEG TS Senders and Receivers and IS- Controllers **MUST** support the BCP-004-01 Receiver Capabilities mechanism and all the parameter constraints listed in this specification in order to evaluate the stream compatibility between MPEG TS Senders and Receivers. -Controllers **MUST** be capable of handling RTP transports as per the NMOS specifications indicated in the Sender and Receiver resources. - [BCP-004-01]: https://specs.amwa.tv/bcp-004-01/ "AMWA BCP-004-01 NMOS Receiver Capabilities" [MPEG-TS]: https://www.iso.org/standard/69461.html "ISO/IEC 13818-1 Systems" -[TR-01]: https://vsf.tv/download/technical_recommendations/VSF_TR-01_2018-06-22.pdf "VSF TR-01 Transport of JPEG 2000 Broadcast Profile Video in MPEG-2 TS over IP" -[TR-07]: https://vsf.tv/download/technical_recommendations/VSF_TR-07_2020-04-01.pdf "VSF TR-07 Transport of JPEG XS Video in MPEG-2 TS over RTP" [VSF]: https://vsf.tv/ "Video Services Forum" [RFC-2119]: https://datatracker.ietf.org/doc/html/rfc2119 "Key words for use in RFCs" -[RFC-3555]: https://datatracker.ietf.org/doc/html/rfc3555 "MIME Type Registration of RTP Payload Types" -[ST-2022-2]: https://ieeexplore.ieee.org/document/7291602 "SMPTE ST 2022-2: Unidirectional Transport of Constant Bit Rate MPEG-2 Transport Streams on IP Networks" -[RFC-4566]: https://datatracker.ietf.org/doc/html/rfc4566 "SDP: Session Description Protocol" +[RFC-4855]: https://datatracker.ietf.org/doc/html/rfc4855 "Media Type Registration of RTP Payload Formats" [NMOS-Glossary]: https://specs.amwa.tv/nmos/main/docs/Glossary.html "NMOS Glossary" [Capabilities-Register]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/ "Capabilities Register" [Sender-Attributes]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes "Sender Attributes Register" -[Sender-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes/#bit-rate "Sender Bit Rate" +[Sender-Transport-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes/#bit-rate "Sender Transport Bit Rate" [Cap-Transport-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/#transport-bit-rate "Transport Bit Rate" From 763c0d0431a9e737ca231db8ce1c0406975ff6d1 Mon Sep 17 00:00:00 2001 From: Peter Brightwell Date: Fri, 29 Nov 2024 09:47:32 +0000 Subject: [PATCH 3/5] Set AMWA ID to BCP-006-04 --- .render/_config.yml | 4 ++-- README.md | 6 +++--- docs/NMOS With MPEG TS.md | 2 +- spec.yml | 10 +++++----- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.render/_config.yml b/.render/_config.yml index 62b6b14..764e865 100644 --- a/.render/_config.yml +++ b/.render/_config.yml @@ -5,10 +5,10 @@ plugins: spec_server: specs.amwa.tv # AMWA ID -amwa_id: BCP-MPEG-TS +amwa_id: BCP-006-04 # Base name for site (typically lower case version of AMWA ID, or the repo name) -baseurl: /bcp-mpeg-ts +baseurl: /bcp-006-04 # Which release or branch appears in header links and on the home page default_tree: branches/v1.0-dev # alternatively e.g. releases/v1.0 diff --git a/README.md b/README.md index 7bc9b98..bf2850a 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -# \[Work In Progress\] AMWA BCP-MPEG-TS NMOS Support for MPEG Transport Streams +# \[Work In Progress\] AMWA BCP-006-04 NMOS Support for MPEG Transport Streams -[![Lint Status](https://github.com/AMWA-TV/bcp-mpeg-ts/workflows/Lint/badge.svg)](https://github.com/AMWA-TV/bcp-mpeg-ts/actions?query=workflow%3ALint) -[![Render Status](https://github.com/AMWA-TV/bcp-mpeg-ts/workflows/Render/badge.svg)](https://github.com/AMWA-TV/bcp-mpeg-ts/actions?query=workflow%3ARender) +[![Lint Status](https://github.com/AMWA-TV/bcp-006-04/workflows/Lint/badge.svg)](https://github.com/AMWA-TV/bcp-006-04/actions?query=workflow%3ALint) +[![Render Status](https://github.com/AMWA-TV/bcp-006-04/workflows/Render/badge.svg)](https://github.com/AMWA-TV/bcp-006-04/actions?query=workflow%3ARender) This repository holds the source for this Specification, part of the family of [Networked Media Open Specifications](https://specs.amwa.tv/nmos) from the [Advanced Media Workflow Association](https://amwa.tv) diff --git a/docs/NMOS With MPEG TS.md b/docs/NMOS With MPEG TS.md index c265c44..4dff046 100644 --- a/docs/NMOS With MPEG TS.md +++ b/docs/NMOS With MPEG TS.md @@ -1,4 +1,4 @@ -# AMWA BCP-006-0x: NMOS with MPEG TS \[Work In Progress\] +# AMWA BCP-006-04: NMOS Support for MPEG Transport Streams \[Work In Progress\] {:.no_toc} * A markdown unordered list which will be replaced with the ToC, excluding the "Contents header" from above diff --git a/spec.yml b/spec.yml index 9c04acf..ee8402c 100644 --- a/spec.yml +++ b/spec.yml @@ -1,10 +1,10 @@ -amwa_id: BCP-MPEG-TS -url: https://specs.amwa.tv/bcp-mpeg-ts +amwa_id: BCP-006-04 +url: https://specs.amwa.tv/bcp-006-04 name: AMWA NMOS Support for MPEG Transport Streams status: Work In Progress -repo_name: bcp-mpeg-ts -alt_repo_name: nmos-bcp-mpeg-ts -repo_url: https://github.com/AMWA-TV/bcp-mpeg-ts +repo_name: bcp-006-04 +alt_repo_name: bcp-mpeg-ts +repo_url: https://github.com/AMWA-TV/bcp-006-04 releases: default_branch: main show_in_index: false From f342715d1a5335b6f00b935985d09af0a458dfa4 Mon Sep 17 00:00:00 2001 From: Geir Ertzaas Date: Tue, 3 Dec 2024 10:07:53 +0100 Subject: [PATCH 4/5] Fixed comments from meeeting 2024-11-27 Added back 2022-2 reference in the introduction Senders and receivers must be in the transport registry Changed wording JSON to resources for examples Added back SDP examples in IS-04/5 + note on usage for RTP Moved IS-04 section around to group flows and sources separate from senders and receivers. --- docs/NMOS With MPEG TS.md | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/docs/NMOS With MPEG TS.md b/docs/NMOS With MPEG TS.md index 4dff046..aafb152 100644 --- a/docs/NMOS With MPEG TS.md +++ b/docs/NMOS With MPEG TS.md @@ -9,7 +9,9 @@ _(c) AMWA 2024, CC Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)_ [MPEG Transport Stream][MPEG-TS] is a standard digital container format specified in ISO/IEC 13818-1, widely used for transmission and storage of audio, video, and data. -This BCP allows for the use of all transport types defined by IS-05 that can carry media type `video/MP2T`. +SMPTE [ST 2022-2][ST-2022-2] defines the Unidirectional Transport of Constant Bit Rate MPEG-2 Transport Streams using RTP on IP Networks. + +This BCP allows for the use of all transport types defined in the [Transports][Transports-Registry] registry that can carry media type `video/MP2T`. ## Use of Normative Language @@ -20,7 +22,7 @@ and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119] The NMOS terms 'Controller', 'Node', 'Source', 'Flow', 'Sender', 'Receiver' are used as defined in the [NMOS Glossary][NMOS-Glossary]. -## MPEG TS IS-04 Sources, Flows, and Senders +## MPEG TS IS-04 Sources, Flows Nodes capable of transmitting MPEG TS streams **MUST** have Source, Flow, and Sender resources in the IS-04 Node API. @@ -41,16 +43,19 @@ The Flow resource **MUST** indicate `video/MP2T` in the `media_type` attribute, An example Flow resource is provided in the [Examples](../examples/). +## MPEG TS IS-04 Senders and Receivers +IS-04 Senders and Receivers **MUST** use transports defined in the [Transports][Transports-Registry] parameter registry. + ### Senders For Nodes implementing IS-04 v1.3 or higher, the following additional attributes defined in the [sender attributes register][Sender-Attributes] of the NMOS Parameter Registers are used for MPEG TS: - [Bit Rate][Sender-Transport-Bit-Rate] This attribute **MUST** be present as defined in equipment where the bit rate is known. -An example Sender JSON is provided in the [Examples](../examples/). - -## MPEG TS IS-04 Receivers +The SDP file published at the `manifest_href` end-point **MUST** comply with the IS-05 usage guidelines for the specific transport and [RFC 4566][RFC-4566] +An example Sender resource is provided in the [Examples](../examples/). +## Receivers Nodes capable of receiving MPEG TS streams **MUST** have a Receiver resource in the IS-04 Node API, which lists `video/MP2T` in the `media_types` array within the `caps` object. If the Receiver has limitations on or preferences regarding the MPEG TS streams that it supports, the Receiver resource **MUST** indicate constraints in accordance with the [BCP 004-01][BCP-004-01] Receiver Capabilities specification. @@ -64,12 +69,16 @@ The `constraint_sets` parameter within the `caps` object can be used to describe The following parameter constraints **MAY** be used to express limitations on MPEG TS streams: - [Transport Bit Rate][Cap-Transport-Bit-Rate] -An example Receiver JSON is provided in the [Examples](../examples/). +An example Receiver resource is provided in the [Examples](../examples/). ## MPEG TS IS-05 Senders and Receivers Connection Management follows IS-05 for the transport type. +Any SDP file published at the **/transportfile** end-point **MUST** comply with the IS-05 usage guidelines for the RTP transport and [RFC 4566][RFC-4566]. + +An example SDP file is provided in the [Examples](../examples/). + ## Controllers Controllers **MUST** use IS-04 to discover MPEG TS Senders and Receivers and IS-05 to manage connections between them. @@ -86,5 +95,6 @@ Controllers **MUST** support the BCP-004-01 Receiver Capabilities mechanism and [Sender-Attributes]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes "Sender Attributes Register" [Sender-Transport-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/sender-attributes/#bit-rate "Sender Transport Bit Rate" [Cap-Transport-Bit-Rate]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/#transport-bit-rate "Transport Bit Rate" +[Transports-Registry]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/transports "Transports" From a4f7e4ae1dc2a2d599a97c0ac4da431d7fc23238 Mon Sep 17 00:00:00 2001 From: Geir Ertzaas Date: Tue, 3 Dec 2024 10:29:21 +0100 Subject: [PATCH 5/5] Added back link to 2022-2 reference --- docs/NMOS With MPEG TS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/NMOS With MPEG TS.md b/docs/NMOS With MPEG TS.md index aafb152..898b06f 100644 --- a/docs/NMOS With MPEG TS.md +++ b/docs/NMOS With MPEG TS.md @@ -89,6 +89,7 @@ Controllers **MUST** support the BCP-004-01 Receiver Capabilities mechanism and [MPEG-TS]: https://www.iso.org/standard/69461.html "ISO/IEC 13818-1 Systems" [VSF]: https://vsf.tv/ "Video Services Forum" [RFC-2119]: https://datatracker.ietf.org/doc/html/rfc2119 "Key words for use in RFCs" +[ST-2022-2]: https://ieeexplore.ieee.org/document/7291602 "SMPTE ST 2022-2: Unidirectional Transport of Constant Bit Rate MPEG-2 Transport Streams on IP Networks" [RFC-4855]: https://datatracker.ietf.org/doc/html/rfc4855 "Media Type Registration of RTP Payload Formats" [NMOS-Glossary]: https://specs.amwa.tv/nmos/main/docs/Glossary.html "NMOS Glossary" [Capabilities-Register]: https://specs.amwa.tv/nmos-parameter-registers/branches/main/capabilities/ "Capabilities Register"