Skip to content

Commit

Permalink
RTP agnostic version (#4)
Browse files Browse the repository at this point in the history
* Update NMOS With MPEG TS.md

* Update NMOS With MPEG TS.md

* Set AMWA ID to BCP-006-04

* 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.

* Added back link to 2022-2 reference

---------

Co-authored-by: Peter Brightwell <[email protected]>
  • Loading branch information
grukx and peterbrightwell authored Dec 3, 2024
1 parent 4fd6cce commit e1000ea
Showing 1 changed file with 21 additions and 32 deletions.
53 changes: 21 additions & 32 deletions docs/NMOS With MPEG TS.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,7 @@ _(c) AMWA 2024, CC Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)_

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`.
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

Expand All @@ -26,9 +22,9 @@ 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, 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.

Expand All @@ -45,42 +41,39 @@ 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/).

## 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 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.
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.

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.

## 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.

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.

It is not always practical for the constraints to indicate every type of stream that a Receiver can or cannot consume successfully; however, they **SHOULD** describe as many of its commonly used operating points as practical and any preferences among them.

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][Cap-Transport-Bit-Rate]

An example Receiver resource 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.
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].

Expand All @@ -92,21 +85,17 @@ 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"
[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-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"


0 comments on commit e1000ea

Please sign in to comment.