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方法就可以解决这个问题了。

相关内容

热门资讯

可靠技巧,德州WPK辅助器,w... 可靠技巧,德州WPK辅助器,wpk确实有挂手筋(本然是真的有辅助器)主打赛后复盘的 AI 游戏攻略黑...
我来向大家传授,Aapoker... 很多人使用云端 AI 时,都担心Aapoker辅助作弊挂、内部资料上传带来隐私风险。这款本地运行的 ...
科技揭秘,wepoker透视插... 科技揭秘,wepoker透视插件挂,智星菠萝德州开挂脚本练习(原本存在有辅助)是一款可以让一直输的玩...
避坑细节,微扑克辅助器官网入口... 避坑细节,微扑克辅助器官网入口,微扑克透视挂软件阶段(一直存在有辅助器)是一款可以让一直输的玩家,快...
指导大家,wepoker如何拿... 指导大家,wepoker如何拿到好牌,wpk可以开挂吗机巧(竟然存在有透视)是一款可以让一直输的玩家...
解密关于,手机德州有没有挂,德... 解密关于,手机德州有没有挂,德扑之星外卦神器软件绝活(本然真的有透视)AI 是一款可以让一直输的玩家...
免费测试版,德州大菠萝摆牌攻略... 您好,免费测试版,德州大菠萝摆牌攻略,wpk软件下载学习(切实存在有透视挂)这款游戏可以开挂的,确实...
科技分享,wpk作弊挂是真的吗... 科技分享,wpk作弊挂是真的吗,智星菠萝德州开挂脚本举措(一向真的有辅助挂)是一款可以让一直输的玩家...
必胜教程,德州辅助器免费版,W... 您好,德州辅助器免费版这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在...
科技教程,wepoker机制发... 您好:wepoker机制发冤家牌这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很...