我正在研究iOS應用程序的直播功能。我使用了ContainerView中包含的AVPlayerViewController來顯示視頻。iOS上的直播應用程序中的錯誤849
這裏是對的ViewController
@interface ViewController()
@property MPMoviePlayerController* streamPlayer;
@property BOOL isPlaying;
@end
AVPlayerViewController *streamPlayer;
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.isPlaying = NO;
NSURL *streamURL = [NSURL URLWithString:@"http://vevoplaylist-live.hls.adaptive.level3.net/vevo/ch1/appleman.m3u8"];
streamPlayer = [[ UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"StreamPlayer" ];
streamPlayer.player = [ AVPlayer playerWithURL:streamURL ];
}
- (IBAction)playVideo:(id)sender{
if (!self.isPlaying){
[ streamPlayer.player play ];
[self.button setTitle:@"Stop" forState:UIControlStateNormal ];
self.isPlaying = YES;
} else {
[ streamPlayer.player pause ];
[self.button setTitle:@"Play" forState:UIControlStateNormal ];
self.isPlaying = NO;
}
}
相關代碼(您可以忽略IsPlaying模塊變量,它只是爲了看看我能控制)
流啓動並正常工作幾分鐘,然後停止/緩衝(我認爲)幾秒鐘,並顯示一個錯誤:
ERROR: 849: AudioQueue: request to trim 4291961269 + 0 = 4291961269 frames from buffer containing 21504 frames
在此之後流繼續,但沒有音頻。
偶爾會有一兩個音頻,但立即再次顯示錯誤,並且數據流將保持靜默。 (當Pitbull視頻正在播放時,我很高興)。
如果我暫停播放並播放它,音頻會返回幾分鐘,然後再次關閉。
我已經搜索了這個錯誤,但還沒有找到任何東西來幫助我解決這個問題。對於iOS和HLS相對來說比較陌生,對於問題可能是什麼,我沒有任何想法,但是如果我不得不猜測我會說這是音頻和視頻同步的問題。
任何和所有的幫助表示讚賞。