所以我觉得自己像个白痴,因为我必须在这里发帖来解决可能是简单的修复问题。我正在编写一个将MIDI发送到另一个应用程序的iOS应用程序。对于我的第一个概念证明,我试图在我的iPhone上向GarageBand发送一条消息。我正在尝试使用AudioKit来完成此任务。我创建的代码如下:importUIKitimportAudioKitclassViewController:UIViewController,UIPickerViewDelegate,UIPickerViewDataSource{letmidi=AudioKit.midi...overridefuncviewDidLoad()
我是Audiokit的新手。我想对一组Double原始值进行排序,以用作eurorack模块中的衰减器。使用AKSequencer似乎是不可能的,因为它们旨在与音轨(AudioKit.AKMusicTrack)一起使用,将MIDI数据发送到AKMidi-Insrument实例。那么如何对f.e.进行排序呢?原始振荡器或表属性值?谢谢! 最佳答案 使用AKCallbackInstrument和序列长度数组中的一些值是可能的letsequenceLength=AKDuration(beats:8.0)letsequencerCallba
我一直在努力解开一个谜sinewaveissue收效甚微。我想在这里开始一个新问题,因为我已经深入研究了这个问题的细节。在设置AKSequencer并为其提供MIDI文件时,我看到了一些奇怪的结果。对于一首4轨歌曲(具有相应的4轨midi文件,持续时间匹配歌曲的所有主干),我看到音序器实际上是用5轨生成的。什么是额外的轨道?此外,我在控制台中收到一个错误:[seq]1026:无效节拍范围我相信当轨道为空时会发生这种情况。所以这看起来像是我的神秘正弦波的罪魁祸首。关于如何解决这个问题的任何想法?这让我有点发疯......?谢谢! 最佳答案
我正在开发musicprogramminglanguage,并使用JVM(通过Clojure)播放用这种语言编写的乐谱。到目前为止,我们只是使用javax.sound.midiMidiSynthesizer来播放乐谱。因为Clojure的启动时间很慢,而我们希望能够从命令行播放乐谱并立即听到,我们选择将乐谱解释器构建为后台服务器进程,并使用用Java编写的更轻量级的命令行客户端。所有这些在大多数情况下都运行良好,但是,有一个奇怪的问题,我们看到如果您启动服务器,然后关闭笔记本电脑*并让它hibernate,然后再次打开它并让服务器播放乐谱,音频不会立即出现,而是会延迟几秒钟。使用调试日
我正在开发一个Java项目,该项目使用javax.sound.midi库从MIDI硬件接收MIDI事件。在文档中,它说MidiSystem.getMidiDeviceInfo()返回所有连接的MIDI硬件的列表。它对我有用,但问题是,它只能工作一次。第一次实际扫描设备需要一些时间,但之后每次都会立即返回相同的列表,即使已连接新设备也是如此。有没有办法强制它重新扫描?如果应用程序重新启动,它将重新扫描,但我不希望我的用户在连接新的MIDI设备时必须重新启动。顺便说一句,我使用的是MacOSX...有人指出,不同操作系统的行为可能不同。 最佳答案
我做了一个keyboardapplication前一段时间从jar中获取midi音库作为资源,并使用它来获取音库中包含的乐器名称。这似乎在使用带有sunsjava6的windows7的机器上以及在使用sunsjava6的linux中运行良好。但是,这似乎不适用于使用相同版本的java的windowsxp的机器。似乎正在发生的事情是在调用getInstrumentName()方法时尚未加载仪器数组。仪器数组在DefaultControl类(第二个代码示例)的构造函数中填充。有人可以帮我理解为什么会这样,为什么它似乎依赖于机器?我这样得到当前的乐器名称:data.setControls(n
我正在寻找一种方法来更改Python中预先存在的MIDI文件中的单个音符。我发现了很多允许编写MIDI文件但不能改变现有文件的包。是否有可以帮助解决此问题的程序包或解析MIDI文件的十六进制来完成此操作的方法? 最佳答案 开源程序MIDICSV将MIDI转换为文本CSV,反之亦然。您可以以文本形式打开CSV文件并使用Python轻松编辑它,而无需依赖任何特殊模块。有关MIDI协议(protocol)的信息,请参阅:MIDIfile-formatspecificationMIDImessages在recentproject中我发现这项
我无法导入fluidsynth。[也许有更好的模块?]我正在尝试从python或pygame合成midi。我可以从pygame发送midi事件。我正在使用mingus,pyfluidsynth似乎很好/最简单。我认为这意味着安装了pyfluidsynth,但没有安装单独的fluidsynth。我不知道它是否需要“fluidsynth”安装程序才能工作?测试.py:importfluidsynthprint":("错误:Traceback(mostrecentcalllast):File"test.py",line1,inimportfluidsynthFile"C:\Users\jak
我有一个触发手指(MIDI平板电脑),我希望能够实时读取它的输入并让python根据按下的键执行操作。我需要它用于Windows,最好使用python2.5+谢谢 最佳答案 PyGame包括一个内置的midimodule,可用于Linux、Windows和MacOS,并得到很好的支持。例如,这里是pygame.midi.Input的文档:Inputisusedtogetmidiinputfrommididevices.Input(device_id)Input(device_id,buffer_size)Input.close-cl
我正在编写一个脚本,根据各个像素的RGBA值将图片转换为MIDI音符。但是,我似乎无法完成最后一步,即将笔记实际输出到文件中。我试过使用MIDIUtil库,但是它的文档不是最好的,我似乎无法理解。如果有人能告诉我如何对笔记进行排序(这样它们就不会全部从头开始),我们将不胜感激。 最佳答案 看样本,好像是frommidiutil.MidiFileimportMIDIFile#createyourMIDIobjectmf=MIDIFile(1)#only1tracktrack=0#theonlytracktime=0#startatth