1
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
SMPTE Standards WebcastEnabling Global Education
Building Scalable Media Systems using SMPTE ST 2110
and JT-NM TR1001-1John Mailhot, CTO Networking & Infrastructure
Imagine Communications
1
Your Host
Joel E. Welch
Director of EducationSMPTE
2
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
2
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
SMPTE Standards Update Webcasts
• Series of quarterly 1-hour online (this is 90 minutes), interactive webcasts covering select SMPTE standards
• Free to everyone
• Sessions are recorded for on-demand viewing convenience SMPTE.ORG and YouTube
• Please tell others about SMPTE’s webcasts on social media:
@smpteconnect
#SMPTEWebcast
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE Standards WebcastEnabling Global Education
Today’s Guest Speaker
John Mailhot
CTO of Networking and Infrastructure
Imagine Communications
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
3
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
The core specs for SMPTE 2110 Systems
• 2110-10: System Timing PUBLISHED
• 2110-20: Uncompressed Video PUBLISHED
• 2110-21: Traffic Shaping Video PUBLISHED
• 2110-30: PCM Audio PUBLISHED
• 2110-31: AES3 Transparent Transport PUBLISHED
• 2110-40: Ancillary Data PUBLISHED
• 2110-22: Compressed Video Essence (in process)
• 2022-8: Integration with ST 2022-6 (in process)
• AMWA NMOS IS-04 Discovery/Registration STABLE
• AMWA NMOS IS-05 Connection Management STABLE
• JT-NM TR-1001-1 System & Device Behaviors NOW
5© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
ST2110-20: Uncompressed Video over IP
• Only the “Active” image area is sent – no blanking
• Supports image sizes up to 32k x 32k
• Supports Y’Cb’Cr’, RGB, XYZ, I’Ct’Cp’
• Supports 4:2:2/10, 4:2:2/12, 4:4:4/16, and more
• Supports HDR (PQ & HLG)
6© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
4
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
2110-30: PCM Audio over IP
• Built On AES67 -- PCM Audio (only)
• Many things allowed but only a few required • 48kHz sampling is required for all devices
• 1ms packet time is required for all devices
• 1..8 channels per stream is required for all devices
• 16 & 24 bit depth required for all devices
• Outside the required, must read specs carefully
7© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
What about Non-PCM Audio?
• 2110-30 deals only with PCM audio (same for AES-67)
• 2110-31 provides bit-transparent AES3 “pipes” over IP• Can handle non-PCM audio
• Can handle AES3 applications that use the user bits
• Can handle AES3 applications that use the C or V bits
• 2110-31 is always “stereo” (like AES3), can contain multiple
AES3 in the same IP stream.
8© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
5
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
2110-40: ANC Data Transport over IP
• Over the years, lots of things have been put into the SDI “Ancillary Data” system
• Some are tightly related to the video signal
• Some are really separate essence
• Some are just along for the ride
• Audio is in SDI ANC Data, but don’t use this method for audio
• See also IETF RFC 8331, which says how to wrap ANC in IP
• 2110-40 says how to use RFC 8331 in an ST2110 system
9© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
ST 2110-10: How do the parts stay in sync?
• SDI was good in this regard – the embedded audio and VANC were tightly bound to the video (from a timing perspective)
• In ST2110, Every Device Supports PTP for an exact time Reference
• Each Stream has RTP timestamps for Synchronization• Senders mark each packet of video, audio, or ANC with an “RTP
Timestamp” that indicates the “sampling time” (or equivalent)
• Receivers compare these timestamps in order to properly align the different essence parts to each other
• Users can Mix-and-Match any essence from any source !!!
10© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
6
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
SMPTE Standards Webcast SeriesSMPTE – Enabling Global Education
That’s all nice, but how do I make a routing system out of it?Why do we need IS-04, IS-05, and TR-1001-1 ?
11© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
AMWA IS-04: How Devices “join” the System
• The system includes a Registry (or redundant registries)
• New (and old) devices find the registry, and register • They also have to maintain their registration periodically
• The Control System can query the registry to find devices
• This also supports devices that move to different places on the network
• Cameras that move from studio to studio
• Set monitors, prompters, and other shared equipment
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org12
7
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
How is IP Television Routing Different from SDI ?• In SDI Routing, all the action happens in the SDI crosspoint frame
• The Control System tells the crosspoint what to switch where
• The Crosspoint Router switches everything internally
• The Receivers just eat whatever bits show up
• In IP Television Routing, the Receiver is involved in the switching• The Control System tells the Receiver
• What Multicast Group & Port# to switch to (Main and Protect)
• The Technical Metadata of the new stream
• The Receiver is responsible for how it switches/transitions to it
• The Receiver asks the network for the new signal
• The network provides the new signal through packet forwarding logic
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org13
• Routing Control Systems• Manage GROUPING of element signals
• Manage NAMES for groups of elementary signals (SOURCES)
• Manage NAMES for groups of elementary receivers (DESTINATIONS)
• Routing is:• Connect SOURCE (group)
to a DESTINATION (group)
• Confirm with a positive status (or not)
• But under the hood a lot is happening
What is involved in Switching a Signal in IP?Human @ Panel
RoutingControl System
Please take CAM 7 to MON 3
Hey Monitor 3, Switch your video to
group 238.6.74.22:20000 with
{width=1920, height=1080, …}
Monitor 3
IGMP Leave 237.44.5.3
IGMP Join 238.6.74.22
Network
Multicast 238.6.74.22 starts
Multicast 237.44.5.3 stops
Monitor 3
RoutingControl System
Human @ Panel
I transitioned to 238.6.74.22:20000
MON 3 is getting CAM 7
NEW VIDEO ON SCREEN
OPERATOR ACTION
OPERATOR STATUS
8
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
AMWA NMOS Connection Management IS-05
Controllers: things that make routing happen• Know about the streams from the registration service
• Maintain the names and meanings of those streams
• Tell the Receivers what stream to take
• Act like a “routing system” to everything in the plant
Senders and Receivers: things that make or eat streams• Respond to IS-05 Connection Management API
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
Session Description (SDP) RFC4566
• Each Stream has a set of metadata that tells the receiver how to interpret what is inside of it – the receiver needs this info!!
• The SDP (RFC4566) tells the Receiver everything it needs to know
• Senders expose an SDP for every stream they make
• AMWA IS-05 is the preferred way to communicate this SDP information to the receiver
16© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
9
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
At the Recent EBU Network Technology Seminar
• Several EBU member customers commented on the pace of adoption of the AMWA IS-04/05 specifications, and the vendor-specific issues at the first several ST 2110 roll-outs
• There was a general call for a “Systems” approach that combines ST2110, IS-04/IS-05, PTP, and adds enough details to make working systems
• An Editor was picked, and a JT-NM ad-hoc group was formed to pull this system document together
• TR-1001-1 is the first part, others will follow
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org17
The Customer’s View of the IP Universe
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
10
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
What Customer Problem are we Solving?
• Customer buys a new piece of 2110-x equipment
• What (all) do they need to do to get it running in their facility ?
• Is it a reasonable set of things today?
• could it be? (yes)
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org19
What does TR-1001-1 cover?
• For a specific domain of use, describes the requirements on the devices, and the environment they live in, including standards and behaviors, so that…
• A customer can take delivery of a new audio/video endpoint device, attach it to the network, and have a straightforward workflowleading to using the device
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org20
11
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
Domain of Use
• SMPTE ST 2110, AMWA IS-04/05, SMPTE ST 2059 were all written to be very flexible and cover a lot of user stories.
• The TR-1001 system document is specific to a type of use:• Engineered Facilities (Fixed or Mobile) with Engineered IP networks
• Producing, Packaging, or Delivering television or radio content
• Built around SMPTE ST 2110 and AMWA IS-04/05 technologies
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org21
Media Nodes, Environments, and Workflow• Media Nodes
• Endpoint Devices which create/consume ST 2110 streams (senders, receivers)
• Environment• The control and media networks that interconnect the Media Nodes• The Network Services that are supplied on the networks
• Straightforward Workflow• “Human in the Loop” workflow for new devices, in order to authenticate
devices, assign names / identities / groupings to signals• Should not require too much engineering knowledge to add a device
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org22
12
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
Standards and Behaviors
• Standards• SMPTE ST 2110-10, -20, -21, -30, -31, and -40, 2059-1 and 2059-2
• AMWA IS-04 and IS-05, IEEE 802.1AB, (LLDP), IEEE 802.1AX (LACP)
• Behaviors (How does a device …)• Know its network host addresses, Gateway(s), and CIDR mask ?
• Know if it is waking up in a system that they were part of, or a new one?
• Know the prevailing PTP domain and PTP system settings
• Find and use the IS-04 registry?
• Know what multicast transmit addresses to use?
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org24
13
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
I thought 2110 and IS-04/05 were finished?
• The Standards are done, and the constraints of how to use them can be documented
• Domain, Devices, Environment, and Workflow are pretty clear
• But What about those “Behaviors” ? • These are the core of the system document for 2110 Media Systems
• Let’s attack these in order and see which ones need work…
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org25
1. How to Find your Network Details
• Endpoint Devices Need to know about their place in the network• For Each Interface on Management and Media/Data Networks
• Host Address and CIDR “mask”
• Default Route (Gateway)
• DNS Server Information if needed
• DHCP (Dynamic Host Configuration Protocol) is typical for this• It is well-known and works at scale
• It is well-supported in routers and network equipment and servers
• It is not inherently secure, but can be made fairly robust
• TR: Media Nodes Shall (by default) use DHCP on control and media nets
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org26
14
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
2: Fresh-Start –vs- Re-Start
• Common practice in “broadcast equipment” is to power up and resume operation with the last stored settings
• Most Customers expect/demand this behavior
• This behavior is problematic for “new” equipment or rental gear• The stored settings are probably not useful and might be harmful
• It would be very helpful if devices could reliably know that they are waking up in the same system that they were last used in (or not)
• If “same system” then use stored settings• If “new system” then mute any multicast senders and wait for configuration
• TR: A “System GUID” (globally unique identifier) is compared against the previous stored value – and defines a simple way to distribute the system GUID
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org27
3: Finding the Prevailing PTP Parameters
• Endpoint Devices need to know the local PTP Domain number
• Endpoint Devices with more than one Media Network port need to also know the PTP Announce Timeout in order to make “BMCA-like” decisions across the two interfaces
• ST 2059 (or in general PTP) has no mechanism to distribute this
• TR: Defines a simple way to distribute this PTP information
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org28
15
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
4: Finding the IS-04 Registry & Timeout
• IS-04 specifies MDNS or DNS-SD for finding the registry• MDNS is local-subnet specific (does not route) and
impractical for most large network architectures
• DNS-SD via unicast DNS can work well and scale well • Adds (redundant) DNS servers as critical infrastructure
• Makes every system requires local DNS servers
• TR: Media Nodes shall use unicast DNS-SD to find the registries
29© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
• TR: find via DNS-SD, a new API structure:(GET) /x-nmos/system/v1.0/global/{ "id": "3b8be755-08ff-452b-b217-c9151eb21193",
"version": "1441700172:318426300","label": "ZBQ System","description": "System Global Information for ZBQ","caps": {},"tags": {},"IS-04": {
"heartbeat_interval": 8},"ptp": {
"announce_receipt_timeout": 2,"domain_number": 57
},"syslogv2": {
"hostname": "biglogger.ebu.ch","port": 3477
} }
Global Information – How to Distribute?
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
16
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
Behavior 5: Multicast Address Allocation • Current practice is to manually allocate multicast addresses,
preferably in some pattern related to the types of signals and identity of the sender
• MADCAP (RFC 2730) could possibly be used, but has some limitations
• IS-05 provides a mechanism for a controller to specify the transport parameters (multicast address) to senders, if the sender supports it
• TR: Media Nodes shall support the entire range of multicast addresses from 224.0.2.0 through 239.255.255.255
• TR: All Senders and Receivers shall support configuration of their transport_params and master_enable through AMWA IS-05
31
TR-1001 Systems Document: Where are we ?
• The “systems” document has been drafted by an ad-hoc drafting group under the AMWA IPR Guidelines, with representation from many of the JT-NM member organizations, including Broadcasters and Vendors.
• TR-1001 Part 1 is published at JT-NM.ORG• System Environment and Device Behaviors For SMPTE ST 2110
Media Nodes in Engineered Networks
• Engineering Interop Events will be held in the spring to ensure common understanding and implementation of these specs
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org32
17
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org
SMPTE©
Enabling Global Education
SMPTE Standards WebcastEnabling Global Education
Thank You
SMPTE Standards WebcastEnabling Global Education
Questions?
John Mailhot
CTO of Networking and Infrastructure
Imagine Communications
© 2019 • SMPTE® | Enabling Global Education • www.smpte.org