Hatena::ブログ(Diary)

自称スーパーハッカーの適当なプログラミング雑記等

2010-08-06

ニコニコ動画をHTML5で再生するBookmarkletをChrome拡張にしてみた

| 06:05

ニコニコ動画HTML5で再生するBookmarklet「NicoHTML5」(http://d.hatena.ne.jp/saiten/20100225/1267110155)をGoogle Chromeの拡張にしてみました。

注意: この拡張にはまだうまく動かないところや変な動作をするところもあるので、使用は自己責任でお願いします。

さらに、HTML5再生に対応した動画(H.264形式)ではコメントができなくなってしまいます。(元のBookmarkletの仕様)

Google Docsアップロードしておきました。ダウンロード

ソースコードzip圧縮してアップロードしています。ダウンロード

Bookmarkletが読み込むJavascriptを少し書き換えて、拡張の一部にして使っています。

HTML5再生に対応した動画(H.264形式)か、そうでないかを判定し、自動的に切り替えるようになっていますが、少し変なところもあるようです。

ただ拡張にしただけではなく、元のBookmarkletXMLHttpRequestの制限により、再生するのに一つ手間がかかるのですが、

クロスドメイン通信ができる拡張では、それがいらなくなっています。

大部分はContent Scriptsで作られていますが、Content Scriptsだけではクロスドメイン通信ができないので、動画情報データの取得部分だけはBackground Pagesを使ってやっています。

Content Scriptsのコードとscriptタグで読み込まれたスクリプトの間でデータを受け渡すのに、受け渡し専用のdivタグを入れたりと変な方法を使っています。

トラックバック - http://d.hatena.ne.jp/tana-laevatein/20100806/1281042302
Connection: close