3
A
回答
2
MIKMIDI不包含自己实现大部分功能的能力。这就是说,这是可能的。实质上,您需要创建自己的Core Audio图形,包括MIDI合成器单元。然后,在乐器单元的渲染回调中,根据使用AudioTimeStamp
计算的时间戳和传递到渲染回调的帧数,将事件从MIKMIDISequence中拉出。使用MusicDeviceMIDIEvent()
将这些输出到乐器单元。
您还需要一些方法来获得合成输出。您可以通过向AU图添加通用输出,向其添加呈现回调,然后在该呈现回调中,将传入的AudioBufferList
并将其写入文件(例如使用ExtAudioFileWrite()
)来完成此操作。
我的确有一个小项目,它使用了MIKMIDI,但它包含了我不能公开发布的代码。我会看看我是否可以在某些时候将其清理并作为示例代码公开发布。
编辑:我在这里提到的项目已经清理完毕,现在作为MIKMIDI的示例项目提供。见here。
您可能还会考虑filing a request API或增强功能,以便在MIKMIDI中更好地支持此功能。
相关问题
- 1. 改进Android合成器上的MIDI合成器声音/加载声音字体
- 2. ios - 混合midi文件,每个都有自己的声音字体
- 3. 如何设置MIDI声音?
- 4. 将音符数据导出为midi
- 5. 在IOS上播放声音
- 6. 如何将音频导出为iOS中的铃声(铃声)
- 7. ios的声音 - 声音
- 8. 通过pygame在树莓皮上播放midi声音
- 9. ios AVAudioPlayer播放声音与回声
- 10. 显示midi文件与音乐的midi音调编号21
- 11. 导入excel输出声音?
- 12. 将音高转换为单声道midi
- 13. Midi-dot-net声音播放两次
- 14. 视频/声音/ MIDI播放器时间
- 15. 标准乐器的MIDI声音样本
- 16. Java声音API - 扫描MIDI设备
- 17. iOS和Android上的超声波声音
- 18. 如何在给定的MIDI音符/八度处播放声音?
- 19. 使用OpenAL在iOS上捕获声音
- 20. iOS如何播放midi音符?
- 21. iOS UILocalNotification声音
- 22. ios上的OpenAL消音和立体声延迟?
- 23. 连续生成midi声音chnaging音符编号
- 24. 使用NAudio播放(不录制/导出)多个MIDI音轨
- 25. PushSharp iOS PushNotification与自定义声音
- 26. Java Midi - 如何从midi中弹出音符
- 27. 麦克风发出的声音与扬声器发出的声音
- 28. 调整MIDI音符音量
- 29. 在终端输出上播放声音
- 30. 在网站上录制声音输出