Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to play m3u8 HLS stream #1625

Closed
bansalvks opened this issue Oct 17, 2018 · 17 comments
Closed

Unable to play m3u8 HLS stream #1625

bansalvks opened this issue Oct 17, 2018 · 17 comments
Assignees
Labels
status: archived Archived and locked; will not be updated type: bug Something isn't working correctly

Comments

@bansalvks
Copy link

bansalvks commented Oct 17, 2018

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

What version of Shaka Player are you using?:
2.5.0-beta

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?:

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

What browser and OS are you using?:
Chrome on OSX

What are the manifest and license server URIs?:
Skipping to 10 seconds
https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8

Not playing
https://watch.hoichoi.stream/movies/Chaya-Surya/hls/CHAYA_SURYA.m3u8

What did you do?
Tried to play normal HLS

What did you expect to happen?
Video should be played

What actually happened?
Errors

A very heartwarming hello to shaka team :)

I am facing 2 issues with Non DRM HLS Streams.

ISSUE 1
skipping to 10

URI: https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8

Content automatically skipping to 10 seconds.
CodePen Example: https://codepen.io/bansalvks-the-decoder/pen/xyYgEp?editors=1010

If I am playing the same stream with HLS.js then its working fine, example
https://codepen.io/bansalvks-the-decoder/pen/pxaRdN?editors=0010

ISSUE 2

ERROR: 4030 -- MANIFEST.HLS_COULD_NOT_PARSE_SEGMENT_START_TIME
Unable to fetch a partial HLS segment! Falling back to a full segment request, which is expensive!

URI: https://watch.hoichoi.stream/movies/Chaya-Surya/hls/CHAYA_SURYA.m3u8

SHAKA CODEPEN: https://codepen.io/bansalvks-the-decoder/pen/JmpXWR?editors=1011

With Hls.js its working fine.
HLS.js CODEPEN : https://codepen.io/bansalvks-the-decoder/pen/gBvgGN?editors=0010

I am very new to streaming domain and I am trying my best.. Many Thanks for everything,

Your Fan,
Vikas Bansal

P.S: I am not comparing HLS.js with Shaka player, I am just trying to validate the streams... Please do not take it wrong..

@ismena
Copy link
Contributor

ismena commented Oct 17, 2018

Hi Vikas, for the skipping 10 seconds part, I'm pretty sure it's our default manifest configuration in play.

Apple's tools package their hls content with a 10 seconds presentation delay (don't ask why :)), so we made it a default, assuming that most of the content our there is being packaged with Apple's tool.
Looks like your content was not :)

Please try calling player.configure('manifest.defaultPresentationDelay', 0); before the load call, I think, it should fix it.

@bansalvks
Copy link
Author

@ismena thank you for replying, it means a lot.

I updated the codepen : https://codepen.io/bansalvks-the-decoder/pen/xyYgEp?editors=0010

and added the config that you mentioned
player.configure('manifest.defaultPresentationDelay', 0);
However it does not work. :( still stuck with both issues.

@ismena
Copy link
Contributor

ismena commented Oct 18, 2018

Ahh, I was so sure, that was it :)
Sorry for the random guess, I'll do a proper investigation tomorrow.

@vksbansal
Copy link

vksbansal commented Oct 19, 2018

Many thanks @ismena... it feels so good and emotionally helpful that someone is looking after your issue. Huge thanks for devoting your time.

I am struggling with playing HLS .m3u8 streams in shaka player...

P.S/FYI: I am working for a content distributor not content owners so I have to support all kind of streams.. I cannot or request to alter or change streams manifest. We just have to play it.

@ismena
Copy link
Contributor

ismena commented Oct 19, 2018

Okay, so it seems like we're parsing the 10 seconds offset from the content itself.
This might be a problem with our parser, though, especially given that hls.js is able to do it right.

The bad news is, I'll have to consult the person who wrote the ts parser, who will be back from vacation in a week.

The good new is, I'm assigning the issue to him and have just put a big pink sticky note on his monitor, asking him to look at the issue, so there is no way he misses it.

Sorry it's taking longer!

@ismena
Copy link
Contributor

ismena commented Oct 19, 2018

@joeyparrish could you please check if our parser is doing something wrong, once you're back

@vksbansal
Copy link

@ismena You have the skill of cutting the tension with a hilarious comment just like one of my fav char Cisco Ramon

Will be waiting for the response from @joeyparrish and hope he will like the big pink sticky note on his monitor :D :X :)

@ismena
Copy link
Contributor

ismena commented Oct 19, 2018

Aww, I've never been compared to a superhero before 😊

@TheModMaker
Copy link
Contributor

Noticed in #1602, fixed in bc7f31e. You can try the nightly to see it works: https://nightly-dot-shaka-player-demo.appspot.com

@TheModMaker TheModMaker added type: bug Something isn't working correctly and removed needs triage labels Oct 22, 2018
@TheModMaker
Copy link
Contributor

The second isn't playing because we can't parse the TS data. We only support playing encrypted TS through Widevine, we don't support AES-128 (see #850). With Widevine encryption, the TS headers are still in the clear, so we can pull the start time out of it. With AES-128, the whole data is encrypted, so we can't get the start time. Even if we ignored that error, we would get a different error later since we don't support AES-128.

@ismena
Copy link
Contributor

ismena commented Oct 22, 2018

Thank you @TheModMaker, I should've known to ask you!
On the down side, I'll have to take the sticky note off Joey's monitor now.

@vksbansal
Copy link

vksbansal commented Oct 23, 2018

Many thanks @TheModMaker @ismena for sparing your time to look at this issue

First Issue:
As you said I used
https://nightly-dot-shaka-player-demo.appspot.com/dist/shaka-player.compiled.debug.js
and found that the video is still skipping 10 seconds as you can see in this code pen

Second issue:
Its seems that I have to use another lib e.g.HLS.js to play the AES-128 content. If you know a workaround please let me know.

Many thanks, with hearty heartful appreciation

@TheModMaker
Copy link
Contributor

Many thanks @TheModMaker @ismena for sparing your time to look at this issue

First Issue:
As you said I used
https://nightly-dot-shaka-player-demo.appspot.com/dist/shaka-player.compiled.debug.js
and found that the video is still skipping 10 seconds as you can see in this code pen

Did you try clearing your browser cache? When I go to the code pen link it plays from 0.

Second issue:
Its seems that I have to use another lib e.g.HLS.js to play the AES-128 content. If you know a workaround please let me know.

Unfortunately yes, until #850 is closed you'll need to use something else to play that content.

@vksbansal
Copy link

Yes its working fine after cleaning cache. Pardon me for my ignorance @TheModMaker

Waiting for the release with this fix.
May I Know when will it be released?

Many thanks : )

@TheModMaker
Copy link
Contributor

#850 is a lower priority for the moment, we are more interested in FairPlay support in #382. So it won't appear in v2.5; v2.6 is slated to be a code-health release where we are focusing on cleaning the code up and doing some refactorings. So it will probably not appear until at least v2.7.

@bansalvks
Copy link
Author

This is a Disheartening News for me @TheModMaker

May I know the release cycle span. So that I may guess how soon will we get the release v2.7

@TheModMaker
Copy link
Contributor

We released v2.4 in May and are still working on v2.5. v2.6 will hopefully have a shorter release cycle, but it is hard to tell. It will probably be at least 6 months before we can work on that feature.

@shaka-project shaka-project locked and limited conversation to collaborators Dec 21, 2018
@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Apr 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
Development

No branches or pull requests

6 participants