📜  p5.js | loadSound()函数(1)

📅  最后修改于: 2023-12-03 15:03:26.907000             🧑  作者: Mango

p5.js | loadSound()函数

loadSound()函数是p5.js中的一个内置函数。该函数使我们能够在网页上加载、播放并管理音频文件。在开发音频相关项目时,loadSound()函数非常有用。

语法
loadSound(path, [successCallback], [errorCallback], [whileLoading])
  • path:表示要加载的音频文件的URL或文件路径。
  • successCallback:当文件加载成功时将被调用的可选回调函数。
  • errorCallback:当文件加载失败时将被调用的可选回调函数。
  • whileLoading:在文件加载过程中将被调用的可选回调函数。
用法

下面是一个基本的例子,展示如何使用loadSound()函数加载音频文件。

let soundFile;

function preload() {
  // 要加载的音频文件
  soundFormats('mp3', 'ogg');
  soundFile = loadSound('assets/sound.mp3');
}

function setup() {
  createCanvas(400, 400);
  
  // 播放音频文件
  soundFile.play();
}

在上述代码中,我们在preload()函数中使用loadSound()函数加载了一个名为sounds.mp3的音频文件。然后在setup()函数里面播放了这个音频文件。

另外,我们可以使用successCallbackerrorCallback参数指定当音频文件成功或失败加载时要执行的回调函数。例如:

let soundFile;

function preload() {
  soundFormats('mp3', 'ogg');
  
  // 成功回调
  soundFile = loadSound('assets/sound.mp3', loaded);
  
  // 失败回调
  soundFile = loadSound('assets/fake_sound.mp3', null, error);
}

function loaded() {
  console.log('音频文件已成功加载!');
}

function error() {
  console.log('音频文件加载失败。');
}

在上述代码中,我们使用了loaded()error()回调函数来处理loadSound()函数成功或失败加载音频文件的情况。

最后,我们可以使用whileLoading参数来在音频文件加载过程中显示进度条等。例如:

let soundFile;
let loading;

function preload() {
  soundFormats('mp3', 'ogg');
  soundFile = loadSound('assets/sound.mp3', loaded, error, loadingMusic);
}

function loaded() {
  console.log('音频文件已成功加载!');
}

function error() {
  console.log('音频文件加载失败。');
}

function loadingMusic(progress) {
  // 显示进度条
  loading = progress;
}

function draw() {
  background(255);
  
  // 绘制进度条
  fill(0);
  rect(0, height/2, width*loading, 10);
}

在上述代码中,我们使用了loadingMusic(progress)函数来在音频文件加载过程中绘制进度条。

更多

loadSound()函数还有许多其他有用的参数和方法,例如setVolume()setLoop()pause()等等。我们可以通过查看官方文档来了解更多有关这些参数和方法的信息。

结论

在音频相关项目中,loadSound()函数是非常有用的。它使我们能够在网页上加载、播放和管理音频文件。同时,我们还可以通过指定回调函数,更好地控制和管理音频文件的加载过程。