Lyra. Silverlight 2 MediaElementを操作するJavascriptライブラリ

LyraというOpenSourceをリリースします。

http://api.x-jukebox.com/lyra/
Silverlight2のMediaElementをJavascriptからコントロールするライブラリです。LyraはSilverlightアプリケーションとJavascriptのセットになっています。

.NET(WPF/E)のWindows.System.Controls.MediaElementのシンプルなラッパーです。

Javascriptの呼び出しでSilverlight側のMediaElementを操作できるのはもちろん、Silverlight側のイベントもJavascript側で処理できます。Silverlightがあることをあまり意識せずに使うことができます。

このライブラリを使ってWebアプリを作る場合、ユーザが使うブラウザにSilverlight2がインストールされている必要があります。

現状、javascriptから、.NET側のMedia.Elementコントロールの生成やビデオウインドウの管理などに懸念があるため、Media.Elementはシングルトンでしか使えません。またビデオウインドウにも対応していません。

作成のきっかけは、mRadioのfirefox対応でSilverlightアプリケーションを作ろうとしたときに、「SilverlightでUIつくるの(学習も含めて)面倒くささそうだなぁ。まてよ、Silverlightはメディアの再生だけつかってUIはそのままJavascriptのUIライブラリで作ったらよくね?」というところから来ています。

従来Windows Mediaのストリーミング再生をWebサイトで行う場合はWindows Media Player.ocxをページに貼り付けることが多いと思いますが、ocx(ActiveX)はIEでしか使えないためfirefoxなどのIE以外のブラウザでは非対応にせざるを得なかったと思います。

CrossBrowserでコンテンツを配信するには、YouTubeに代表されるようにFlashPlayerで再生できるコンテンツを用意することが多かったと思いますが、著作権保護の課題もあります。

著作権保護がらみで(しかたなく?)Windows Mediaで配信しているようなサイトではLyraを使うことでSilverlightの知識を要せずにサイトをfirefox対応するようなことができるんじゃないかと期待しています。

まずはpilot projectとしてmRadioのfirefox対応をLyraを使って実現するつもりです。