コンテンツにスキップ

「OpenAL」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
最新版を1.19.1に変更・リンク切れの旧公式サイトのURLの削除
Cewbot (会話 | 投稿記録)
m Bot作業依頼: ブランドとしてのXboxの記事作成に伴うリンク修正 - log
80行目: 80行目:
* [[PlayStation 3]]
* [[PlayStation 3]]
* [[PlayStation Portable]]
* [[PlayStation Portable]]
* [[Xbox]]
* [[Xbox (ゲーム機)|Xbox]]
* [[Xbox 360]]
* [[Xbox 360]]
* [[ニンテンドーゲームキューブ]]
* [[ニンテンドーゲームキューブ]]

2020年1月1日 (水) 08:56時点における版

OpenAL
作者 Loki Software
開発元 クリエイティブテクノロジー
最新版
2.1 / 2010年7月20日 (13年前) (2010-07-20)
プラットフォーム クロスプラットフォーム
サポート状況 Ver.2.1.0.0はCreative X-fiカードのみ対応
種別 サウンドライブラリ
ライセンス 初期はBSDライセンス
1.1まではLGPL
それ以降はプロプライエタリ
公式サイト www.openal.org ウィキデータを編集
テンプレートを表示
OpenAL Soft
最新版
1.19.1 / 2018年10月12日 (5年前) (2018-10-12)
プログラミング
言語
C
プラットフォーム クロスプラットフォーム
種別 サウンドライブラリ
ライセンス LGPL
公式サイト openal-soft.org
テンプレートを表示

OpenAL (Open Audio Library)はクロスプラットフォームのオーディオAPIであるフリーソフトマルチチャンネル3次元定位オーディオを効率よく表現するように設計された。APIのスタイルと慣習は意図的にOpenGLと似せてある。

歴史

ロキソフトウェア (Loki Software) が商用のWindows用ゲームをLinuxに移植しやすくするためにOpenALを開発したのがオリジナルである。ロキが消滅してしばらくの間はフリーソフトウェア/オープンソースのコミュニティで保守され、NVIDIAのnForceサウンドカードやマザーボードに実装されていた。現在はアップルやフリーソフトウェア/オープンソースの開発者の支援を受けながら、クリエイティブテクノロジーが開発の大部分とホスティングを担っている。

OpenGLの「アーキテクチャレビュー委員会 (ARB)」を手本に、OpenALでもARBの存在が宣言されているが、そのような組織がこれまでに設立されたことはなく、OpenALの仕様は主にメーリングリストで取り扱われ議論されている。

1.1からクリエイティブテクノロジーは実装をプロプライエタリとした。最後のオープンソース版はSubversionのリポジトリから入手可能である。しかし、OpenAL Softがオープンソース版の代替として広く普及した。

APIの構成と機能

OpenALの主要機能はソースオブジェクト、オーディオバッファ、単一のリスナーで処理される。ソースオブジェクトは、バッファ、ベロシティ、ポジション、サウンドの方向、サウンドの強度などへのポインタである。リスナーオブジェクトはベロシティ、リスナーの位置と方向、全てのサウンドに対する全体の利得である。バッファは8または16ビットのモノラルまたはステレオPCM形式のオーディオデータである。レンダリングエンジンは距離による衰弱やドップラー効果などの計算を処理する。

エンドユーザーの視点から見れば、適切に記述されたOpenALアプリケーションであれば、仮想世界の三次元空間をユーザーが移動したものとしてとても自然に聞こえる。プログラマーの視点で見れば、OpenGLベースの既存の3D映像アプリケーションにちょっとした追加をするだけでこれを実現できる。

OpenGLの仕様と異なり、OpenALの仕様はAPIに2つのサブセクションを含む。実際のOpenAL関数コールで構成されるコア部分と、クロスプラットフォームを実現するためのコンテキストのレンダリングやリソースの使用状況やそのロックを管理するALC APIである。それに加え、OpenGLのGLUTと同様に上位レベルの「便利な」機能を提供するALUTライブラリが用意されている。

将来的な機能拡張のため、OpenALはエクステンションのメカニズムを有する。これにより各ベンダーはプロプライエタリなハードウェアの追加機能を実装するために独自のエクステンションをOpenALのディストリビューションに含めることができる。エクステンションは互換性が維持のため、ARBに提出して標準化することができる。ARBエクステンションは一定期間経過後にコアAPIに追加されることが望まれる。

移植性

このAPIは下記のプラットフォームで利用可能である。

アプリケーション

ゲーム:

その他のアプリケーション:

  • Blender - 3Dモデリング・レンダリングツール。
  • Unity - 3Dゲームエンジン及びゲーム開発統合環境。
  • ..Basic4gl - コンパイラとプログラミングソフトウェア。

OpenALのウェブサイトにてより完璧なリストを確認できる。

ラッパー

関連項目

外部リンク