标签: musicsequence

在MusicSequence中更改时间签名

我正在尝试在MusicSequence中更改时间签名(默认为4/4),但我似乎不明白如何执行此操作.我在序列中有2个MusicTracks,还有一个MusicPlayer来重现音乐.我该如何更改此值?

编辑:

我现在知道我需要在MusicSequence Tempo Track中添加Time Sig事件.我知道我可以使用MusicSequenceGetTempoTrack获取此曲目,但如何为其添加时间sig事件?

编辑2:

研究我意识到我需要为Music Tempo Track 创建一个MusicTrackExtendedMetaEvent.现在我需要知道如何正确格式化MIDIMetaEvent(我知道88是metaEventType但不知道如何添加其余的信息).

iphone midi ios ios5 musicsequence

8
推荐指数
1
解决办法
1114
查看次数

将非常简单的MusicSequence保存到MIDI中不会再现声音

我正在尝试将一个非常基本的音符MusicSequence(MusicSequence Reference)保存到MIDI文件中.文件正在写入,音符的持续时间也是(如果我把持续时间4,那么MIDI文件持续2秒,如果我将它改为2然后它应该持续1秒)但是没有声音被复制和如果我查看Logic中的MIDI文件,那么也没有任何信息.似乎笔记持续时间已写入,但笔记的笔记不是.

可能会发生什么?

+ (MusicSequence)getSequence
{
    MusicSequence mySequence;
    MusicTrack myTrack;
    NewMusicSequence(&mySequence);
    MusicSequenceNewTrack(mySequence, &myTrack);

    MIDINoteMessage noteMessage;
    MusicTimeStamp timestamp = 0;
    noteMessage.channel = 0;
    noteMessage.note = 4;
    noteMessage.velocity = 90;
    noteMessage.releaseVelocity = 0;
    noteMessage.duration = 4;

    if (MusicTrackNewMIDINoteEvent(myTrack, timestamp, &noteMessage) != noErr) NSLog(@"ERROR creating the note");
    else NSLog(@"Note added");

    return mySequence;
}
Run Code Online (Sandbox Code Playgroud)

iphone midi ios ios5 musicsequence

5
推荐指数
1
解决办法
840
查看次数

标签 统计

ios ×2

ios5 ×2

iphone ×2

midi ×2

musicsequence ×2