跳转到内容

基本播放

使用合成器生成音色或加载音频文件,体验 waa-play 的基本播放功能。

  • 音源生成(正弦波、白噪声、脉冲)或文件加载
  • 波形显示和定位
  • 播放/暂停/停止
  • 音量、声像、速度和循环控制

音源

生成合成音色或加载音频文件以开始使用。

代码示例

WaaPlayer API

import { WaaPlayer } from "waa-play";
const player = new WaaPlayer();
const buffer = player.createSineBuffer(440, 2);
const gain = player.createGain(0.8);
const panner = player.createPanner(0);
const playback = player.play(buffer, {
through: [gain, panner],
loop: true,
});
playback.on("timeupdate", ({ position, duration }) => {
console.log(`${position.toFixed(1)}s / ${duration.toFixed(1)}s`);
});
playback.pause();
playback.resume();
playback.seek(1.0);
playback.setPlaybackRate(1.5);
playback.stop();
player.dispose();

函数 API(自带 AudioContext)

import { WaaPlayer } from "waa-play";
const ctx = new AudioContext({ sampleRate: 48000 });
const player = new WaaPlayer(ctx);
const buffer = await player.load("/drums.mp3");
const gain = player.createGain(0.8);
const comp = player.createCompressor({ ratio: 4 });
const a = player.play(buffer, { through: [gain, comp] });
a.on("ended", () => {
player.play(buffer, { through: [gain, comp] });
});
player.dispose();
ctx.close();