簡體   English   中英

iOS上的直播應用程序中的錯誤849

[英]Error 849 in livestreaming application on iOS

我正在開發iOS應用程序的直播功能。 我使用了ContainerView中包含的AVPlayerViewController來顯示視頻。

故事板截圖

這是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的新手,我對可能出現的問題沒有任何想法,但是如果我不得不猜測,我會說這是音頻和視頻同步的問題。

任何和所有幫助表示贊賞。

您的代碼中有兩個問題非常明顯。

  1. 您有兩個streamPlayer變量。
  2. AVPlayerViewController變量應為全局變量

通過將AVPlayerViewController屬性聲明作為全局變量放入接口擴展中,應該可以解決該錯誤。

代碼看起來像這樣:

@interface ViewController ()

@property (nonatomic) MPMoviePlayerController *mpStreamPlayer;
@property (nonatomic) AVPlayerViewController *avStreamPlayer;

@property (nonatomic) BOOL isPlaying;

@end

@implementation ViewController


- (void)viewDidLoad ... // continue as expected

我認為它將得到解決的原因是由於這個類似的問題,社區中的成員遇到了錯誤849 (其代碼庫為SWIFT)和有效答案。

這可能與iOS 9錯誤有關,將m3u8粘貼到Safari中,可能會遇到相同的問題(中間音頻中斷,音頻/視頻不同步),您的代碼無能為力。

在此處查看一些報告,Apple工程師要求提交錯誤報告。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM