オープン制御アーキテクチャ
オープン・コントロール・アーキテクチャ(OCA)は、ネットワーク化されたオーディオおよびビデオデバイスの制御、監視、および接続管理のための通信プロトコル・アーキテクチャです。このようなネットワークは「メディア・ネットワーク」と呼ばれます。
OCA の公式仕様は、AES70-2015または単にAES70として知られるAudio Engineering Society (AES) 標準です。
AES70 は、ライセンス、料金、組織のメンバーシップなしで自由に使用できるオープン スタンダードです。
適用範囲
AES70は、多様なメーカーのデバイスを組み合わせたメディアネットワークをサポートすることを目的としています。プロフェッショナルアプリケーション向けに設計されたAES70は、2台から10,000台のデバイスで構成されるメディアネットワーク、特にミッションクリティカルな用途や人命に関わる用途のネットワークに適しています。
AES70はデバイスの制御、監視、および接続管理のみを目的としています。メディアプログラム素材の転送は提供していません。ただし、AES70はアプリケーションの要件に応じて、ほぼあらゆるメディア転送方式で動作するように設計されています。
AES70の各構成要素は分離可能であり、独立して使用できます。例えば、デバイスはAES70の接続管理を実装しながら、動作制御と監視には別の手段を使用することが可能です。
AES70は、複数の制御プロトコルの定義の基盤となるため、「アーキテクチャ」と呼ばれます。これらのプロトコルはすべて共通のプログラミングモデルを共有していますが、シグナリングの詳細は、基盤となるデータ転送メカニズムの形式によって異なります。AES70アプリケーションは、利用可能な通信方式に適したAES70プロトコルを使用します。
背景
AES70のアーキテクチャであるOCAは、2011年に業界団体OCAアライアンス[ 1 ]によって開発されました。OCA は、2009年と2010年にボッシュコミュニケーションズシステムズによって作成されたOCPという既存の制御プロトコルに基づいていました。OCPは、1990年代初頭にAESによって開発されたAES-24 [ 2 ] [ 3 ]という初期の制御プロトコル標準に基づいていました 。
当初から、関係者全員はOCAをオープンなパブリック標準規格にすることを意図していました。アライアンスは2014年秋にOCAの開発を完了し、正式な標準規格の策定のため仕様をAESに移管しました。正式な標準規格であるAES70は、2016年1月4日に公開されました。
現在、OCAアライアンスは、AES70の機能開発と強化、そしてプロフェッショナルメディアシステム業界全体におけるAES70の採用促進に取り組んでいます。アライアンスは、AES70の理解と採用を促進し、AES70の実装や関連ツール、テクノロジーの開発を促進し、AES70規格の将来的な機能強化も開発しています。
構造概要
範囲
AES70は、メディアデバイスが接続されたネットワークに提示する制御インターフェースを定義します。つまり、AES70は、デバイス機能を体系的に表現し、明確に定義されたプロトコル群を介してそれらの機能を制御および監視することに重点を置きます。
メディアネットワークには通常、「コントローラー」と呼ばれる1つ以上のデバイスが含まれます。これらのデバイスは、ネットワークに接続されたデバイスのオーディオやビデオ機能をユーザーが制御および監視するためのユーザーインターフェースを備えています。AES70準拠のネットワークでは、コントローラーは制御対象デバイスとの通信にAES70プロトコルを使用します。
AES70 は、コントローラとデバイス間で使用される制御プロトコルを定義します。その範囲は、コントローラまたはそのユーザー インターフェイスの設計や構築には及びません。
AES70は専門的な用途での使用を目的としています。このような用途の技術要件については、別途詳細に記載されています。[ 4 ] OCAの適用範囲には、家庭、自動車、その他の消費者向け用途は含まれません。
デバイスモデル
AES70デバイスモデルは、AES70準拠デバイスがネットワークに提供する制御インターフェースの標準的な記述です。AES70デバイスモデルはオブジェクト指向であり、デバイスの制御インターフェースが実装する必須およびオプションのオブジェクトセット(「OCAオブジェクト」)を定義します。AES70プロトコルを使用することで、コントローラーはこれらのオブジェクトのプロパティにアクセスし、制御、監視、および接続管理操作を実行できます。
OCAオブジェクトは、デバイスの制御・監視ポイントとメディア接続を表す抽象概念です。デバイス内の実際のプログラミングオブジェクトやハードウェアコンポーネントに対応する場合もあれば、対応しない場合もあります。デバイスがAES70プロトコルを正しく実装している場合、それはAES70に準拠しています。AES70では、その実装方法や実装すべき方法は定義されていません。
一般的に言えば、AES70デバイスモデルは他の制御アーキテクチャのデバイスモデルとは いくつかの点で 異なる傾向があります。 [ 5 ] [ 6 ]
- AES70 は階層的なデバイス構造を想定していません。
- AES70 では、特定の処理構成、信号処理モジュール、デバイス タイプ、またはデバイス ファミリは事前定義されません。
- AES70 では、コントローラーのユーザー インターフェイスまたはユーザー インターフェイス要素は定義されません。
- AES70 は、動的に再構成可能なデバイスを強力にサポートします。
- AES70 は、接続管理のための強力かつトランスポートに依存しないモデルを提供します。
- AES70 の管理およびハウスキーピング機能のレパートリーは比較的豊富です。
クラス構造
AES70クラス構造は、デバイスがOCAオブジェクトのインスタンス化に使用できる一連のクラス(「OCAクラス」)を定義します。クラスには以下の3種類があります。
- ワーカーは、ゲイン コントロール、レベル メーター、スイッチ、イコライザーなどのデバイスのアプリケーション機能を表します。
- さまざまな方法で制御機能を変更および支援するエージェント。
- さまざまなグローバルデバイスの状態を表すマネージャー。
OCA クラスは、大きく分けて 3 つの機能セットに分類できます。
- 基本的なデバイス管理およびハウスキーピング機能を提供する管理クラス。
- デバイスの操作に関係する制御および監視クラス。
- 接続管理クラスは、メディア ストリーム接続のセットアップ、監視、および切断、およびネットワーク デバイスの場所と識別のためのディレクトリ (別名「検出」) サービスに関係します。
プロトコル
前述の通り、AES70アーキテクチャは、使用されるネットワークメディアの性質に応じて複数のプロトコルをサポートしています。現在、AES70はOCP.1という1つのプロトコルを定義しています。OCP.1は、TCP / IPネットワーク用のAES70プロトコルです。将来的には、 USBネットワーク、Bluetooth接続、ポイントツーポイントリンク用のバイトシリアルバージョンであるOCP.2と、JSON形式のテキストバージョンであるOCP.3が計画されています。
各 AES70 プロトコルは、次の 3 種類のメッセージを定義します。
- コマンド- コントローラーからデバイス内のオブジェクトへの指示。何らかのアクションを要求したり、何らかのパラメーター値を取得したりします。
- 応答- オブジェクトからコントローラへの応答。前のコマンドの成功または失敗を示し、要求に応じてパラメータ値を返します。
- 通知- デバイス内のオブジェクトからコントローラーに自動的に生成されたメッセージで、何らかの条件の発生を示したり、信号振幅などのパラメーター値を定期的に報告したりします。
コントロールレパートリー
AES70の制御レパートリーは、オーディオデバイスの制御、監視、接続管理を網羅しています。将来のバージョンではオーディオ制御レパートリーが拡張され、ビデオデバイスにも対応する予定です。
AES70には、メーカーがOCAクラス構造を拡張して標準規格に含まれていない機能に対応できるようにする機能が含まれています。こうした拡張は、メーカーの選択に応じて公開または非公開にすることができます。
表 1 は、AES70-2015 の制御レパートリーをまとめたものです。
| メディア接続管理 | 信号処理 |
| - 接続制御 | - ゲインコントロール |
| - ディレクトリ/検出機能 | - ミュート |
| 追加機能 | - スイッチ(nポジション) |
| - コントロールのグループ化(〜VCA グループ) | - 遅延 |
| - クロスフェード | - イコライザー |
| - スナップショットとプリセットの管理 | - フィルター(IIRとFIR) |
| - 再構成可能なDSPデバイスのセットアップ | - リミッターとコンプレッサー |
| - 信頼性の高いファームウェアアップデート | - エキスパンダーとゲート |
| 信号監視 | - レベラー |
| - レベルセンサー(メーター) | - マトリックス |
| - 周波数センサー | - 信号発生器 |
| - 時間間隔センサー | - 任意の数値パラメータ |
| - 温度センサー | - 任意の文字列パラメータ |
| - 任意の数値パラメータ | + 必要に応じて独自の拡張機能 |
注目すべき機能
接続管理
AES70自体はメディアトランスポート機能を提供していませんが、最新のメディアトランスポート標準とのインターフェースを備え、信号ルーティングやその他の接続設定機能の制御、およびネットワークディレクトリ/検出サービスとのインターフェースを実現します。これにより、AES70はアプリケーションに有用なレベルの抽象化を提供し、コントローラとデバイスが単一の共通ソフトウェアモデルを使用して、様々なトランスポートアーキテクチャのストリーム接続を管理できるようにします。
OCAアライアンスは、AES70と様々な既知のメディアトランスポートアーキテクチャとのインターフェースに関する推奨プラクティスを定義しています。AES70と特定のメディアトランスポート方式とのインターフェース仕様は、AES70アダプテーションと呼ばれます。
コントロールグループ
AES70には、制御のグループ化、つまり単一の制御入力を使用して複数の動作パラメータを制御するという問題に対するアーキテクチャ的なソリューションが含まれています。制御のグループ化の例として、1つまたは複数のデバイスにおける複数のデバイスチャンネルをカバーするマスターゲイン制御が挙げられます。
制御のグループ化は、特に特定の動作パラメータが複数の制御グループの影響を受けるシステムでは、難しい問題を引き起こします。例えば、ステレオマルチウェイサウンドシステムでは、左チャンネルの高周波アンプのゲインは、(a) 全体の高周波レベル、(b) 左チャンネルレベル、(c) システム全体のレベルといったマスターコントロールの設定によって影響を受ける可能性があります。このようなシステムでは、パラメータ値のオーバーレンジまたはアンダーレンジにつながる累積的な設定の影響を管理するために、機械知能が必要です。AES70のグループ化メカニズムは、1台または複数のデバイスにおけるこのような管理の基盤を提供します。
スナップショットとプリセットの管理
AES70には、動作パラメータ値セットの適用、保存、呼び出し、アップロード、ダウンロードのための強力かつ汎用的なメカニズムが搭載されています。部分スナップショットと完全スナップショットの両方がサポートされています。
再構成可能なDSPデバイスのセットアップ
AES70は、再構成可能なDSPデバイス(信号処理トポロジを外部コントローラによって実行時に定義および再定義できるソフトウェアベースのデバイス)の構成管理を完全にサポートしています。このようなデバイスにおいて、AES70は信号処理要素とそれらを接続する内部信号パスの作成、構成、削除をサポートします。
独自の拡張性
AES70は、最大限の互換性を保ちながら、独自の拡張機能をサポートするように設計されています。メーカーは制御レパートリーに独自の拡張機能を定義することができ、それらは標準要素と問題なく共存します。
上位互換性 / 下位互換性
AES70デバイスとコントローラーは、AES70が今後進化していく中で、今後も相互運用性を維持していきます。OCAの様々なバージョンを使用するデバイスは、通常、1つのメディアネットワーク内で問題なく混在させることができます。
安全
AES70プロトコルは、安全な制御・監視ネットワークの構築を可能にする暗号化と認証オプションを提供します。完全に安全なメディアネットワークには、送信されるプログラムコンテンツの暗号化も必要です。このような暗号化のメカニズムはOCAAES70の範囲外ですが、AES70はそれらの設定と制御に使用できます。
信頼性の高いファームウェア更新機能
AES70は、ネットワーク経由でデバイスのファームウェアを確実に更新するためのプリミティブを定義しています。これらのプリミティブは、メンテナンスソフトウェアによって使用され、ファームウェアの不完全な更新によって重要なデバイスやネットワークが動作不能になることを防ぎます。
可用性
AES70はオープンでライセンスフリーの規格です。メーカーの選択に応じて、製品に自由に使用できます。AES70はOCAアライアンスによって育成・推進されていますが、AES70を使用するためにOCAアライアンスの会員である必要 はありません。
AES70ドキュメント
AES70の文書は、Audio Engineering Society (AES) Standards Storeから入手できます。この規格は、以下の3つのパートと2つの重要な付録で構成されています。
1. AES70フレームワーク
- OCFとしても知られるこの仕様は、AES70の全体的なアーキテクチャとそのメカニズムを規定しています。OCFは、「AES-1-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート1: フレームワーク」という文書で公開されています。[ 7 ]
2. AES70クラス構造
- OCCとしても知られるこの仕様は、AES70の機能レパートリー(接続管理、制御、監視)を定義するオブジェクト指向クラス構造を記述しています。OCCは、「AES70-2-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート2: クラス構造」という文書で公開されています[ 8 ] 。
- 読者は、この文書の付録 A を次の 2 つの形式のいずれかでダウンロードすることも重要です (説明については以下を参照)。
3. AES70プロトコル
- OCP.1、OCP.2 などとも呼ばれるこれらの仕様は、さまざまな種類のネットワークで OCA 制御を実装するプロトコルを説明しています。
- AES70-2015では、OCP.1というプロトコルのみが定義されています。これはTCP/IPネットワーク用です。今後の規格更新で、追加のプロトコルが定義される予定です。OCP.1は、「AES70-3-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート3:TCP/IPネットワーク用プロトコル」という文書で公開されています[ 11 ]。
- 読者は、この文書の付録 B を次の 2 つの形式のいずれかでダウンロードする必要があります (説明については下記を参照)。
付録
上記の 2 つの付録は、Universal Modeling Language (UML) 仕様です。
UML ファイルには 2 つの形式があります。
- *.eapファイルは、Sparx SystemsのUMLツール「Enterprise Architect」のマスターファイルです。このツールの通常版は240ドルですが、Sparx Systemsは無料のビューアを提供しています。
- *.xmiファイルは、UML情報の表現のための標準形式であるXMI 2.1のマスターファイルです。XMIは「XMLメタデータ交換」の略です。XMIファイルは、無料のものも含め、ほとんどのUMLエディタで開くことができます。詳しくは、XMLメタデータ交換をご覧ください。
OCAアライアンス
OCAアライアンス[ 14 ] は、OCAの標準化を推進するために設立された非営利団体です。2016年にAES70規格が発行されたことで、アライアンスの目的は進化し、現在は以下の通りです。
- マーケティング、教育、トレーニングを通じて AES70 の採用を促進します。
- AES70 準拠製品の開発者と AES70 システムのエンド ユーザーに役立つアドバイスと資料を提供することにより、AES70 標準を補完するドキュメントとツールを開発します。
- 他の標準化団体と連携して、AES70 と他の業界のメディア ネットワーキング標準、特にメディア プログラム転送に関連する標準との最適な融合を実現します。
- AES70 標準に対する推奨される拡張機能の開発。
アライアンスのメンバーは、AES70の発展を主導し、業界団体が提供する技術およびビジネス情報の交換から利益を得たいと願う大小さまざまな企業です。新規メンバーはいつでも歓迎いたします。
利用可能な開発ツール/コード
AES70 互換製品の開発を開始するのに役立つ開発ツールやオープン ソース コードが多数用意されています。
- C++ でのデバイス実装例は、https://github.com/OCAAlliance/OCAMicroからダウンロードできます。
- AES70 Explorer - AES70 デバイス開発用の無料開発ユーティリティ。https ://aes70explorer.com/からダウンロードできます。
- 無料ツールはhttps://ocaalliance.github.io/downloads.htmlからダウンロードできます。
- JavaScript コントローラー ライブラリはhttps://github.com/DeutscheSoft/AES70.jsからダウンロードできます。
- AES70.js を含む npm パッケージはhttps://www.npmjs.com/package/aes70から入手できます。
- Swift コントローラー ライブラリとデバイス実装は、https://github.com/PADL/SwiftOCAからダウンロードできます。
参考文献
- ^ オープン コントロール アーキテクチャ アライアンス、 http://ocaalliance.com/
- ^ AES24-1-1999 (w2004): サウンドシステム制御のためのAES規格 - デジタルデータネットワークを介してオーディオデバイスを制御および監視するためのアプリケーションプロトコル - パート1: 原則、フォーマット、および基本手順。2004年: Audio Engineering Society、ニューヨーク。
- ^ AES24-2-tu (w2004): サウンドシステム制御のためのAES標準案 - デジタルデータネットワークを介してオーディオデバイスを制御および監視するためのアプリケーションプロトコル - パート2、データ型、定数、およびクラス構造(試用用)。2004年:Audio Engineering Society、ニューヨーク。
- ^ Jeffrey Berryman、「プロフェッショナル メディア ネットワークの技術基準」、AES 44th Conference on Networking の議事録、サンディエゴ、2011 年。
- ^ 米国規格協会(ANSI)「E1-17:制御ネットワークのアーキテクチャ」。ACNの定義。17の文書と関連ファイルを含むパッケージ。http: //webstore.ansi.orgで入手可能。
- ^ Richard FossとAndrew Eales、「ネットワークオーディオデバイスの標準モデルに向けて」、AES第44回国際会議「オーディオネットワーキング」論文集、サンディエゴ、2011年。現在のメディアシステム制御プロトコルに関する役立つ概要が含まれています。
- ^ AES70-1-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート1:フレームワーク。http ://www.aes.org/publications/standards/search.cfm ?docID=101 。オーディオエンジニアリング協会、2016年1月。
- ^ AES70-2-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート2。http ://www.aes.org/publications/standards/search.cfm ?docID=102 。オーディオエンジニアリング協会、2016年1月。
- ^ AES70-2-2015 付録A(エンタープライズアーキテクト形式) http://www.aes.org/standards/models/AES70-2-AnnexA-151112-class-structure-1.eap . Audio Engineering Society、2016年1月
- ^ AES70-2-2015 付録A(XMI形式). http://www.aes.org/standards/models/AES70-2-AnnexA-151112-class-structure-1.xmi . Audio Engineering Society、2016年1月。
- ^ AES70-3-2015: ネットワークのオーディオアプリケーションのためのAES標準 - オープン制御アーキテクチャ - パート3:TCP/IPネットワークのプロトコル。http ://www.aes.org/publications/standards/search.cfm ?docID=103 。オーディオエンジニアリング協会、2016年1月。
- ^ AES70-2-2015 付録A(エンタープライズアーキテクト形式) http://www.aes.org/standards\models/AES70-3-AnnexB-151112-tcpip-protocol-1.eap . Audio Engineering Society、2016年1月
- ^ AES70-2-2015 付録B(XMI形式). http://www.aes.org/standards/models/AES70-3-AnnexB-151112-tcpip-protocol-1.xmi . Audio Engineering Society、2016年1月。
- ^ オープン コントロール アーキテクチャ アライアンス、 http://ocaalliance.com/
外部リンク
- http://ocaalliance.com/、OCA アライアンスの Web サイト。
- http://www.aes.org/standards、Audio Engineering Society の標準規格ページ。AES 標準規格への参加は誰でも可能です。AES の会員である必要はありません。
- https://github.com/OCAAlliance/OCAMicroは、AES70プロトコルのデバイス実装です。OCAアライアンスメンバーによってサポートされています。