【发布时间】:2018-12-11 15:42:41
【问题描述】:
我正在尝试播放使用MPMediaPickerController 挑选的 url 音频文件,并在player 对象上附加一个观察者。我不知道为什么播放器不播放音频文件,设备上没有声音输出,也没有显示错误。
var timeObserverToken: Any?
func addPeriodicTimeObserver(url: URL) {
let playerItem = AVPlayerItem(url: url)
let player = AVPlayer(playerItem: playerItem)
player.play()
// Invoke callback every half second
let interval = CMTime(seconds: 0.5,
preferredTimescale: CMTimeScale(NSEC_PER_SEC))
let mainQueue = DispatchQueue.main
timeObserverToken = player.addPeriodicTimeObserver(forInterval: interval, queue: mainQueue) { [weak self] time in
//it is never called
print("time is \(time)")
}
}//end addPeriodicTimeObserver
【问题讨论】:
-
@AhmadF 我在控制台中只得到打印
time is CMTime(value: 0, timescale: 1, flags: __C.CMTimeFlags(rawValue: 1), epoch: 0),但没有声音播放。见imgur.com/a/b4N7n0f