我正试图在tvOS(.au文件)上播放uLaw声音。我知道声音文件没有损坏,因为将它放入Audacity会让它播放没有错误。
我尝试了各种方法,从AVAudioPlayer到较低级别的AudioSession等,但没有一种方法有效。
音频文件的细节: G.711μ-law 8000kHz单声道音频流
Objective-C或Swift
编辑:这是一个流式文件,类似于MJPEG流。我目前通过NSURLSession获取数据。不确定这是否有帮助,但音频来自IP摄像头。
答案 0 :(得分:0)
8K的单声道μ律文件在iOS中与AVPlayer
或AVAudioPlayer
没有问题(在tvOS中应该相同)。
let avp = AVPlayer(URL: ulawFileURL)
avp.play()
它也适用于AVAudioPlayer:
let avp = try! AVAudioPlayer(contentsOfURL: ulawFileURL)
avp.play()
注意:如果您在Playground中执行此操作,则必须启用XCPlaygroundPage.currentPage.needsIndefiniteExecution = true
,因为play
方法是异步的。