Shaka-player: playback wrong position

Created on 11 Mar 2020  路  12Comments  路  Source: google/shaka-player

Have you read the FAQ and checked for duplicate open issues?
Yes

What version of Shaka Player are you using?
2.5.9

Can you reproduce the issue with our latest release version?
Yes

Can you reproduce the issue with the latest code from master?
Yes

Are you using the demo app or your own custom app?
custom

If custom app, can you reproduce the issue using our demo app?
No

What browser and OS are you using?
Chrome 80, Windows 10

For embedded devices (smart TVs, etc.), what model and firmware version are you using?
-

What are the manifest and license server URIs?
nodejs simple app with all files:
https://drive.google.com/file/d/1TDdqfLEZmpplj6_eZMaQg8F2RPK_5VmP/view?usp=sharing

What did you do?
node index.js
open http://localhost:3000

What did you expect to happen?
Playback should start from the beginning.

What actually happened?
Total duration is wrong.
Start position is wrong.

https://drive.google.com/file/d/1aXquilGNrO6_bXsVyFYjCDyGW0T6hox_/view?usp=sharing

archived

Most helpful comment

@One041 That is a known issue: https://github.com/google/shaka-packager/issues/720. Dockerhub auto build stopped working after GitHub authorization update last year. We'll address it soon. Sorry for the confusion.

All 12 comments

Hi, thanks for the report.
A few questions to help us debug:

  • is this reproducible on our demo page?
  • what manifest url are you using?
  • I guess no
  • You can find manifest in package.zip

Alright, here's what I see: your manifest is a Live one (mpd type="dynamic" in the manifest text), so it starts at the live edge, not at the start of the content. This is expected behavior as the manifest tells us to start at that point.

The weird duration thing seems to be a Chrome bug. I can repro this on our demo page using browser native controls. (This is what you're using on your page as well by specifying 'controls' on your video element:

In the meantime, let's try and get you going with our custom controls that don't have the same problem.
@joeyparrish can you advise please, they're including the shaka build from the npm.
I changed the link to the ui build: https://cdn.jsdelivr.net/npm/[email protected]/dist/shaka-player.ui.debug.js, but I'm not seeing our CSS. Don't we bundle it with everything else? Am I missing something?
I'm working off the code @One041 provided in the attachment, which seems to be based on our tutorial.

It is expected to see a weird duration with native controls on a live stream. As of the time of this writing (March 2020), it has always been that way, in all browsers. We can't tell the browser "here's the seek range" (yet). For that, we have custom controls.

Yes, I used code from tutorial and manifest file has been generated by shaka packager.
Well, seems problem in the type of manifest. I needed 邪 static type. When trying to generate manifest with static type:
ERROR: unknown command line flag 'generate_static_live_mpd'

Does it make sense to ask about this in shaka packager repo?

@One041 I have a feeling you might want a VOD manifest, not a live one, is that right?
A live manifest suggests your presentation is happening in real time, or is emulating it. (Like a live concert or a sports event translation)
A VOD (Video-On-Demand) manifest is something that's available any time, from beginning to the end (like a movie on Netflix). Which one did you have in mind?

For VOD you can follow the first ("on-demand") examples from the packager tutorial.

JFYI, I was able to get your code working with our controls by following our UI tutorial. If you do want a live manifest, I can help you set it up with a decent UI experience.

@ismena Exactly! VOD is what I need. "on-demand" example generate 1 file per stream, but I need segmented stream. So I tried "static-live" example. Result:
https://drive.google.com/file/d/17gBqrVdKIG0rEf2qRHwa6oIWDxbgmYF3/view?usp=sharing

@One041 I haven't worked too closely with the packager, but I think the static-live example still assumes live content as opposed to VOD. Let me tag the packager lead here for advice. KQ @kqyang ! :)

Also @joeyparrish and @TheModMaker from our team are pretty experienced with the packager. Thoughts, gentlemen?

@ismena DASH static live is actually for VOD. That is a weird name, but it is defined by DASH specification.

@One041 Re https://github.com/google/shaka-player/issues/2452#issuecomment-597825790, which version of packager are you using? For versions before v2.4.0, the flag name is --generate_static_mpd.

@kqyang I used docker latest image. I noticed that it has been updated 7 months ago, so decided to download latest release from packager repo. generate_static_live_mpd works now and player working correct with new generated manifest file.

Thank you very much everyone for help. Have a good weekend :)

@One041 That is a known issue: https://github.com/google/shaka-packager/issues/720. Dockerhub auto build stopped working after GitHub authorization update last year. We'll address it soon. Sorry for the confusion.

@kqyang Thanks for jumping in to help <3

Was this page helpful?
0 / 5 - 0 ratings

Related issues

alexandercerutti picture alexandercerutti  路  5Comments

NicolasSiver picture NicolasSiver  路  4Comments

diogoazevedos picture diogoazevedos  路  4Comments

diogoazevedos picture diogoazevedos  路  5Comments

interpegasus picture interpegasus  路  3Comments