Phonon
Phonon(フォノン)はLinuxデスクトップ環境であるKDE 4向けに開発されたクロスプラットフォームのマルチメディアAPIである。Phononは、Unix系デスクトップにおけるマルチメディア環境に関する諸問題を解決することを目的として開発された。
Phonon自体はマルチメディアフレームワークではないが、バックエンドを通じてGStreamerやXineのような既存のフレームワークの橋渡しを行う機能を有し、開発者はPhononがサポートするあらゆるマルチメディアフレームワークに単一のAPIを通じてアクセス出来るようになる。これによって、フレームワークが放置されることやAPIの不安定性、KDEが単一のフレームワークに依存することなどの諸問題を回避できる。
また、Unix系のデスクトップ以外にも利用可能であり、現在WindowsやMac OS Xをサポートするためバックエンドの開発が進められている。
Phononの使用例を挙げると、たとえば音声ファイルは以下にある数行の絶対パスで記述されたC++コードのみで再生可能であり[1]、既存のオーディオフレームワークであるaRtsよりも少ないコードで済む[2]。
MediaObject *media = new MediaObject(this);
media->setCurrentSource("/home/username/music/filename.ogg");
media->play();
Phononは開発者による冗長かつ困難な作業を減らし、全てのマルチメディア機能を備えるわけではないが、メディアプレイヤーの一般的な機能を単純に実行することが出来るようになる[2]。
機能
[編集]Phononは、様々なバックエンドと開発者がエンジン (engine) と呼んでいるシステムを橋渡しする。それぞれのエンジンはある特定のバックエンドと一緒に動作し、それぞれのバックエンドはPhononに再生、停止、シークなど基本的な機能をコントロールさせる。また、トラックのフェードなどの機能もサポートされる予定である[3]。
- 2008年4月23日現在、Unix系のシステムでサポートされているバックエンドはxine、GStreamer、VLC、MPlayerである[4]。
- WindowsでサポートされているバックエンドはDirectX、VLC、MPlayerである。
- Mac OS XでサポートされているバックエンドはQuicktimeである。
Phononはマルチメディアフレームワークをリアルタイムで替えることが可能であり、ユーザーが音楽を聞いている間であってもわずかな時間で交代することが出来る。Phononを用いているシステム上の全てのアプリケーションに影響するため、フレームワークの変更は簡単になると見られている。
さらに、Solidを利用しており、ユーザーはヘッドセットや、スピーカー、マイクなどの機器をより制御できるようになる。例えば、ヘッドセットを用いてインターネット電話で会話している最中でも、音楽など別のサウンドはスピーカーから流すよう設定することが出来る。
Trolltech
[編集]Qtの開発元であるTrolltechは、バージョン4.4のリリースでPhononを利用し、クロスプラットフォームでオーディオ・ビデオを取り扱えるようになった。
脚注
[編集]- ^ Kretz, Matthias. “MediaObject Class Reference”. 2007年12月19日閲覧。
- ^ a b Sanders, N. (2006年5月9日). “Phonon and the future of KDE multimedia”. 2007年12月19日閲覧。
- ^ Unrau, Troy (2007年2月6日). “The Road to KDE 4: Phonon Makes Multimedia Easier”. 2007年12月19日閲覧。
- ^ Krotoff, Tanguy. “VLC and MPlayer backends”. 2008年5月1日閲覧。