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

Non-shaka error caught in streaming_engine when loading HLS manifest in the presence of mux.js #2187

Closed
chenein opened this issue Oct 14, 2019 · 2 comments
Assignees
Labels
status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Milestone

Comments

@chenein
Copy link

chenein commented Oct 14, 2019

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

What version of Shaka Player are you using?
2.5.5

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

Can you reproduce the issue with the latest code from master?
Unknown - I am using the google hosted very

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

If custom app, can you reproduce the issue using our demo app?
N/A - depends on my manifest

What browser and OS are you using?
Safari and Firefox on Mac OS X 10.13.6

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

What are the manifest and license server URIs?

Manifest:
https://cod.ckcufm.com/cgi-bin/stream-server?broadcast_id=45185&program_id=31&streamtype=hlsmaster

Player as embedded:
https://cod.ckcufm.com/programs/ondemand-player.html?id=31356&token=O}6]sg\2(wUsgXPIcT7%2600%2C6UztHNm\HE`1msAt~b%2Bm'0sJp~u

License server: N/A

What did you do?
Playback of an HLS playlist in the presence of mux.js 5.5.1

What did you expect to happen?
Audio!

What actually happened?
Audio player loaded media but failed to start playing, with errors in the console that I was not able to figure out even in debug mode (see image). The error appears to be a non-Shaka error that Shaka is not happy to catch at this point in the code.

Screen Shot 2019-10-14 at 17 11 30

Note that if I remove the mux.js library from the head element, then as expected Shaka generates error code 4032 for this HLS stream. I am not an expert in deploying js projects, so it is possible that I have got something wrong with my mux.js build. However, I can't tell what this is because Shaka is eating the error.

@joeyparrish
Copy link
Member

Thank you for the report! We will try to reproduce the issue with the manifest URL you included.

@TheModMaker
Copy link
Contributor

It looks like the check for captions isn't valid and we try to append embedded captions for the stream. Since there isn't any video stream, we can't find its timestampOffset. This is the culprit line, caused by the if statement checking for truthy values instead of checking for a non-empty list.

@TheModMaker TheModMaker self-assigned this Oct 25, 2019
@TheModMaker TheModMaker added type: bug Something isn't working correctly and removed needs triage labels Oct 25, 2019
@TheModMaker TheModMaker added this to the v2.6 milestone Oct 25, 2019
TheModMaker added a commit that referenced this issue Nov 6, 2019
An empty list is still truthy, so the if statement should check for a
non-empty list instead.  This ensures we don't try to append captions
when we play audio-only content.

Fixes #2187

Change-Id: I589a5508878ab28ad1ac69211f331ea829fa8b28
@shaka-project shaka-project locked and limited conversation to collaborators Dec 27, 2019
@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

4 participants