MAX2011

Adobe MAX 2011レポート:Flash Player 12(?)の新機能

Adobe MAX 2011から「The Incubator: Test the Bleeding-Edge Capabilities of the Flash Platform」のセッションレポートです。
なんのことかと思ったら、なんとFlash Player 12以降のお話でした。
Flash Player 11には、Stage3Dなどの有名な新機能のほかに、JDI(Just Do It)と呼ばれるコミュニティーがリクエストした機能、忘れられていたAPIが盛り込まれています。プレイヤーの機能開発としては小さなものだそうですが、どれもインパクトのある機能です。

Flash Player 11のJDI

・大きさ無制限のBitmap。描画APIを使った場合も凄く大きいところに描ける。大きすぎるときは勝手に内部で分割する?(著者未確認)
・MovieClip.isPlaying()
・DisplayObjectContainer.removeChildren()
・Sound.loadPCMFromByteArray() 16bit int, 32bit float
・Sound.loadCompressedDataFromByteArray() MP3のみ
・LZMA SWF圧縮(SWF13以降、Flash Pro CS6以降)
・JPEG-XR画像読み込み
これらも凄いが、でも、これで止まるわけにはいかない!

まもなくIncubatorに入るもの

・BitmapData V2.0
・Soundオブジェクトがさらなるフォーマットに対応
 AAC/ADTS (streaming)
 AAC/MP4 (iTunes)
・StageVideo.attachCamera() / Stage3D.transparency
・Camera.drawBitmapData() / Camera.copyToByteArray() / renderイベント.
・ThrottleEvent
・Context3D.setProgramConstantsFromByteArray()

BitmapData V2.0とは?

忘れられていたAPI

・BitmapData.draw2()
 レンダリング品質としてlow, medium, highを指定できるdraw
・BitmapData.compress()
 PNG, JPEG, JPEG-XR

最適化されたAPI

・BitmapData.flip(mode:String):void;
・BitmapData.resize(new_width:int, new_height:int, mode:String):void;
・BitmapData.mipmap():void;
・BitmapData.grey(format:String, colorTransform:ColorTransform):void;
・BitmapData.crop(r:Rectangle):void;
・BitmapData.copyToByteArray(rect:Retangle, destination:ByteArray):void;
・BitmapData.copyToVector(rect:Rectrangle, destination:Vector.):void;

画像処理のための高度なフィルタ

・BitmapData.integral()
・BitmapData.sobel()
・BitmapData.laplacian()
・BitmapData.canny()

新しい内部フォーマット群

・format_rgba_8: 4 bytes/pixel, RGB + alpha(これまでのもの)
・format_bgrx_8: 4 bytes/pixel, RGB + Unused component
・format_l_8: 1 byte/pixel, grey
・format_la_8: 2 bytes/pixel, grey + alpha
・format_l_32f: 1 float/pixel, grey
・format_la_32f: 2 floats/pixel, grey + alpha
・format_rgba_32f: 4 floats/pixel, RGB + alpha

JDIのリストにあるもの(調査中)


・右クリック、真ん中クリックのサポート(Flash Player)
・フルスクリーン時のマウスロック
・ApplicationDomain.getDefinitions()
・Vector.sortOn()
・BitmapのクリップボードAPI(Flash Player)
・同期Loader.loadBytes()
・FrameLabelイベント

「Broadcastレンダリング」(Flash Player)

これまでのFlashのQuality設定

Low (アンチエイリアスなし)
Medium (2×2 アンチエイリアス)
High (4×4 アンチエイリアス)
Best (4×4アンチエイリアス+oversampled bitmap downscale)

新しいQuality設定

Broadast (16×16 autoplay only)

リニアブレンディング

ブラーかけた紫と水色のオブジェクトを重ねても、間が黒くならない。

いかがでしたか。セッションタイトルからは想像もつかない、わくわくする内容だったと思います。デモで使われていたプレイヤーにははっきりと「Flash Player 12」と書いてありました。
僕は、グレースケール化、画像処理系のフィルタ関数、Vector.sortOn()などにぐっときました。可能性がとても広がる機能だと思います。
実際に次のバージョンで載る機能かどうかまだ分かりませんが、Flash Playerは、ユーザーの声を聞き、忘れられていたAPIもちゃんと載せながら、進化をしていくようです。


Author

  • Shuichi Ishikawa
    Shuichi IshikawaShuichi
    Ishikawa
  • MikasaHideyuki
    Hideyuki MikasaHideyuki
    Mikasa
Shuichi Ishikawa
執行役員/インタラクションデザイングループ

フロントエンド開発からクラウドサーバー構築まで、新しいことに興味がありすぎて時間が足りない制作部門リーダー。Adobeインフルエンサー。九州芸術工科大学→ドリームキャスト→サーバーサイド→フロントエンド→執行役員→早稲田大学大学院→Kinect v2

好きな飛行機
B787-8
好きな空港
SXM
好きな航空路
Y28
Hideyuki Mikasa
オーサリングエンジニア

mikasa's text