Получение мета событий от MusicTrack

Я хочу получить информацию о MetaEvent с музыкальной дорожки. Как мне это получить? Меня интересует название трека и название инструмента трека.

Я вижу, у MusicTrack есть метод newMetaEvent, но нет способа его получить. Это конечно в Core Audio и OS X.

Благодарю вас

1 ответ

Вы используете MusicEventIterator для итерации событий трека, получения eventInfo и тестирования искомого типа события. Некоторые ссылки из документов ниже. Пример кода того, как использовать MusicEventIterator здесь


OSStatus MusicEventIteratorGetEventInfo (
   MusicEventIterator  inIterator,
   MusicTimeStamp      *outTimeStamp,
   MusicEventType      *outEventType,
   const void          **outEventData,
   UInt32              *outEventDataSize
); 

Типы музыкальных событий

MIDI и другие типы музыкальных событий, используемые функциями итератора музыкальных событий.

enum {
   kMusicEventType_NULL = 0,
   kMusicEventType_ExtendedNote,
   kMusicEventType_ExtendedTempo,
   kMusicEventType_User,
   kMusicEventType_Meta,
   kMusicEventType_MIDINoteMessage,
   kMusicEventType_MIDIChannelMessage,
   kMusicEventType_MIDIRawData,
   kMusicEventType_Parameter,
   kMusicEventType_AUPreset,
};
typedef UInt32 MusicEventType;
Другие вопросы по тегам