AudioKit:如何更改使用 AKMIDIEvent 播放的音符的音量或音高?
Posted
技术标签:
【中文标题】AudioKit:如何更改使用 AKMIDIEvent 播放的音符的音量或音高?【英文标题】:AudioKit: How can I change the volume or pitch of a note played with AKMIDIEvent? 【发布时间】:2018-03-29 09:14:25 【问题描述】:使用 AudioKit 我正在演奏一个音符
midi.sendEvent(AKMIDIEvent(noteOff: noteToPlay, velocity: MIDIVelocity(0), channel: MIDIChannel(0)))
是否有一个命令可以让我使用 AudioKit 更改播放音符的音量或音高?
【问题讨论】:
我认为你需要通过振荡器来控制音量。 -- 让振荡器 = AKOscillator() -- 并通过 --oscillator.amplitude = 0.5 来控制它 -- 幅度,范围从 0 到 1,给出音量。 您必须发送控制器更改事件。 你能给我一个工作示例@CL。 ? 阅读任何 MIDI 教程。然后问一个更具体的问题。 【参考方案1】:经过一番搜索,我发现 CL 提到的控制器更改事件确实可以完成这项工作。
所以考虑到命令是
/// Modulation Control
case modulationWheel = 1
/// Breath Control (in MIDI Saxophones for example)
case breathControl = 2
/// Foot Control
case footControl = 4
/// Portamento effect
case portamento = 5
/// Data Entry
case dataEntry = 6
/// Volume (Overall)
case mainVolume = 7
/// Balance
case balance = 8
/// Stereo Panning
case pan = 10
/// Expression Pedal
case expression = 11
我需要打电话
midi.sendEvent(AKMIDIEvent(controllerChange: 7, value: MIDIByte(volume), channel: MIDIChannel(0)))
【讨论】:
以上是关于AudioKit:如何更改使用 AKMIDIEvent 播放的音符的音量或音高?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 AudioKit 的新 AKSequencer 播放 MIDI
如何使用 Audiokit 对原始值而不是 MIDI 音符进行排序