レポート

「第9回 HTML5とか勉強会」活動報告

この記事を読むのに必要な時間:およそ 2.5 分

Behind the Geolocation

2番目のLTは,takorattaさん。ブラウザからユーザーの現在の緯度経度情報を取得するAPIのGeolocationについて講演を頂きました。

Geolocationは,もともとはGearsで検討が進められたものがHTML5の関連仕様に盛り込まれたもので,各種デバイスの機能を活用し,ユーザーの緯度経度情報を取得するものです。例えば,iPhoneやAndroidなどGPSを積んでいるデバイスであればその情報から,またラップトップPCであればWiFiアクセスポイントのMACアドレスから取得します。これらの取得方式は電波状況によっては取得困難ですので,最終的にはIPアドレスから取得するのですが,これを用いた場合,その精度は極端に悪くなります(とても現在地とは言えないケースが殆ど⁠⁠。

そのような状況で,いかに精度の高い場所情報を取得するかについて,最近のトレンドも併せて紹介頂きました。ユーザーが普段入力する場所情報も活用して現在地を類推する検討も行われているとのことで,大変興味深く感じられました発表資料はこちら⁠。

Twitter Streaming over WebSocket

3番目のLTは,遠藤さん。TwitterのStreaming APIで取得したつぶやきをWebSocketを用い,ブラウザ上に表示するデモが紹介されました。

TwitterのStreaming APIはHTTP Streaming(HTTPのコネクションを開いたまま,データをPUSH型で流し続ける)のテクニックを使い,public timelineなどを取得するAPIです。通常のGET型のAPIとは異なり,定期的にポーリングをかけなくてもtweetを取得できますし,twitterの障害時に通常のAPIが落ちていても,このAPIでは取得できることが良く見られますので非常に便利なAPIです。

ただし,このAPIは(XML HTTP Request level2に対応していないため)Javascriptからはコールすることはできません。そこで,WebSocketサーバーがproxyとなる形で,このAPIをリレーしてブラウザにtwitterのタイムラインをリアルタイム表示する方法がデモを通して説明されました。TLが流れて行く様子が視覚的にわかりやすく,また取得状況をグラフ表示してくれるなど,大変興味深い内容でした発表資料はこちら⁠。

WebSRT

4番目のLTは,ダニエルさん。Videoに字幕を追加するAPIのWebSRTが紹介されました。

WebSRTはSubRipのフォーマットを利用し,Videoに字幕などの情報を追加するAPIで,現状サポートしているブラウザはありません。しかしながら,このAPIをエミュレートするJavascriptが公開されているとのことで,こちらを用いダニエルさん自身が話をされているビデオ(英語)に日本語の字幕を入れるデモが行われました(詳しくはこちら⁠。

WebSRTにより,アクセシビリティがあがるのはもちろん,テキスト情報により検索エンジンから認識可能となるためSEOとしてのメリットやテキスト連動で,他の情報とのマッシュアップを行いやすくなるなどの様々なメリットを非常に分かりやすく説明いただきました。

Java VM on HTML5

最後に小林さんより,HTML5で実装したブラウザ上で動くJava VMについて講演をいただきました。最初にタイトルを見た際「まさか」と思ったのですが,Java VMを見事にjavascriptでエミュレーションしたもので,まさに驚愕のLTでした。

開発されたのは,auやSofrBankの携帯でアプリを作成する際に用いるJAVAの規格であるMIDPをJavascriptでエミュレートしたものです。この上では,MIDPで開発したjavaのクラスファイルをJavascriptに変換したもの(バイトコードをそのまま変換しているイメージ)が動作するとのことで,実際に携帯のゲームアプリをブラウザ上で動かすデモが行われました。

描画にはcanvasを用い,またVMのマルチスレッドをエミュレートするためにsetTimeoutを駆使しているとのことでした。HTML5でスレッドというとWebWorkerが思いつくところですが,WebWorkerはデータ共有のIFが遅いため,この用途では利用が困難であるとのことでした。

なお,このエミュレータはiPhone4およびAndroid2.2であれば動作するとのことで,最後にAndroidでMIDPのアプリを動かすデモが行われました発表資料はこちら⁠。

最後に

本勉強会は,毎月第3水曜日に開催しています。開催のアナウンスはhtml5-developers-jpで告知されますので,興味のある方はチェックしていただければ幸いです。来月も開催予定です。お楽しみに。

なお,筆者が管理しています,こちらのサイトEvents in HTML5-jpで開催状況や,過去のアーカイブなども公開しておりますので,是非ご活用ください。

著者プロフィール

小松健作(こまつけんさく)

NTTコミュニケーションズ 先端IPアーキテクチャセンタ リサーチエンジニア。上位層プロトコル及びWebテクノロジの技術開発に取り組む。また,「html5とか勉強会」のスタッフをつとめる。 好きな言語は,JavascriptとRuby。

Blog:http://blog.livedoor.jp/kotesaki/

Twitter:@komasshu