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重新启动时,之前的声音将会被清除,并且不会跳过声音。

相关内容

热门资讯

智星德州菠萝偷偷看牌功能!微扑... 此外,数据分析德州(微扑克wpk有挂吗)辅助神器app还具备辅助透视行为开挂功能,通过对客户微扑克w...
黑科技透明挂!(wepoKE)... 黑科技透明挂!(wepoKE)软件透明挂,(WePoke)原先有挂,教你攻略(有挂辅助)1、许多玩家...
aapoker辅助工具!云扑克... 自定义德扑之星软件透明软件系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,...
黑科技工具!(wpK)透视辅助... 黑科技工具!(wpK)透视辅助软件,(WpK)先前存在有挂,微扑克教程(有挂神器)1、点击下载安装,...
aapoker透明挂!德州辅助... aapoker透明挂!德州辅助,德州软件辅助计算,软件教程(一贯存在有挂);最新版2024是一款经典...
黑科技工具!(wepokE)软... 黑科技工具!(wepokE)软件透明挂,(wepoKE)都是有挂,曝光教程(有挂透明);小薇(透视辅...
黑科技攻略!(wPk)透视辅助... 黑科技攻略!(wPk)透视辅助机制,(wpK)往昔存在有挂,安装教程(有挂神器)1、许多玩家不知道w...
wepoke一定有挂!德州ai... wepoke一定有挂!德州ai机器人软件开发,pokerworld下载外挂,切实教程(最初是有挂);...
黑科技脚本!(约局吧)外挂辅助... 黑科技脚本!(约局吧)外挂辅助工具,(智星德州扑克)好像存在有挂,高科技教程(有挂辅助);1.智星德...
aapoker有外挂!微扑克怎... 1、aapoker有外挂!微扑克怎么在软件内设置,wepoke辅助透,玩家教程(总是是有挂)(UU ...