在openframeworks中同步音乐文件

时间:2014-05-05 20:44:46

标签: openframeworks

如果我要将一首歌分成几首单独的.wav文件,例如" drums.wav" " bass.wav" " guitar.wav"等等...有没有让openFrameworks完全同步播放所有三个文件,以便整个歌曲的印象仍然存在?谢谢!

1 个答案:

答案 0 :(得分:1)

如果我理解了这个问题,而您想要做的就是同时播放这些文件,那么您只需为每个样本创建一个ofSoundPlayer并将它们设置为同时播放。

在inApp.h中:

ofSoundPlayer drums, guitar, bass; // create sample players

在inApp.cpp中:

void ofApp::setup(){

drums.loadSound("drums.wav"); // do the same for bass and guitar

drums.play(); // play sample from start, same for bass and guitar


}

void ofApp::update(){

ofSoundUpdate();

}

这假设所有样本都开始同步。如果您想从不同的位置开始样品,可以使用:

drums.setPosition(float percent)

这在http://openframeworks.cc/documentation/sound/ofSoundPlayer.html都有详细记载,并且在OpenFrameworks soundPlayer示例中(examples / sound / soundPlayerExample)。

如果你喜欢更复杂的东西,我推荐Maximilian。它提供了很多控制,有一个示例播放器,并且具有OpenFrameworks实现,但文档方式较少。 https://github.com/micknoise/Maximilian