独創アプリ開発日記 103日目 音の再生2

音鳴りました。単純にコードミスだったようです。

。・゚・(ノ∀`)・゚・。

以下コードを記述した上で、JavaScriptから任意の場所でplaySound()を呼べば音が鳴ります。


window.AudioContext = window.AudioContext || window.webkitAudioContext;
var g_audioContext = new AudioContext();
loadSound = function(url, fn) {
    var request = new XMLHttpRequest();
    request.open('GET', url, true);
    request.responseType = 'arraybuffer';
    // Decode asynchronously
    request.onload = function() {
        g_audioContext.decodeAudioData(request.response, function(buffer) {
            fn(buffer);
        });
    }
    request.send();
};
function playSoundBuffer(buffer) {
    var source = g_audioContext.createBufferSource();
    source.buffer = buffer;
    source.connect(g_audioContext.destination);
    source.start(0);
}
var g_soundBuffer = null;
loadSound('https://minnano.app/textmanga/assets/sound/kachi.mp3', function(buffer) {
    g_soundBuffer = buffer;
});
function playSound() {
    playSoundBuffer(g_soundBuffer);
}

mp3は絶対パスで指定しています。

‘https://minnano.app/textmanga/assets/sound/kachi.mp3’

の部分を変えて下さい。

しかし、これだと1種類の音しか鳴りませんね。いろんな音を鳴らしたいです。

。・゚・(ノ∀`)・゚・。

明日は、複数音源の場合の対応を考えようと思います。

コメントを残す

メールアドレスが公開されることはありません。