问题描述
var player: AVAudioPlayer! = nil
func playSound() {
guard let url = Bundle.main.url(forResource: "playing",withExtension: "mp3") else { return }
do {
try AVAudioSession.sharedInstance().setCategory(.playback,mode: .default)
try AVAudioSession.sharedInstance().setActive(true)
player = try AVAudioPlayer(contentsOf: url)
guard let player = player else { return }
player.play()
} catch let error {
print(error.localizedDescription)
}
}
AudioQueueObject.cpp:372:AudioQueueObject:AudioQueueNew中的AudioConverterNew返回了1718449215 io:1 ch,16000 Hz,浮点32 客户端:1 ch,16000 Hz,'.mp1'(0x00000000)0位/通道,0字节/数据包,384帧/数据包,0字节/帧
解决方法
我正在使用此代码播放声音
let sound = NSURL(fileURLWithPath: Bundle.main.path(forResource: "sound",ofType: "mp3")!)
audioPlayer = try! AVAudioPlayer(contentsOf: sound as URL)
audioPlayer.delegate = self
audioPlayer.prepareToPlay()
audioPlayer.play()
我观察到您在播放之前没有准备好媒体播放器。您只需要在播放音频之前调用此功能
player.prepareToPlay()