22
NMOS Networked Media Open Specification The Open AV over IP RESTful API Andrew Starks Director of Product Management, Macnica 2019/06/12

Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

NMOSNetworked Media Open Specification

The Open AV over IP RESTful APIAndrew Starks

Director of Product Management, Macnica2019/06/12

Page 2: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

• Andrew Starks• Director of Product

Management for

• Formerly Co-Founder of Tightrope Media Systems (20 Years)• Extremely happy to be here!

I am…

Page 3: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

SMPTE ST-2110 / NMOS: Layered Architecture

ST 2110Low Latency, Synchronized Media Stream Transport

Timing and Synchronization

-10

Uncompressed Video-20

Uncompressed Audio-30 (AES67)

Ancillary Data-40

Networked Media Open Specification (NMOS)Network-Transparent (RESTful) Application Programming Interface (API)

RegistrationDiscovery

IS-04Subscribe

IS-05Network Control

IS-06 ...

Page 4: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

ST 2110Low Latency, Synchronized Media Stream Transport

Timing and Synchronization

-10

Uncompressed Video-20

Uncompressed Audio-30 (AES67)

Ancillary Data-40

Networked Media Open Specification (NMOS)Network-Transparent (RESTful) Application Programming Interface (API)

RegistrationDiscovery

IS-04

SubscribeIS-05

Network ControlIS-06 ...

SMPTE ST-2110 / NMOS: Layered Architecture

Page 5: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

ST 2110Low Latency, Synchronized Media Stream Transport

Timing and Synchronization

-10

Uncompressed Video-20

Uncompressed Audio-30 (AES67)

Ancillary Data-40

Networked Media Open Specification (NMOS)Network-Transparent (RESTful) Application Programming Interface (API)

RegistrationDiscovery

IS-04

SubscribeIS-05

Network ControlIS-06 ...

SMPTE ST-2110 / NMOS: Layered Architecture

Page 6: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

Stages

ID Name Status

IS-04 Discovery and Registration StableIS-05 Device Connection Management StableIS-06 Network Control AMWA Specification

IS-07 Event & Tally AMWA Specification

IS-08 Audio Channel Mapping AMWA Specification

IS-09 System Work in Progress

MS-04 ID & Timing Model Finalized, Approved

BCP-002-01 Natural Grouping Finalized, Approved

BCP-003-01 API Security: Communications AMWA Specification

BCP-003-02 API Security: Authorization Finalized

N/A Parameter Registers Continuing

Page 7: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

● NMOS Node API● NMOS Registration API● NMOS Query API● m/DNS Search and Discovery● Peer-to-Peer Search and Discovery

Specifications: IS-04

Page 8: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

NMOS Node

node

device sender

node

deviceReceiverFlow[B18471B0-98F7-4B9F-A197-3DA3918225B]

Page 9: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

● Devices: do things○ Play, capture, transform,

display, etc.

● Nodes: their logical hosts● Could be a server or other

container

NMOS Model

nodedevice

device

Page 10: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

IS-04NMOSNode

IS-05Connec1onManager IS-07Tally&Event

IS-08AudioMapping

Other Specifications

Page 11: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

Devices can have Senders and/or Receivers which are logical inputs/outputs

NMOS Model: Senders and Receivers

devicesender

devicesender

devicesender

sender

receiver

receiver

devicereceiver

devicereceiver

Page 12: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

devicesender

devicesender

devicesender

sender

receiver

receiver

devicereceiver

devicereceiver

FLOW

FLOW FLOW

FLOW

Flows are time stamped (synchronous) sequences of video/audio/ancillary data that pass from a Sender to a Receiver(s)

NMOS Model: Flows

Page 13: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

Devices, Sources, Flows, Senders, Receivers - they are Resources● Uniquely identified and

addressable parts of a NMOS environment

● A Node exposes its Resources via its IS-04 Node API

NMOS Model: Resources

NMOSNODEAPI

nodedevice

source

receiver

flow

sender

833CBE11-74D8-459C-9B5F-FA34662EC1CF

84B1E030-C92C-4500-AFB4-8795F194F1DB

3100B199-562A-4A25-A483-72A91B753BD3

CD2F0E1F-F927-4F73-804E-2DB1C7C27219

D2DAC8D4-0819-412A-826D-02E250D0D56A

7E042F05-1D8F-4FDC-ABCA-3773D02DBB7F

Page 14: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

HDMISourceHDMIOutput

videodevice

receiverHDMIto2110Gatewayvideosender

audiosenderHDMIInput

ancdata

Audio Flow2110-30

AVdevicevideo

receiver

audioreceiver

ancreceiver(CC,CEC,USB)

Video Flow2110-20

ANC Flow2110-40

Baseband HDMI Signals

Video Flow2110-20

NMOS Example: HDMI Gateway

Page 15: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

• HTTP/S• Websockets• JSON• UUIDs v4

NMOS API: Web Friendly

JSON representation of a Device resource

Page 16: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

nodedevice

source

receiver

flow

sender

registryRegistration

API

QueryAPI

IS-04 Registration Service

Page 17: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

● Registration and Query: mDNSannouncements (Bonjour, Avahi etc) orthrough DNS entry

● Multicast / Unicast supported● Finding Registration service announcements:

○ Finds endpoint via _nmos-register._tcp○ Register: POST request to a Registration API○ Persist: POSTing time to Registration API /

health endpoint every 5 sec○ Register its Resources with further POSTs to the

Registration API /resource

Discovery IS-04 Services

Page 18: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

• The Node announces itself with _nmos_node._tcp• Clients find its resources directly

through the NMOS IS-04 Node API• Continue to looking for Registry

announcements and use registry instead, if available! (it’s better)

Peer-to-Peer

Page 19: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

Provides a general mechanism for connecting senders and receivers:• Supports unicast/multicast• Provides feedback on

success/failure• Best used in conjunction

with IS-04

NMOS IS-05: Connections

nodedevice

sender

IS-04registry

QueryAPI

applica6onlogic

nodedevice

receiverST 2110essence flow

RegistrationAPI

RegistrationAPI

Create Connection

Create Connection

Page 20: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

nodedevice

sender

QueryAPI

IS-04registry

applica6onlogic

nodedevice

receiverST 2110essence flow

RegistrationAPI

RegistrationAPI

Create Connection

Create Connection

NMOS IS-05: Connections

Page 21: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

• NMOS IS-06: Switch control API• Broadcast Controller: Plays the role of routing switcher software• Touches IS-04/05/06

• Timing: PTP Clocks keep things source synchronized. Work being done to support destination synchronization.• Multicast & Unicast: Fully Supported• MUCH MORE TO COME!

Other Bits

Page 22: Introduction to NMOS - AIMS · 2019. 6. 12. · NMOS Model: Resources NMOS NODE API node device source receiver flow sender 833CBE11-74D8-459C-9B5F-FA34662EC1CF 84B1E030-C92C-4500-AFB4-8795F194F1DB

Thank you