草庐IT

swift - 我如何使用 Audiokit 发送 midi poly pressure 消息?

目前我正在构建一个应用程序,它基本上是我的VirusTI合成器的合成器Controller。该病毒允许使用MIDICC消息设置它的大部分参数。使用Audiokit非常简单:midiOutput.sendEvent(AKMIDIEvent(controllerChange:17,value:SomeValue,channel:1))但是,某些参数需要使用“多压力”消息进行设置。每个音符都映射到一些参数,压力值将用于设置参数。这看起来像是hack,但事实就是如此。我现在的问题是我找不到发送midi多边形压力消息的方法,因为它们在audiokit中似乎不可用。(换句话说:没有多压事件类型)问

ios - 当 MIDI 目标或源更改时收到通知

当找到新的MIDI目的地/来源或现有的断开连接时,有什么方法可以得到通知吗?谢谢。 最佳答案 也许receivedMIDISetupChange()适合您?在符合AKMIDIListener的类中,尝试:funcreceivedMIDISetupChange(){print("MIDISetupChange,midi.inputNames:\(midi.inputNames)")} 关于ios-当MIDI目标或源更改时收到通知,我们在StackOverflow上找到一个类似的问题:

swift - 使用 CoreMIDI 发送系统独有消息

我正在开发一个使用MIDI的MacOS应用程序。我想做的是将SysEx消息发送到MIDI设备。现在,我在Java中做过一次,但从未在Swift中做过。因为coremidi库对我来说几乎是全新的,所以我不知道它是如何工作的。到目前为止,我发现我必须编写一个MIDISysexSendRequest,我已经走到这一步了:letSysEx=MIDISysexSendRequest(destination:self.endpointRef,data:UnsafePointer,bytesToSend:8,complete:complete,reserved:(UInt8,UInt8,UInt8)

ios - Audiokit MIDI 初始化令人困惑

CoreMIDI术语已经非常困惑且记录不当,Audiokit并没有像我希望的那样提供帮助。据我所知,每个应用程序都应该有一个MIDI客户端引用实例(MIDIClientRef)。Audiokit有AKMIDI类,它为每个AKMIDI实例创建一个新的客户端引用,实例被创建在左、右和中心(包括每个AKMIDIInstrument的初始化、AKCallbackInstrument和AKMIDISampler实例)。所有这些还在其内置构造函数中创建具有硬编码名称的端点,因此我不明白我应该如何创建具有适当名称的端点。价格最高的是AKMIDISampler,其来源首先说:///Initialize

objective-c - 在 swift 中使用 MIDIPacketList

我正在查看一些使用核心midi的midi输出示例。特别是thisquestion和this我在objC中有基于这些的代码,我现在想尝试将其转换为swift。我最不理解的是这一行:MIDIPacketList*pktList=(MIDIPacketList*)pktBuffer;我将其理解为声明了一个MIDIPacketList类型的指针pktlist并为其分配了pktBuffer的值,转换为MIDIPacketList类型我是C和objC的新手,这对我来说毫无意义。MIDIPacketList是一个定义的结构here:以何种方式将字节数组转换为结构类型MIDIPacketList是有意

java - MIDI 初学者 - 需要演奏一个音符

我对Java的MIDI功能不是很了解。事实上,这让我很困惑。然而,我想做的是只是构建一个简单的应用程序来播放一个音符。如何使用JavaSound播放单个MIDI音符?网上对此的支持几乎不存在,我完全不知所措。 最佳答案 我知道这是一个非常古老的问题,但是,作为一名新手程序员,我很难弄清楚如何做到这一点,所以我想我会分享以下让Java成为播放单个MIDI音符以帮助其他人入门。importjavax.sound.midi.*;publicclassMidiTest{publicstaticvoidmain(String[]args){t

java - 将 Midi 音符编号转换为名称和 Octave

是否有人知道Java世界中存在的任何将midi音符编号映射到特定音符名称和Octave音阶编号的方法。例如见引用表:http://www.harmony-central.com/MIDI/Doc/table2.html我想将一个midi音符编号60映射到它在Octave音程4中的相应音符名称(MiddleC)。我可以为此编写一个实用程序类/枚举,但这会相当乏味。有人知道吗?我专门用它在Java中编写Tenori-On/Monome克隆,到目前为止一切顺利......解决方案这就是我最终使用的:String[]noteString=newString[]{"C","C#","D","D#

java - Android 6.0(棉花糖): How to play midi notes?

我正在创建一个生成现场乐器声音的应用程序,并且我计划使用AndroidMarshmallow(版本6.0)中的新MidiAPI。我在这里阅读了包概述文档http://developer.android.com/reference/android/media/midi/package-summary.html我知道如何生成Midi音符,但我仍然不确定:在生成这些音符的Midi数据后,我该如何实际演奏这些音符?我需要合成器程序来播放Midi音符吗?如果是这样,我必须自己制作还是由Android或第三方提供?我是Midi的新手,所以请尽可能描述您的回答。到目前为止我尝试了什么:我创建了一个M

python - 使用 Python 创建 MIDI

本质上,我正在尝试从头开始创建MIDI并将它们放到网上。我对不同的语言持开放态度,但更喜欢使用Python(两者之一,如果有任何区别的话。)并且想知道我应该使用哪个库。提前致谢! 最佳答案 看起来这就是您要找的:Simple,CrossPlatformMIDILibraryforPythonMidiUtil可以在python中创建MIDI文件。 关于python-使用Python创建MIDI,我们在StackOverflow上找到一个类似的问题: https:

python - 用Python读取MIDI文件

我希望能够从Python中的MIDI文件读取事件。我已经查找了库,但在Windows中找不到可与我的MIDI文件一起使用的库。我不需要做任何实时的事情,只需要一个简单的库来给我提供事件和时间。给自己写一本会更容易吗?任何帮助都将不胜感激。 最佳答案 MIDI文件的结构非常简单。如果您找不到现成的库(我不知道有),而您只需要事件和时间,我建议您自己尝试分析该文件。(准备大量位移动:MIDI数据存储在7位块的字符串中)另外,你说你找不到一个可以在Windows上使用midi文件的库:midi文件应该是可移植的,python也是,所以un