VoiceMessageAudioPlayer: Add support of URLs queue playback

To be used for voice broadcast
This commit is contained in:
manuroe 2022-10-19 23:01:04 +02:00
parent 85f2076be8
commit 34894bf559

View file

@ -35,7 +35,7 @@ enum VoiceMessageAudioPlayerError: Error {
class VoiceMessageAudioPlayer: NSObject {
private var playerItem: AVPlayerItem?
private var audioPlayer: AVPlayer?
private var audioPlayer: AVQueuePlayer?
private var statusObserver: NSKeyValueObservation?
private var playbackBufferEmptyObserver: NSKeyValueObservation?
@ -84,11 +84,16 @@ class VoiceMessageAudioPlayer: NSObject {
}
playerItem = AVPlayerItem(url: url)
audioPlayer = AVPlayer(playerItem: playerItem)
audioPlayer = AVQueuePlayer(playerItem: playerItem)
addObservers()
}
func addContentFromURL(_ url: URL) {
let playerItem = AVPlayerItem(url: url)
audioPlayer?.insert(playerItem, after: nil)
}
func unloadContent() {
url = nil
audioPlayer?.replaceCurrentItem(with: nil)