半年くらい前の情報になってしまいますが、Flash Player 9 Update 3で対応した「ハードウェア機能を利用したフルスクリーンモード」について調べてみました。
まずは、サンプル(要 FlashPlayer 9.0.115 以上)です。
エリアをクリックするとフルスクリーンになります。
実際にどうくんでいるかというと比較的簡単な手順でできます。
Flash側の処理
まずFLASH側ですが、ボタンアクションに以下のコードが書いてあります。
on( release ){
import flash.geom.*;
if( Stage["displayState"] == "normal" ){
Stage["fullScreenSourceRect"] = new Rectangle(0, 0, Stage.width, Stage.height);
Stage["displayState"] = "fullScreen";
} else {
Stage["displayState"] = "normal";
}
}
HTML側の処理
あと、HTML側でもallowFullScreenパラメータをtrueにします。デフォルトだとたしかfalseです。
以下はAC_RunActiveContent.jsの場合ですが、
'allowFullScreen', 'true', // デフォルトでfalse
と、こんなかんじです。
ソースコードはこちら。
結局、このフルスクリーン機能どういうことかというと、ハードウェアのスケーリング機能により描画されるため従来のフルスクリーンモードよりも格段に表示速度が上がるそうです。窓でコンテンツを覗き込むようなイメージです。
via:akihiro kamijo: Flash Player の新しいフルスクリーンモード
すばらしい機能ですが、まだ気になる部分もあるなぁと。
以下、雑感。
- FlashPlayer 9.0.115以降の対応に限られる(下位互換はない)
- 2007年12月には配布されたばかりで普及率はまだ低い
- 下位互換の機能ではないので、ユーザーにPlayerのアップデートを強いる
- セキュリティ上の配慮で、キーイベントがEscキー以外取れない
- 解除するはずのEscキーが一部ブラウザ取れない(Sleipnirなど)
- つまりEscキーに頼らないでもフルスクリーンの解除が必要
- 最初に出る「フルスクリーンを解除するにはEscキーを押してください」という文言はカスタマイズできない。
まぁ、2008年5月の時点ではこういわざる得ないですけどね。自分はYoutubeやニコニコ動画に既にフルスクリーンモードが入っているのはよく使っています。あれって注目して楽しく見れるんですよね。
良い機能なので、機会があればゆくゆくは実装していきたいと思います。
[参考文献]
H.264に正式対応の「Flash Player 9 Update 3」が公開
Adobe - Developer Center : Introducing Flash Player 9 Update 3
akihiro kamijo: Flash Player の新しいフルスクリーンモード
- Newer: Urchinの読み方はアーチン
- Older: 新しいブログ始めました。