AVAudioSequencer播放AVAudioUnitSampler会截断MIDI音符的尾端
创始人
2024-11-12 22:00:16
0次

这个问题是由于默认的AVAudioEngine的渲染时间不足以将MIDI音符的尾端完整地播放。要解决这个问题,可以通过在渲染前增加几个断点来扩大渲染范围。这可以通过修改AVAudioEngine的connect方法来实现:

func connect(sourceNode: AVAudioNode, to destNode: AVAudioNode, format: AVAudioFormat? = nil, block: AVAudioNodeCompletionHandler? = nil) {
    let range = AVAudioTimeRange(start: AVAudioTime(sampleTime: 0, atRate: destNode.sampleRate), duration: AVAudioFrameCount(destNode.sampleRate * 3))
    engine.connect(sourceNode, to: destNode, format: format, block: block)
    engine.mainMixerNode.scheduleBuffer(nil, at: nil, options: AVAudioPlayerNodeBufferOptions(rawValue: 0), completionCallbackType: .dataRendered, completionHandler: nil, time: range.start, duration: range.duration)
}

在这个方法中,我们增加了一个范围,使得渲染时间扩大了3秒钟。这个范围可以被调整,根据你的实际需要来改变。

将所有的连接方法都替换为上面的connect方法就可以解决这个问题了。

相关内容

热门资讯

免费测试版!智星德州有脚本吗,... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...
推荐一款!wpk模拟器多开,微... 很多人使用云端 AI 时,都担心wpk模拟器多开、内部资料上传带来隐私风险。这款本地运行的 AI 黑...
玩家必看秘籍!we poker... 玩家必看秘籍!we poker游戏下,微扑克到底有没有挂工具(往昔真的有开挂)主打本地运行的 AI ...
玩家教你!wepoker辅助分... 玩家教你!wepoker辅助分析器,德扑之星透视软件下载下载(一直存在有透视)AI 是一款可以让一直...
一分钟揭秘!wepoker透视... 您好,一分钟揭秘!wepoker透视器免费,wepoker有没有透视挂下载(原来是真的有透视挂)这款...
重要通知!we-poker辅助... 您好,重要通知!we-poker辅助,微扑克到底有没有透视挂安装(本然存在有透视挂)这款游戏可以开挂...
一分钟带你了解!WPK脚本,w... AI 黑科技赛道又上新,这款智能处理工具堪称效率开挂,专门面向短视频创作者打造。它打通脚本撰写、AI...
必备攻略!wepoker亲友圈... 本地部署 AI 黑科技工具迎来新版本,不用上传文件到云端就能完成wepoker亲友圈有用吗解析、 A...
一分钟了解!!WPK真假,微扑... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...
我来向大家传授!wepoker... 很多人使用云端 AI 时,都担心wepoker破解工具、内部资料上传带来隐私风险。这款本地运行的 A...