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辅助... 今日科普辅助!来几局app辅助透视挂,红心吴江麻将确实有外挂,总是有挂方法1、起透看视 来几局app...
一分钟教会你透视挂!娱友乐辅助... 一分钟教会你透视挂!娱友乐辅助透视挂,指尖四川麻将确实有外挂,本来有挂助手1、用户打开应用后不用登录...
此事迅速冲上热搜透视挂!飘飘辅... 此事迅速冲上热搜透视挂!飘飘辅助透视挂,搓白武汉麻将存在有外挂,都是有挂工具1、搓白武汉麻将模拟器是...
现就发布提示开挂!全民游戏辅助... 现就发布提示开挂!全民游戏辅助透视挂,越乡游双扣真的有外挂,原来真的有挂1、越乡游双扣免费脚本咨询教...
不少玩家反映开挂!多乐够级辅助... 不少玩家反映开挂!多乐够级辅助透视挂,开心武汉花是真的有外挂,一贯有挂分析开心武汉花脚本下载中分为三...
来一盘开挂!趣享时光辅助透视挂... 来一盘开挂!趣享时光辅助透视挂,微友南昌麻将真的是有外挂,一直有挂助手趣享时光辅助器是一种具有地方特...
我来教大家透视挂!腾达填大坑辅... 我来教大家透视挂!腾达填大坑辅助透视挂,蜀山四川麻将是真的有外挂,其实有挂讲解1、实时腾达填大坑透视...
一直以来辅助!66红中麻将辅助... 一直以来辅助!66红中麻将辅助透视挂,贵花麻将是真的有外挂,切实有挂工具1、进入到66红中麻将是否有...
分享给玩家辅助!蔷薇辅助透视挂... 分享给玩家辅助!蔷薇辅助透视挂,扣点麻将存在有外挂,竟然果真有挂1、超多福利:超高返利,海量正版游戏...
热点推荐辅助!博鱼辅助透视挂,... 热点推荐辅助!博鱼辅助透视挂,老牌友河南麻将是真的有外挂,确实有挂秘笈1、该软件可以轻松地帮助玩家将...