html canvas /Adobe Animate サウンドを使うCreateJS/SoundJS

html-canvas

めもめも

html canvasでサウンドを使う方法メモ。CreateJS ,Adobe Animate

CreateJSのみの場合

素材を登録

素材が一つの場合

createjs.Sound.registerSound("mySound/harunoyokan.mp3", "bgm1");

素材が複数ある場合 PRELOADJSを使う

  1. 素材を用意して [ mySound ] フォルダに入れる
  2. The LoadQueue class  を使ってサウンド登録
  3. 複数の音を登録する時はmanifestを使う
function init() {

	var manifest = [{
			id: "se_click",
			src: "mySound/se_click.mp3"
		}, {
			id: "se_onMatch",
			src: "/mySound/se_onMatch.mp3"
		},

		{
			id: "se_onMiss",
			src: "/mySound/se_onMiss.mp3"
		}, {
			id: "se_onWin",
			src: "/mySound/se_onWin.mp3"
		}
	];

	var queue = new createjs.LoadQueue();
	queue.installPlugin(createjs.Sound);
	queue.on("complete", handleComplete);
	queue.loadManifest(manifest);
	function handleComplete() {
		console.log("LOAD COMPLETE")
	}
}

init();

Adobe Animateを使う場合(簡単)

flaファイルのライブラリに追加するだけなので簡単

  1. パブリッシュセッティングで [ Export Sound Assets ]にチェック
  2. flaファイルのライブラリに追加する
  3. ライブラリのリンケージのところをダブルクリックしてタグを追加
  4. パブリッシュすると[ sounds ] フォルダーが作られるのでこっちをサーバーにアップするのを忘れないように

音の鳴らし方、止め方、ミュート (Animateでも Animateなしでも)

The Autoplay Policy があるので、音を鳴らす時はプレイヤー側でボタンを押す等の操作が必要です(スタートボタン BGM-ONなど)

Sample

BGM: Dr.PIKOPIKO https://dova-s.jp/bgm/play3563.html

Code

muteBtn = this.muteBtn;
seBtn = this.seBtn;
bgmBtn = this.bgmBtn ;

bgm = null;

seBtnClick = function (e) {
	createjs.Sound.play("se_click");
};


bgmBtnClick = function (e) {
	if (bgm) {
		bgm.stop();
		bgm = null;
	} else {
		bgm = createjs.Sound.play("pikopiko");
	}
};

muteBtnClick = function (e) {
	if (createjs.Sound.muted) {
		createjs.Sound.muted = false;
		muteBtn.alpha = 1;
	} else {
		createjs.Sound.muted = true;
		muteBtn.alpha = 0.3;
	}
};


seBtn.on("mousedown", seBtnClick);
bgmBtn.on("mousedown", bgmBtnClick);

muteBtn.on("mousedown", muteBtnClick);

SOUNDJS: PRELOADING AUDIO

SoundJs Sound Class

関連記事 JavaScript


にほんブログ村 にほんブログ村へ