0

我使用下面的代码在 Android 上实现 midi 播放器

extern "C" JNIEXPORT void JNICALL Java_com_android_qiyinapp_player_MidiPlayer_yyPlay(JNIEnv* env, jobject, jobjectArray jMidiFilePath) {

fluid_player_t* player = new_fluid_player(synth);

jsize size = env->GetArrayLength(jMidiFilePath);
for(int i=0;i<size;i++)
{
    jstring obj = (jstring)env->GetObjectArrayElement(jMidiFilePath,i);
    const char* midiPath = env->GetStringUTFChars(obj, nullptr);
    if (fluid_is_midifile(midiPath)) {
        fluid_player_add(player, midiPath);
    }
}
fluid_player_play(player);
fluid_player_join(player);

delete_fluid_player(player);

}

但是我需要同时播放多个midi文件,但是我的播放器是按顺序播放midi文件的。通过再次检查 fluidsynth.org/api 仍然没有任何想法。所以你介意给我一些例子来涵盖它吗?

4

0 回答 0