AES70, also known as OCA, is an architecture for system control and connection management of media networks and devices. AES70 is capable of working effectively with all kinds of devices from multiple manufacturers to provide fully interoperable multivendor networks. This session will provide an overview of the AES70 standard, including the current and future objectives of the standard.

File Type: pdf
Categories: Uncategorized
Presenters : Ethan Wetzell - OCA Alliance
Year : 2019
dlp_document_download : Introduction to AES70Why?AES70 ConceptsWho uses it? Introduction to AES70What's in AES70What's notin AES70•Audio program transport;•A programming model for OCA-compliant devices;•A user interface definition or generation scheme for OCA-compliant devices;•Standardized semantics for controllable elements (e.g. standard filter shapes);•Standard device profiles (e.g. "standard mixer", "standard power amp").AES70 Concepts Introduction to AES70AES70 Concepts SYSTEM CONTROL MEDIA TRANSPORT Introduction to AES70AES70 Concepts AES 67 Dante SMPTE 2110 - 30 AVB / TSN CobraNet Analog Cable IP Video whatever OCA AES 70 Object Mod el CONTROL FRAMEWORK - Commands & responses - Event s & subscri pt ions - Media st ream connect ions- Device control model- Security- Robust ness- Scal abi lit y APPLICATION PROTOCOL (S) - Transport options- Data encoding options- Protocol logic- Direct ory /discovery int erface - Keepalives OBJECT MODE L- Actuat ors , generic and audio -oriented - Sensors , generic and audio -oriented - Media st ream connect ion manag ement- Cont rol agents- Prestored scripts- Configuration libraries- Dynamic DSP reconfig uration- Tasks- Presets- Power management- and so on Introduction to AES70–PropertiesVariables that define the state of the object–MethodsOperators that change properties and cause actions–EventsSignals emitted by objects to indicate state changes–Object Number(aka ONo) Unique identifier of object within the deviceCategories of Control Objects–ManagersStandard housekeeping objects, mostly the same in every device.–WorkersObjects that correspond to audio processing control functions.–AgentsDevices that provide various control functions or modify the control command stream, but do not map directly to signal processing elements.–NetworksAES70's connection management feature set.Elements of Control ObjectsAES70 Concepts Introduction to AES70•Templates from which control objects are created.•Every class is uniquely identified by a class ID, a structured identifier used in various ways throughout AES70.•AES70 classes inherit elements in the standard object-oriented manner. Only simple inheritance is supported.•The set of OCA classes (aka "class tree" aka "OCC") defines AES70 's functional repertoire.•The class tree will evolve over time to accommodate new device types and new manufacturers.•Class tree inheritance rules create a constrained evolution regime that maximizes upward compatibility and ensures graceful evolution through orderly class specialization.•Class tree inheritance rules support the addition of proprietary classes to the class tree in a way that maximizes compatibility with the standard classes•Each class definition maps algorithmically to a particular control protocol data unit (PDU) format. PDU definitions devolve automatically from class definitions by a set of formatting and marshalling rules defined in the standard.•AES70 currently defines a control protocol ("OCP.1") for IP networks. In the future, other network types ("OCP.2", "OCP.3", etc.) may be supported. Future network types may or may not use the same control PDU formats, but they will all have the same object model.AES70 Concepts Introduction to AES70EventsAES70 Concepts Introduction to AES70AES70 Object Model Introduction to AES70OPTIONAL MANAGERSPower ManagerManages power supplies and batteries. Media Clock ManagerManages media clocks.Library ManagerManages stored parameter settings. Audio Processing ManagerHolds global signal processing parameters.Power ManagerManages power supplies and batteries. Device Time ManagerManages time reference objects.Ta s k M a n a g e rManages stored processing sequences.Diagnostic ManagerOffers features to help installation and setup. Device ModelREQUIRED MANAGERSDevice ManagerManages information relevant to the whole device.Security ManagerManages security keys.Firmware ManagerManages firmware versions and, optionally, updates.Subscription ManagerManages event subscriptions.Network ManagerManages connection(s) to network(s). DeviceManager PowerManager Secu ri tyManager Fi rm wa r eManager Sub scripti on Manager Wo rk e rs Netw orkManager Media ClockManager Audio Processing Manager Library Manager Agents DeviceTimeManager TaskManager DiagnosticManager Netw orks Object Model Introduction to AES70WorkersClasses that deal with audio processingActuatorsClasses that control audio processingSensorsClasses that monitor the deviceBlocks and MatricesClasses that define device control and processing groupsAgentsClasses that affect the flow and timing of controlNetworksConnection management classesManagersDevice housekeeping classesObject Model Introduction to AES70OcaActuatorBase class for classes that control audio processingOcaMuteSignal muteOcaPolaritySignal inversionOcaSwitch1 of n selectorOcaGainSimple gain in dBOcaPanBalancePan or balance controlOcaDelaySignal delay in mSecOcaDelayExtendedSignal delay in mSec, ft, mOcaFrequencyActuatorFrequencyOcaFilterClassicalBessel, Butterworth, etc.OcaFilterParametricPeaking or shelving parametric filterOcaFilterPolynomialRational polynomial filterOcaFilterFIRFIR specified by coefficientsOcaFilterArbitraryCurveMagnitude vs freq curveOcaDynamicsGeneralized compressor/expanderOcaDynamicsDetectorSide-chain detectorOcaDynamicsCurveDynamics input vs output level curveOcaSignalGeneratorMulti-waveform signal generatorOcaSignalInputDevice signal input portOcaSignalOutputDevice signal output portOcaTemperatureActuatorTemperature parameterOcaIdentificationActuatorDevice identification light or other flagActuators, continuedOcaBasicActuatorBase class for weakly typed actuatorsOcaBooleanActuatorWeakly typed actuators ...OcaInt8Actuator...OcaInt16Actuator...OcaInt32Actuator...OcaInt64Actuator...OcaUint8Actuator...OcaUint16Actuator...OcaUint32Actuator...OcaUint64Actuator...OcaFloat32Actuator...OcaFloat64Actuator...OcaStringActuator...OcaBitStringActuator...Object Model Introduction to AES70OcaSensorBase class for classes that monitor the deviceOcaLevelSensorSignal levelOcaAudioLevelSensorAudio level with standard meter lawsOcaTimeIntervalSensorTime intervalOcaFrequencySensorFrequencyOcaTemperatureSensorTemperature OcaIdentificationSensorMonitors a button push or somethingOcaBasicSensorBase class for weakly typed sensors for general useOcaBooleanSensor...OcaInt8Sensor...OcaInt16Sensor...OcaInt32Sensor...OcaInt64Sensor...OcaUint8Sensor...OcaUint16Sensor...OcaUint32Sensor...OcaUint64Sensor...OcaFloat32Sensor...OcaFloat64Sensor...OcaStringSensor...OcaBitStringSensor...Object Model Introduction to AES70Blocks and MatricesClasses that allow grouping of device functionsOcaBlockContainer for Workers, Agents, and Networks that defines a related set of device functionsOcaBlockFactoryConstructor for OcaBlock objects; to be used with dynamically-reconfigurable DSP devicesOcaMatrixSpecialized container for 2-dimensional arrays of processing elements; superset of conventional gain matrix.NetworksConnection management classesOcaApplicationNetworkAbstract base class for other network classesOcaControlNetworkApplication network for transport of control traffic (e.g. an AES70 network)OcaMediaTransportNetworkApplication network for transport of media content (e.g. an AES67 network)Object Model 16v04ProtocolsProtocolsŸOCA is protocol-agile.ŸMany protocols, one object model, one frameworkCurrent AES70ŸOne RPC protocol: OCP.1 Pr otocol 1 Pr otocol (n) Object model Framework + OCP .1 Logic = RPC Data format = bi nary | JSON Tr anspo rt = TC P | UDP | WS Directory = DNS -SD / mDNS Object model Framework + 17v04Designing An OCA Device 18v04Designing An OCA DeviceExample: Eight-channel mic preampŸ8 analogue inputs, switchable line/micŸEach input with phantom power, high-pass filter, and polarity switchŸAES67 outputStep by step design follows. 19v04Eight-channel mic preampStartŸBasic null deviceŸCompliant with AES70 minimum device specification De vice OcaDeviceManager OcaSubscriptionManager Root Block Legend Manager Inner block Root block Actuator Sensor Agent Network 20v04Eight-channel mic preampAdd clocking and networkingŸClock objectŸControl and AES67 media network objects Legend Manager Inner block Root block Actuator Sensor Agent Network De vice OcaDeviceManager OcaSubscriptionManager Root Block OcaMediaClock 3 OcaControlNetwork OcaMediaTransportNetworkAes 67 OcaTimeSource 21v04Eight-channel mic preampAdd an audio channel blockŸInner OcaBlock object Legend Manager Inner block Root block Actuator Sensor Agent Network De vice OcaDeviceManager OcaSubscriptionManager Root Block Channel (1) OcaMediaClock 3 OcaControlNetwork OcaMediaTransportNetworkAes 67 OcaTimeSource 22v04Eight-channel mic preampPopulate the audio channel blockŸSwitch objectsŸGain control objectŸLevel monitor object Legend Manager Inner block Root block Actuator Sensor Agent Network De vice OcaDeviceManager OcaSubscriptionManager Root Block OcaMediaClock 3 OcaControlNetwork OcaMediaTransportNetworkAes 67 OcaTimeSource Channel (1) OcaSwitch 48 V OcaGain Gain OcaSwitch HPF OcaSwitch Pol arit y OcaSwitch Impedance OcaSwitch LineOrMic OcaAudioLevelSensor Level 23v04Eight-channel mic preampReplicate the audio channel blockŸClone seven more channels.ŸDone! Legend Manager Inner block Root block Actuator Sensor Agent Network What's the resulting device API?ŸEach object publishes its own API.ŸThe device's complete control API is the union of all its objects' APIs.ŸEach class's definition automatically implies a specific API definition -no further specification work is required. De vice OcaDeviceManager OcaSubscriptionManager Root Block OcaMediaClock 3 OcaControlNetwork OcaMediaTransportNetworkAes 67 OcaTimeSource Channel (1) OcaSwitch 48 V OcaGain Gain OcaSwitch HPF OcaSwitch Pol arit y OcaSwitch Impedance OcaSwitch LineOrMic OcaAudioLevelSensor Level Channel (2) (same as channel 1) Channel (8) (same as channel 1) Introduction to AES70 Introduction to AES70SitesImplementationsand tools available through the Tech Site•OCA MicrodemoA free AES70 implementation, including hardware designs for a small demo PCB. Unencumbered, fully usable for commercial purposes.•FocusriteRednetOCA Virtual DeviceWindows executable that simulates an AES70 device.•oca.js JavaScript libraryJavascriptlibrary that supports AES70. For building web-based AES70 device controllers. •OCA Wireshark pluginThis plugin allows analyzing AES70 network traffic using Wireshark, the popular free network protocol analyzer.AES70 Resources Introduction to AES70Information on the TechsiteCommercial AES70 Implementation•Bosch AES70 Reference ImplementationsFully engineered, commercial-grade AES70 development kit. Not free. Licensable from Bosch Communications or DeusO. AES70 ResourcesOCA Alliance Resources•Additional resources are available to OCA Alliance member companies. Basic membership costs $1500 per year.
Downloads: 5