FATAL_ERROR after second seek near end of the stream

オープン
#183 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
28/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
javascript

調査の方向性

リンクされた DASH ストリームを使用し、記載された再生と終端近くへのシークの手順に従って Chrome で問題を再現し、その後 first_seek.log と second_seek.log を比較します。ストリームの終端付近およびシークを繰り返した場合の JavaScript による再生処理とシーク処理を追跡します。報告された条件下で、終端近くへの 2 回目のシークが FATAL_ERROR を発生させなくなれば完了です。

索引モデルが issue の本文から書いたものです。

説明

Prerequisites:
Google Chrome 87.0.4280.66
BigScreen player: 4.4.3
Stream: https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd (default)

Steps to reproduce:
In devtools execute below commands on video tag:

  1. $0.play()
  2. $0.currentTime = 634.1
  3. Wait for video to ends
  4. $0.currentTime = 0
  5. $0.play()
  6. $0.currentTime = 634.1
  7. The second seek should fail with FATAL_ERROR, if not repeat points 4-6

The bug is a some kind of a race in the JS. Bug reproduce more frequently after enabling Verbose log level. Error occures also in Vewd Tv browser.

Note:
Near-end seek is extensively used in BBC Iplayer. When user perform the seek to the end of a stream in the UI, the BBC Iplayer set the current time right before end of a stream to play last seconds of the video.
The issue does not reproduce on Dash Reference Client 3.1.3

Log from first succeeded seek:
first_seek.log

Log from second failed seek:
second_seek.log

主要言語
JavaScript
スター
108
フォーク
18
平均マージ
1時間 30分
マージ済み PR(30日)
2

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

bbc/bigscreen-player のほかの issue

bbc/bigscreen-player の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。