Library

SWFAddress

SWFAddress は SWFObject と共に使用し、Flash の各コンテンツの遷移に対して、パーマリンク提供してくれる便利クラス。

html に Javascript を読み込み、Flash に ActionScript クラス(バージョン 1,2,3 に対応)を設定することで、Flash 8 + からサポートされた External Interface class を使用して URL を変更することができる。これによってブラウザの Back、 Forward、Reload に対応し、ブックマークすることも可能。 これで Flash の欠点であったリロードごとの最初からのローディングを回避出来る様になります。Flash の Photography サイトとかだと好きな写真のページにダイレクトにいけたり、EC アプリの情報保持や、LocalSharedObject を応用した形で使用できそう。

結構なクリエーターの方はかなり以前から知っていらっしゃる様で、自分は恥ずかしながら filippasmedhagensund.com を見るまで知らなかったので最初はどうやってんだろうと JS を調べて気づきました。

この記事の続きを読む »

ページの一番上へ移動

SWFUpload

会社でも以前話題になったんですが、それ以前からFlickr の画像アップローダーが生かしてるな~って思ってどうしてるんだろう思ってんですが、SWFUpload っていう便利クラスがあるんですね。どう実現してるのか知りたくて横取り丸で Flickr の通信を見た際にこんな swf があったんで、バイト数を External Interface とかで JS 側に渡してるのかなって思ってたんですが、こんな便利クラスがあるんだったら使ってみようってことで試してみました。


SWFLoad
SWFLoad

Flickr Uploader
Flickr Uploader

この記事の続きを読む »

ページの一番上へ移動

DoubleClick-InStream + AS3

DoubleClick-InStream

通常の Flv ビデオを FlvPlayBack や Video オブジェクトで再生する際に、何からの宣伝やコマーシャル用のプリロールやミッドロールやポストロールビデオを流す際に便利な DoubleClick-InStream。プラットフォームは Flash Player、Silverlight、Windows Media Player、Real Player に対応しています。リクエストする URL にアクセスすると doubleclick サーバが xml にリダイレクトして、広告タイプによって値を返してきて、それを Flash 側でどの様に表示するかをリスポンスの後に設定します。自分は FlvPlayBack を使用して他の Flv と連携する Flash in Flash タイプを使用したので、doubleclick サーバにアクセスすると勝手に Flv とリンク先が返ってきました。

自分も 100 %理解した訳ではなくドキュメントを読んでも分からない部分があったんですが、今回のプロジェクトでは上手く通常の Flv と宣伝用 Flv を難しいコードを記述すること無く同期出来たので、自分の為に忘れない様にメモ。

(1)インストール

MXP で入れるタイプと SDK で入れるタイプが google code より提供されています。タイプも Google In-StreamDoubleClick In-Stream があるようで、自分は Google In-Stream を使用したんですが、後者は書くソースが違って結果は同じようです。

(2)リクエストとリスポンス

下記の様な URL にアクセスします。ブラウザでアクセスすると Windows Media Player が起動しますが、Component や SDK ベースのコードベースでアクセスすると、内的な処理は XML で返ってるようです。その後の処理はどうなってるかはよく分かりません。

http://ad.doubleclick.net/pfadx/AngelaSite;kw=dclkvideo;sz=120x350;ord=3577745;

Google In-Stream の場合は AdsLoaderAdsRequest クラスを使用してアクセスするので、URLLoader クラスと URLRequest クラスのを使用する方法といたって基本は同じです。


(3)マッピング

リスポンスは AdsRequest.adType の値によって変わるようなので、この値を基に AdsLoader.load した際のイベントハンドラ内でどのようなメディアが返ってくるか判断します。Video の表示は VideoAdsManager を使用して行います。ここで凄いな!って思ったのは、videoAdsManager.load(flvPlayBack or VideoObject) / videoAdsManager.play(flvPlayBack or VideoObject) を設定するだけで、勝手に Flv が通常の FlvPlayBack や Video オブジェクトに表示されちゃうことです。後は AdEvent.COMPLETE イベントハンドラが呼ばれたら Flv の表示は終了なのでこのタイミングで任意の処理をします。1つ忘れては行けないことは videoAdsManager.clickTrackingElement に任意の DisplayObject を設定してやることです。そうしないとエラーになります。自分の場合はプリロールなので、AdEvent.COMPLETE が dispatch された時点で、次の通常の Flv を表示する様にコーディングしました。

(4)集計

ドキュメントによれば load や complete のトラッキングや AFV(Adsense for Video) でクリックのインプレッションをトラッキングしてくれるそうです。

この記事の続きを読む »

ページの一番上へ移動