Flashでムービープレーヤーを作ろう!

2008年6月26日(木)
吉田 光利

再生スライダーの作成

 デュレーションを取得することができたので、再生スライダーを作成することができます。

 ENTER_FRAMEを使用して、時間が進むたびに再生ヘッダを進めます。再生ヘッダの位置は、現在再生している時間をデュレーションで割って、バーの幅を掛けることによって導きます。現在時間もtime_now.textに表示させます(図3)。

stage.addEventListener(Event.ENTER_FRAME,function(event){
header.x = 32 + stream.time / duration * range;
time_now.text = String(Math.floor(stream.time));}

 今度は再生ヘッダをドラッグできるようにします。再生ヘッダにはマウスをダウンした場合のリスナーを、ステージに対してはマウスをアップした場合のリスナー登録をします。

header.addEventListener(MouseEvent.MOUSE_DOWN, dragHandle);
this.stage.addEventListener(MouseEvent.MOUSE_UP, offHandle);

 再生ヘッダ上でマウスダウンした場合に決められた範囲内で、ドラッグできるようにします。

function dragHandle(event:MouseEvent):void
{ header.startDrag(false, new Rectangle(bar.x, header.y, range, 0));}

 マウスアップした場合はNetStreamオブジェクトのメソッドであるseekを使って、途中から再生することができます。これで自作の再生ヘッダが完成しました。

function offHandle(evt:MouseEvent) {
var position = (header.x - 32) / range;
stream.seek(duration * position);}

やっぱりFlashは最高だ!

 前回の結びもこのようなタイトルで終わりましたが、今回もやっぱりそう思いました。4回にわたって、Flashについてお届けしたわけですが、いかがだったでしょうか。その可能性には心躍るものがあったのではないでしょうか。

 Flashは万能で、いろいろできるのですが、今回のような音と映像は特に可能性を感じる分野です。今回の連載ではお届けできなかったのですが、Flashビデオをインタラクティブに扱える、PIPコンテンツやWebアプリケーションとFlashの連携によるリッチコンテンツなど、Flashでできることは奥が深そうです。筆者もこれらのことを、もっと追及してよいコンテンツ作りに励みたいと思っています。皆さんもFlashのエキサイティングなテクノロジーを使って、コンテンツ作りを楽しんでください。

BRIANS PET TOKYO主催者 WebデザインからRuby on RailsでのWebアプリ構築までをトータルに行うWebコンテンツデザイナ。現在はBRIANS PET TOKYOにてWebアプリケーション「DORIBAR(ドリバー) 」を開発中 http://brianspet.com

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています