Yamasuke 日記

Yamasukeの日記です。コンピュータソフトウェアに関する記事を投稿します。明日から試してみたくなるような+1の記事を心がけます。

SoundJSでの音制御

再生制御

SoundJSで簡単な再生制御を試してみた。

ループ再生

単純に再生する場合はcreatejs.Sound.play()で再生できる。 これに引数を与えてやることでループ再生が可能。"loop:-1"を指定するとループ再生が可能となる。 また、他にも再生開始位置の指定、音量の設定などあり。

function playSoundLoad(event) {
    // 再生対象のサウンドファイルをidで指定
    soundInstance = createjs.Sound.play(event.item.id, {loop:-1});
    displayStatus.innerHTML = "Playing source: " + event.item.src;
}

一時停止

一時停止pause(), 再開resume() ロードしたサウンドファイルのインスタンス( soundeInstance )配下に存在。 soundeInsstace.pause(), soundInstance.resume() でOK。

  function pause() {
    soundInstance.pause();
    audioStatus = 'pause';
    audioControl.value = "play";
  };

  function play() {
    soundInstance.resume();
    audioStatus = 'playing';
    audioControl.value = "pause";
  };

  function handleEvent(aEvent) {
    var type = aEvent.type;
    switch (type) {
      case 'click':
        if (audioStatus === 'playing') {
          pause();
        } else if (audioStatus === 'pause') {
          play();
        }
        break;
    }
  };

audioControlとかはこんな感じで定義

  var audioControl;
  var audioStatus;

  audioControl = document.getElementById("audioControl");
  audioControl.value = "Loading";
  audioStatus = "Loading";

できたー

f:id:namaranran:20150318162330j:plain f:id:namaranran:20150318162331j:plain