| OpenML 概要 |
Language Translation courtesy of RealVision Inc.
OpenML 動的メディア編集のための標準

OpenMLは、キャプチャ、2D/3Dグラフィックス及びオーディオ/ビデ・ストリームを含むデジタルメディアの転送、処理、表示及び、同期を行うための、ローヤリティフリーのクロスプラットフォーム・プログラミング環境です。OpenML1.0は、プロフェッショナル・グレードのサンプルレベルのストリームの同期や、ビデオ処理を高速化するためのOpenGLエクステンション、MLdcプロフェッショナル表示制御API、アプリケーションと処理ハードウエア間の非同期なメディアストリーミングのためのMLフレームワークを定義します。
OpenMLは、デジタルメディア(2D及び3Dグラフィックス、オーディオ、ビデオ処理、I/Oネットワーキング)を取り込み、転送し、表示し、同期するためのクロスプラットフォームの標準プログラミング環境です。いかなる開発者も、会社も、自由にOpenML仕様書及びSDKをダウンロードし、完全に使用量、ローヤリティあるいはライセンスの無いOpenMLを使用した製品を開発し、出荷することができます。
OpenMLを使用した際の開発者の利点
- 標準化
OpenMLは、要求された機能と統合(言い換えるとハードウエア上の可能な限り薄い階層)を供給する最下層でのオーディオ、ビデオ、2Dグラフィックス、3Dグラフィックスのサポートを標準化します。 - ポータブル
OpenMLは、組込システムからハイエンドのワークステーションまで広範な動作環境をサポートします。 - 信頼性
OpenMLは、可能な範囲内での既存の標準の主要部分内で、既存の検証済み標準や研究を利用しています。 - ドキュメント
OpenMLは、この標準の開発を迅速に行うための同一性テストや性能テスト、その他のツールととともに、構成要素たるAPIの開発サンプルを供給します。 - ローヤリティ及びライセンスなし
OpenMLは、複数のプラットフォームに対応した無償かつオープンな標準であり、完全に無償且つ、ローヤリティあるいはライセンス無しに、開発者は、ダウンロードし、開発し、OpenMLを使用した製品を出荷することが出来ます。
OpenMLホワイトペーパーとOpenML SDKビギナーズガイド
-
OpenML
Whitepaper(2004年4月更新)( PDF 、 848K バイト)
OpenMLを開発するにいたった動機、OpenMLの基本アーキテクチャ、アプリケーションのプロフィールについて記載した資料。 -
OpenML
1.0 Media Library Software Development Kit Beginner's Guide
このオンラインマニュアルは、OpenML Media Library Software Development Kitの紹介になっています。OpenMLは、オーディオ及びビデオI/Oデバイスとトランスコーダーをサポートするデジタル・メディア・ハードウエアを制御するための複数のプラットフォームに対応したライブラリを提供しています。
複数プラットフォームに対応した、動的メディア編集及び再生に関連した問題点と、それらをOpenMLフレームワークによりどのように対応されるのか?
ビデオ制作に従事するか、ゲーム開発を行っているか、対話型のディスクを作っているかに係らず、コンテンツ・クリエータは、現在多くの異なるベンダーから供給される異なるAPIやツールを使用せざるを得なくなっており、これら複数のアプリケーションとハードウエア周辺機器を、効率良く結び付けて運用することが必要です。
同様にアプリケーション開発者は、このような状況において、システム内の多様なハードウエア部分にアクセスするために使用するAPIに関し、幾つかの大変難しい決定をしなければなりません。このような仕事のほとんどは、ハードウエア及びオペレーティング・システムに依存し、且つ必要な性能を得るためには、手作業による最適化が必要とされます。
OpenMLのゴールは、この状況を改善することにあります。OpenMLは、複数のプラットフォーム、オペレーティング・システム、ハードウエア・デバイス、ソフトウエア・アプリケーションにまたがるインターオペラビリティのための一般仕様を提供します。このような標準の存在は、コンテンツ開発者が、アプリケーションやハードウエアを組合せ、再生中に利用できるか出来ないか分からないようなハードウエアを考慮することなく、彼らのマルチメディア・コンテンツを開発することを可能にします。アプリケーション開発者が、アプリケーション開発に、より多くの時間とエネルギーを注ぐことができるようにし、デバイス制御や同期、バッファリング問題などの「雑事」に費やす時間を短縮します。 また、それぞれの動作環境における、ビデオやグラフィックス、オーディオの異なるAPIを処理するという、厄介な仕事からも解放されることになります。
OpenMLは、検証済みのテクノロジーを使用した、インテグレーションから制御プログラムに至る、明確なソリューションを提供します

