Search

2013/04/09

Flash(AS3)にYouTubeを貼り付ける方法

ActionScriptの2.0から3.0への変更がすんげくて、何回も立ち止まってしまった。。。


基本から概念を変えてるから、前ので慣れてると大変だけど、


でもだんだんなんで変える必要があったかがわかってくる。




今回、お世話になったプログラミングをメモしておこう♪




スケール(拡大縮小)

/*-- AS3.0 --*/
myMc.scaleX = 0.7; // 1=100% , 0.7=70%
myMc.scaleY = 0.7;


同じ結果だけど、表記が違う。


/*-- AS2.0 --*/
myMc._xscale = 70; // 100=100% , 70=70%
myMc._yscale = 70;




これが、AS2.0の気でAS3.0に入力した時は、結果70倍の拡大で表示することになってしまって、


全体真っ黒やけどなんでやろぉ。なんでやろぉってずっと考えてたってぃう(´゚ω゚).:゚*ブッ




/* セキュリティ解除 ---------------------------*/
Security.allowDomain("www.youtube.com");

/* 変数宣言 -----------------------------------*/
var player:Object;
var loader:Loader = new Loader();

/* 動画ID設定 ---------------------------------*/
loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
loader.load(new URLRequest("http://www.youtube.com/v/ [動画ID] ?version=3"));

/* main ---------------------------------------*/
function onLoaderInit(event:Event):void {
  addChild(loader);
  loader.content.addEventListener("onReady", onPlayerReady);
  loader.content.addEventListener("onError", onPlayerError);
  loader.content.addEventListener("onStateChange", onPlayerStateChange);
  loader.content.addEventListener("onPlaybackQualityChange",
                                  onVideoPlaybackQualityChange);
  
  // プレイヤーの表示位置
  loader.x = 380;
  loader.y = 415;
}

/* 再生の制御とプレーヤーの設定 ---------------*/
function onPlayerReady(event:Event):void {
  // 制御状況をトレースに表示
  trace("player ready:", Object(event).data);
  
  // 動画をロード
  player = loader.content;
  
  // プレイヤーのサイズ
  player.setSize(480, 270);
  
  // プレイヤーのスケール(拡大・縮小)
  player.scaleX = 0.5;
  player.scaleY = 0.5;
}

/* エラー -------------------------------------*/
function onPlayerError(event:Event):void {
  // エラー内容をトレースに表示
  trace("player error:", Object(event).data);
}

/* 再生ステータス -----------------------------*/
function onPlayerStateChange(event:Event):void {
  // 再生ステータスをトレースに表示
  trace("player state:", Object(event).data);
  
  /* ステータス取得 */
  var st:Number = player.getPlayerState();
  
  // ステータスの戻り値が ...
  if (st == -1) {
    // ... 未開始の時
  }
  else if (st == 0) {
    // ... 終了の時
  }
  else if (st == 1) {
    // ... 再生中の時
  }
  else if (st == 2) {
    // ... 一時停止中の時
  }
  else if (st == 3) {
    // ... バッファリング中の時
  }
  else if (st == 5) {
    // ... 頭出し済みの時
  }
}

/* 再生画質 -----------------------------------*/
function onVideoPlaybackQualityChange(event:Event):void {
  // 画質状況をトレースに表示
  trace("video quality:", Object(event).data);
}




日本語ページ
英語ページ


こんな風に自分のメモ的な感じでブログにすんのもえぇな♪


えぇこと思いついたわぁ(・∀・)