簡體   English   中英

videojs - 如何在直播 stream 期間捕獲自定義 http 錯誤代碼?

[英]videojs - How to catch custom http error codes during live stream?

我有一個正在使用 videojs 6.8 播放的實時 stream (HLS)。 對於某些用戶,播放開始后(大約加載了 4-5 個.ts文件)服務器向我拋出409錯誤。

我如何捕捉這個特定的錯誤代碼,以便我可以編程方式停止播放並顯示錯誤消息?

目前,videojs 一直在嘗試無限期地恢復播放。 我已經嘗試過retryplaylistblacklistplaylist但我得到的所有信息都是播放列表已被列入黑名單並且正在重試,我在我的console.log()中的任何地方都沒有看到 HTTP 代碼。 player.on('error')不會拋出任何錯誤。 我已經嘗試了以下所有三種方法,但都沒有給我 http 代碼:

    player.on('error', function (e) {
        // no log
        console.log(e);
    })

     player.tech().on('retryplaylist', function (e, data) {
       // logs that it is being retried, but no http code
       console.log('retry');
       console.log(e);
     })

    player.tech().on('usage', function (e, data) {
        // logs the even 'retryplaylist` but does not give me a http code.
        console.log('usage');
        console.log(e)
    })

我不想將我的消息放在retryplaylist中,因為在 slow.network 的情況下也會拋出該事件(我已經測試過了)。

我必須做什么才能捕獲特定的 409 錯誤?

看起來像:

var retries = 0;
player.tech().on('retryplaylist', function (e, data) {
  retries++;
  if (retries >= 3) {
    // do something
  }
})

暫無
暫無

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

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