OpenMLプログラミング環境のアプリケーション・プログラマーからの見え方
下図は、プログラマーから見た場合のOpenML環境の主要な部品を表しています。青い背景で示された部分は、既存の部品であり、OpenMLプログラミング環境が、どのような方法でアクセスされた場合でも変わりません。赤い背景の部分は、OpenMLで新たに導入された部分です。
| |
|
| Window System |
OpenGL |
OpenGL Extensions |
MLdc |
ML |
||||
| Synchronization | ||||||||
![]() |
||||||||
Window System
この領域では、クロスプラットフォームの標準化の実現を図るよりも、OpenML環境は、もともとのWindows環境と単に共存する方式を取っています。
OpenGL
OpenGL は、2Dイメージングや3Dグラフィックスを行うための主要なクロスプラットフォームAPIであり、OpenGLのコア部分が、OpenMLにより変えられるようなことはありません。
OpenGL Extension
OpenGLの拡張部分は、レンダリング性能や品質を改善し、ビデオ形式をより扱いやすくするために、システムの他の部分との同期を行うための機能を実現します。各兆部分には、以下のものが含まれます。
- UST/MSC情報を使用した同期
- レンダリング及びインターレース・ビデオ・イメージの書き込み
- YCrCbといったビデオ・ピクセル形式の直接サポート
- ビデオ・イメージ形式内でのクロマのアップあるいはダウン・サンプリングの制御
- 合成機能をサポートする拡張テクスチャリング機能
- 冗長なピクセル動作のための非同期処理
MLdc 表示制御
OpenML表示制御API(MLdc)は、ビデオ出力デバイスを制御するためのパラメータを初期化し、セットし、変更するインタフェイスを提供します(すなわち、ガンマ補正テーブルをセットし、ゲンロック通知を供給し、ビデオ形式をロードし、ビデオ出力のゲインをセットし、ペデスタル・レベルをセットし、垂直ゲンロック・フェーズを変更するなど)。ビデオ出力デバイスは、ビデオ出力ポートから出力されるビデオ・ストリームを生成し、制御します。このビデオ・ストリームは、通常直ちに一般的なモニタ上に表示されるものを意味します。MLdcにより制御されるビデオ出力デバイスは、通常のWindowシステムにより認知されているかどうかは分かりません。MLdcはまた、モニターとの間でコマンドを送受信することのできる機能を持っています。
ML デジタル・メディア I/O
は、OpenMLプログラミング環境における、デジタル・メディアI/O、デジタル・メディア・データ変換及びデジタル・メディア同期機能へのアプリケーション・プログラミング・インタフェイスを提供します。MLは、OpenGLがローレベルのAPIであると考えられているのと同様の意味でローレベルAPIということが出来ます。小さなやり方を強いるという方法で、基本となるハードウエアの能力を明らかにします。
MLの主要な機能は、以下の通りです。:
- アプリケーションと、ビデオ入出力、オーディオ入出力、及びグラフィックスといったメディア・ディバイス間での非同期通信をサポートします
- 複数のデジタル・メディア・ストリームを関連付け、それらの表示をエンドユーザーにコーディネートする機能をアプリケーションに与える同期プリミティブを提供します
- デジタル・メディア・ストリームのための処理機能(トランスコーダー)を提供します
- デバイス制御及びデバイス機能の確認機能を提供します
- デジタル・メディアのスムースな配信をサポートするバッファリング・メカニズムを提供し、与えられたシステムにおいて可能となる最大の性能を実現します
オーディオ、ビデオ及びグラフィックスの同期
以下は、正確なタイミングと情報の同期を提供するシステムの機能である。Unadjusted System Time (UST)は、システム全体をとおして使用可能な、単調増加する64ビット高精度カウンターです。さらに、OpenML環境内のそれぞれのメディア・デバイスは、Medial Stream Counter (MSC)を持つことが必要とされます。MSCは、そのデバイスのために発生するそれぞれのメディア・イベントごとに増加します。
ライセンシングとOpenML
OpenMLの開発と仕様に関しては、3つのレベルの参加方式が用意されています。
- アプリケーション開発者 - いかなる開発者も企業もOpenMLの機能をハードウエア製品あるいはソフトウエア製品に組み込むため、OpenML仕様及びSDKを無償で使用することが出来ます。OpenMLは、クロスプラットフォーム対応、無償、オープン標準であり、開発者は、料金なし、ローヤリティなし、ライセンス無しで、OpenMLを使用した製品を開発し、出荷することが出来ます。
- コントリビューター - オープン・メンバーシップ、最小の年会費、ワーキング・グループへの参加及び投票が可能
- プロモーター - 本グループの創設者、Khronosの組織を運営し、OpenML標準を策定し、最終裁可の投票権を持つ
OpenMLは、ハードウエア及びソフトウエア供給者のためのデジタル・コンテンツ市場の成長を可能にするキーテクノロジです。OpenMLは、アプリケーション開発者が、価値提案に集中できるようにし、開発した製品が新たなプラットフォームに移行することを容易にし、現れたビジネス・チャンスから迅速に対価を得ることを可能にします。
Language Translation courtesy of RealVision Inc.
All contents copyright © 2008 Khronos Group. All rights reserved. All product names are trademarks or registered trademarks of their respective holders.


