第11回 サウンドの読み込みとコントロール(12月4日)

本日の課題

  • サウンドを使ったインタラクティブコンテンツを作成する
  • パブリッシュを行いHTMLにSWFを配置させる
  • サンプル:
  • サウンドファイルのダウンロード:sound.zip
  • サンプルソースのダウンロード:091204.fla

サウンドファイルの読込み

  • 読み込めるサウンドファイルはMP3、 WAV(Windows及びQuickTimeがインストールされているMacOS)、AIFF(MacOSおよびQuickTimeがインストールされているWindows)
  • サウンドはステージに直接配置はできないのでライブラリに読み込んで使う
  • 使用しなかったサウンドはライブラリから削除する

タイムラインでのサウンドの指定

  • 読み込んだサウンドはキーフレームのプロパティで設定する
  • どのレイヤーにも設定可能だがサウンド用のレイヤーを用意した方が視覚的にわかりやすい
  • SEのように短いサウンドは同期をイベントに、BGMのようにループさせるサウンドは同期をスタートに設定する
  • サウンド再生を止めるには同期をストップに設定する

外部サウンドファイルの再生

  • 長い曲など容量が大きい(1MB以上)サウンドはライブラリに読み込まずにActionScriptを使ってストリーミング再生する
  • ストリーミング再生可能なファイルはMP3のみ
  • 外部サウンドファイルを再生するにはSoundとURLRequestの2つのクラスを使う
  • 例:
    // 外部サウンドファイルを読み込んで再生する
    var my_snd:Sound = new Sound();
    var snd_URL:URLRequest = new URLRequest("my_music.mp3");
    my_snd.load(snd_URL);
    my_snd.play();
  • サウンドを停止させるにはSoundChannelを使う
    // 外部サウンドファイルを読み込んで再生、停止する
    var my_snd:Sound = new Sound();
    var snd_URL:URLRequest = new URLRequest("my_music.mp3");
    my_snd.load(snd_URL);
    var my_sndCh:SoundChannel = my_snd.play();
    my_sndCh.stop();
  • SoundTransformを使うとサウンドのボリュームとパンを制御できる
    // 外部サウンドファイルを読み込んで
    // ボリューム0.5、パン0で再生する
    var my_snd:Sound = new Sound();
    var snd_URL:URLRequest = new URLRequest("my_music.mp3");
    my_snd.load(snd_URL);
    var my_sndTr:SoundTransform = new SoundTransform(0.5, 0);
    var my_sndCh:SoundChannel = my_snd.play(0, 1, my_sndTr);

評価ポイント

  • サウンドファイルの読み込みが正しくできているか?(20点)
  • キーフレームでのサウンド設定が正しくできているか?(20点)
  • 外部サウンドファイルの読み込みと再生が正しくできているか?(20点)
  • サウンドが効果的に使えているか?(20点)
  • パブリッシュが正しくできているか?(20点)

Flashファイル(*.fla)及びHTMLファイルを提出する

外部サウンドファイルの提出は不要

ファイル名に全角文字や記号を使わないこと

提出期限は授業日の翌週の火曜日の午後9時まで