2013-06-22 69 views
0

我已經將我的音效編譯成一個.ogg文件,而不是加載9個不同的音頻文件,並且每個效果都有不同的開始和停止時間。但是,我沒有看到在WebAudio API中處理這個問題的方法。我確定有。有人知道嗎?在WebAudio中播放音頻文件的一部分

+0

你可能會更徹底地解釋一下你想完成什麼嗎?你是否試圖同時播放所有這些聲音? –

回答

2

以下是如何操作。

var context = new AudioContext(); 
var mainNode = context.createGainNode(0); 
mainNode.connect(context.destination); 

function play_sound(sound, start, length) { 
    var source = context.createBufferSource(); 
    source.buffer = get_buffer(sound); // assume get_buffer gets a file that has already been 
    source.connect(mainNode);   // loaded and decoded with context.decodeAudioData() 
    source.start(0, start, length); 
} 

// lets say I want to play a 0.2 second sound effect in sfx.ogg starting at 0.5 seconds. 
play_sound('sfx.ogg', 0.5, 0.2);