2

我想知道是否有一个处理代码可以让我只在按下鼠标时才使用声音并在我释放它时停止。我已经将要使用的音频加载到处理中,但我很难找到代码。请帮我!谢谢!

4

1 回答 1

4

你的问题很模糊,但我会尽力回答。

我认为没有任何方法可以使用 Processing 的内置函数来处理音频,但是 minim 库可以很好地处理它。我将假设这就是您用于此解决方案的内容。

据我了解,您想按下鼠标,开始声音,当鼠标松开时,您想停止声音,而不是暂停它。我们可以使用处理的内置 mousePressed 和 mouseReleased 方法来完成此操作,如下所示:

import ddf.minim.*;

Minim minim;
AudioPlayer player;
AudioInput input;

void setup()
{
  //let's make the window a little bigger
  size(400,400);

  minim = new Minim(this);
  player = minim.loadFile("song.mp3");
  input = minim.getLineIn();
}

void draw(){ }

void mousePressed()
{
  player.play();
}

void mouseReleased()
{
  player.close();

  //since close closes the file, we'll load it again
  player = minim.loadFile("song.mp3");
}

暂停的代码看起来非常相似,除了您将 mouseReleased 块中的所有内容替换为以下内容:

player.pause();
于 2013-05-01T18:58:49.977 回答