2013-06-22 39 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);