videojs / video.js

Video.js - open source HTML5 video player
https://videojs.com
Other
37.51k stars 7.4k forks source link

A seek over 26.5 hours #7070

Open 545693349 opened 3 years ago

545693349 commented 3 years ago

Description

Briefly describe the issue. A problem has been encountered in a video that is over 26.5 hours. In the beginning, we were using videojs 7.8.4, and the video is stuck when seeking over 13 hours which is mentioned in mux.js lib/m2ts/timestamp-rollover-stream.js line 36. Then we upgrade videojs to 7.10.2, it has been solved but a seek over 26.5 hours will cause the video stuck or go back to a specific point maybe 10 hours something this point will change from time to time, or the video will end immediately. It may relate to the rollover point, but I didn't figure out how it works in videojs. Can anyone take a look? Any help would be appreciated.

Steps to reproduce

Explain in detail the exact steps necessary to reproduce the issue.

  1. Have a video over 26.5 hours, seeking a point over 26.5 from any time.
  2. In my case, we are using a 72 hour encrypted HLS and each .ts contains 3 seconds.

Results

Expected

All seek will success.

Actual

When I seek over 26.5 hours the video will

  1. be stuck
  2. go back to a specific point maybe 10 hours something this point will change from time to time
  3. the video will end immediately

Error output

Situation 1: No error output Situation 2: No error output Situation 3: VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists.

Additional Information

Please include any additional information necessary here. Including the following:

versions

videojs

what version of videojs does this occur with? 7.10.2

browsers

what browser are affected? Chrome 88, Edge, FireFox, IE

OSes

what platforms (operating systems and devices) are affected? Windows PC

plugins

are any videojs plugins being used on the page? If so, please list them below. No plugins

welcome[bot] commented 3 years ago

πŸ‘‹ Thanks for opening your first issue here! πŸ‘‹

If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can. To help make it easier for us to investigate your issue, please follow the contributing guidelines.

icanbedo commented 3 years ago

I'm seeing very similar behaviour to that reported by @545693349. I’ve got an always live HLS playlist with 8640, 10 second segments (24 hours of timeslip).

In video.js 7.8.4 and 7.9.7, playback fails when seeking over 13 hours. In video.js 7.10.1 or above, playback fails when you seek in a backward direction and pass the MPEG2-TS timestamp rollover.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.