如何更改 AVPlayer Live Streaming URL?
How to change AVPlayer Live Streaming URL?
您好开发人员和专家,我需要您的好建议和帮助。我正在开发一个有四个不同无线电频道(按钮)的应用程序。我正在使用 AVPlayer 进行直播。我想在 ViewDidLoad 中创建一个 AVPlayer 对象,只需使用四个不同的按钮更改流 url,而不必一次又一次地重新创建 AVPlayer 对象。我用谷歌搜索但没有找到任何解决方案。所以你的好建议和帮助将不胜感激。谢谢
- (IBAction)playBtn_clicked:(id)sender {
NSURL *streamURL = [NSURL URLWithString:urlString];
// I don't like this line, creating a new object again and again
_streamPlayer = [[AVPlayer alloc] initWithURL:streamURL];
if (_streamPlayer.rate == 1.0) {
[_streamPlayer pause];
} else {
[_streamPlayer play];
}
}
AVPlayer 有一种方法可以将 "currentItem" 更改为新的。
在 ViewDidLoad() 上
let player = AVPlayer(playerItem: nil) // You can use an item if you have one
然后,当你想改变当前项目时...或者设置nil来移除它...
player.replaceCurrentItem(with: AVPlayerItem(url: streamingURL))
注意:是的,它在 Swift 3 中,我手边没有它的 ObjC 版本。
这样,您可以创建一个 AVPlayer 实例,并处理当前正在播放的 AVPlayerItem。
最后,我通过替换 AVPlayer 中的当前项而不是更改播放器中的 Streaming URL 找到了解决方案。
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
_streamPlayer = [[AVPlayer alloc] init];
}
- (IBAction)playBtn_clicked:(id)sender {
NSURL *streamURL = [NSURL URLWithString:_urlString];
AVPlayerItem *currentItem = [[AVPlayerItem alloc] initWithURL:streamURL];
[_streamPlayer replaceCurrentItemWithPlayerItem:currentItem];
}
您好开发人员和专家,我需要您的好建议和帮助。我正在开发一个有四个不同无线电频道(按钮)的应用程序。我正在使用 AVPlayer 进行直播。我想在 ViewDidLoad 中创建一个 AVPlayer 对象,只需使用四个不同的按钮更改流 url,而不必一次又一次地重新创建 AVPlayer 对象。我用谷歌搜索但没有找到任何解决方案。所以你的好建议和帮助将不胜感激。谢谢
- (IBAction)playBtn_clicked:(id)sender {
NSURL *streamURL = [NSURL URLWithString:urlString];
// I don't like this line, creating a new object again and again
_streamPlayer = [[AVPlayer alloc] initWithURL:streamURL];
if (_streamPlayer.rate == 1.0) {
[_streamPlayer pause];
} else {
[_streamPlayer play];
}
}
AVPlayer 有一种方法可以将 "currentItem" 更改为新的。
在 ViewDidLoad() 上
let player = AVPlayer(playerItem: nil) // You can use an item if you have one
然后,当你想改变当前项目时...或者设置nil来移除它...
player.replaceCurrentItem(with: AVPlayerItem(url: streamingURL))
注意:是的,它在 Swift 3 中,我手边没有它的 ObjC 版本。
这样,您可以创建一个 AVPlayer 实例,并处理当前正在播放的 AVPlayerItem。
最后,我通过替换 AVPlayer 中的当前项而不是更改播放器中的 Streaming URL 找到了解决方案。
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
_streamPlayer = [[AVPlayer alloc] init];
}
- (IBAction)playBtn_clicked:(id)sender {
NSURL *streamURL = [NSURL URLWithString:_urlString];
AVPlayerItem *currentItem = [[AVPlayerItem alloc] initWithURL:streamURL];
[_streamPlayer replaceCurrentItemWithPlayerItem:currentItem];
}