使用MIKMIDI的soundfonts

时间:2015-09-28 06:34:22

标签: ios audio midi mikmidi

现在,我成功创建了一个MIKMIDISequence序列。但是,我无法找到如何将声音字体与该序列联系起来。我的问题是,我怎样才能将MIKMIDISequence指定为声音?

1 个答案:

答案 0 :(得分:1)

不应在序列上设置声音,而应使用MIKMIDISynthesizer的{​​{3}}来执行此操作。

假设您正在使用MIKMIDISequencer来播放序列,则可以使用MIKMIDISequencer上的-loadSoundfontFromFileAtURL:error:获取每首曲目的合成器。请注意,序列中的每个轨道都有一个合成器,因此如果您的序列有多个轨道,您可以/应该为每个轨道加载声音。

类似的东西:

for (MIKMIDITrack *track in sequence.tracks) {
    MIKMIDISynthesizer *synth = [sequencer builtInSynthesizerForTrack:track]
    NSError *error = nil;
    if (![synth loadSoundfontFromFileAtURL:soundfontURL error:&error]) {
        NSLog(@"Error loading soundfont (%@) into synthesizer for track (%@): %@", sondfontURL, track, synthesizer);
    }
}