如何解决如何连接AKSequencer和AKsampler
我在将AKSequencer与AKSampler连接时遇到困难,因此我可以使用音色来更改音高。
我希望允许用户将注释添加到单个轨道,然后稍后单击按钮来播放该轨道。
我仅使用AKAppleSequencer就能获得解决方案,以获得我想要的功能的蜂鸣声,但无法对其进行蒙皮。目前,我什么都听不见了,已经没有问题可以浏览了。
我的代码带有新的AKSequencer:
class Sequencer {
var sampler: AKSampler
var sequencer :AKSequencer
var pos = 0.0
init() {
sampler = AKSampler()
sequencer = AKSequencer(targetNode: sampler)
setup()
}
func setup() {
let mixer = AKMixer()
let url = Bundle.main.url(forResource: "UprightPianoKW-20190703",withExtension: "sfz"); sampler.attackDuration = 0
sampler.decayDuration = 0
sampler.sustainLevel = 1
sampler.releaseDuration = 2
sampler.loadSFZ(url: url!)
_ = sequencer.addTrack(for: sampler)
for track in sequencer.tracks { track >>> mixer }
AudioKit.output = AKMixer(sampler,mixer)
try? AudioKit.start()
}
func play() {
sequencer.rewind()
sequencer.play()
}
func stop() {
sequencer.stop()
}
func addNote(note: UInt8) {
sequencer.tracks[0].add(noteNumber: note,velocity: 127,position: self.pos,duration: 0.5 )
self.pos += 0.5
}
}
预先感谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。