无法在Swift 5,Xcode 11,iOS 13中流式传输音频

问题描述 投票:0回答:1

但是,我正在尝试流式传输mp3文件。有一些人在堆栈溢出中对此提出了疑问,但没有人帮助。

private let url =
"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-3.mp3"

override func viewDidLoad() {
    super.viewDidLoad()

    let item  = AVPlayerItem.init(url: URL(string: url)!)
    let player = AVPlayer(playerItem: item)
    player.play()
}

第二个问题是:有没有比纯AVPlayer更好的第三方库?

ios swift avplayer
1个回答
0
投票

您的AVPlayer实例player在viewDidLoad的本地范围内。一旦viewDidLoad范围结束,它的内存就会丢失。

因此,在类范围/级别上声明您的AVPlayer实例。

例如

private let url =
"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-3.mp3"

var player: AVPlayer!

override func viewDidLoad() {
    super.viewDidLoad()

    let item  = AVPlayerItem.init(url: URL(string: url)!)
    player = AVPlayer(playerItem: item)

    player.play()
}
© www.soinside.com 2019 - 2024. All rights reserved.