AVAudioPlayerNode 在停止和重新启动时跳过了很多声音。
创始人
2024-11-12 21:30:21
0次

当AVAudioPlayerNode停止和重新启动时跳过声音的问题通常是由于调用了scheduleBuffer方法多次导致的。为了解决这个问题,我们可以使用以下方法:

  1. 定义一个布尔变量isPlaying来跟踪音频播放状态。
var isPlaying = false
  1. 在启动音频播放之前,检查isPlaying变量的值,如果为true则返回。
if isPlaying {
    return
}
  1. 在开始播放之前,先停止播放器。
playerNode.stop()
  1. 使用scheduleBuffer方法播放音频。
let audioFile = try! AVAudioFile(forReading: url)
let audioBuffer = AVAudioPCMBuffer(pcmFormat: audioFile.processingFormat, frameCapacity: AVAudioFrameCount(audioFile.length))
try! audioFile.read(into: audioBuffer)
playerNode.scheduleBuffer(audioBuffer, completionHandler: nil)
  1. 在播放音频后将isPlaying变量设置为true。
isPlaying = true
  1. 在停止音频播放时将isPlaying变量设置为false,并停止播放器。
isPlaying = false
playerNode.stop()

这样,当AVAudioPlayerNode重新启动时,之前的声音将会被清除,并且不会跳过声音。

相关内容

热门资讯

黑科技辅助!棋牌室(辅助),奕... 黑科技辅助!棋牌室(辅助),奕棋耍大牌竟然是真的有透视挂app(今日头条辅助)1、奕棋耍大牌辅助器安...
黑科技外挂!葫芦娃七子降妖(外... 黑科技外挂!葫芦娃七子降妖(外挂),中至上饶麻将果然存在有透视挂app(有辅助挂方法)1、许多玩家不...
黑科技辅助器!搜圈(辅助器),... 黑科技辅助器!搜圈(辅助器),微乐云南麻将竟然是有透视挂教程(确实有辅助挂)1、在微乐云南麻将插件功...
黑科技辅助器!云烟休闲(辅助器... 黑科技辅助器!云烟休闲(辅助器),越乡游斗地主切实真的有透视挂软件(有辅助挂方法)1、下载好越乡游斗...
黑科技辅助!海潮娱乐(辅助),... 黑科技辅助!海潮娱乐(辅助),快乐大本赢都是有透视挂教程(有辅助挂头条)1、许多玩家不知道快乐大本赢...
黑科技作弊器!点点四川长牌(作... 黑科技作弊器!点点四川长牌(作弊器),快乐大本赢好像是有透视挂攻略(有辅助挂技术)1、首先打开点点四...
黑科技作弊器!玖乐游戏(作弊器... 黑科技作弊器!玖乐游戏(作弊器),欢乐划水麻将一直是有透视挂攻略(详细教程辅助)1、任何欢乐划水麻将...
黑科技外挂!畅享徐州麻将(外挂... 黑科技外挂!畅享徐州麻将(外挂),I Star其实是有透视挂插件(有辅助挂方针)1、许多玩家不知道畅...
黑科技外挂!棋趣联盟(外挂),... 黑科技外挂!棋趣联盟(外挂),新老夫子本来真的是有透视挂工具(有辅助挂辅教程)1)新老夫子免费钻石:...
黑科技辅助!斗棋赤壁打滚(辅助... 黑科技辅助!斗棋赤壁打滚(辅助),芙蓉大厅总是真的是有透视挂攻略(有辅助挂助手)1、下载好斗棋赤壁打...