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

Using web workers to run shaka #6441

Open
StormFury2701 opened this issue Apr 14, 2024 · 2 comments
Open

Using web workers to run shaka #6441

StormFury2701 opened this issue Apr 14, 2024 · 2 comments
Assignees
Labels
status: waiting on response Waiting on a response from the reporter(s) of the issue type: question A question from the community

Comments

@StormFury2701
Copy link

Have you read the Tutorials?
Yes

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

If the question is related to FairPlay, have you read the tutorial?

What version of Shaka Player are you using?
4.7.11

What browser and OS are you using?
Chrome + Windows

Please ask your question
I am interested in trying to measure potential benefits of using MSE in Web Worker for Shaka. I have found similar question #5008 and was wondering if there have been any changes in plans for supporting this functionality.
Additionally, as an alternative, I was looking into achieving this without changing shaka code by overriding a component that is responsible for handling MSE. I believe that would be MediaSourceEngine, I am not sure if this is possible at all since it is not a plugin. Is there any option for me to create an extension class for MediaSourceEngine or some other way to change the core logic of the MediaSourceEngine without changing shaka code?
Thank you!

@StormFury2701 StormFury2701 added the type: question A question from the community label Apr 14, 2024
@joeyparrish
Copy link
Member

One of the major things preventing Shaka from running in a worker context was our use of DOMParser, which isn't available there. However, this was recently changed. In v4.8.0, Shaka should be able to run without DOMParser.

I don't know much, but I expect it would be best to have some division within Shaka to allow some subset of components to be optionally hosted in a worker, with messages exchanged between the main player and those worker components. I'm sure MediaSourceEngine would be part of that, but I'm not sure what else. StreamingEngine? A copy of NetworkingEngine? I also wonder if we'll have trouble with any configuration shared between these two halves.

If you're interested in pursuing this, please make a proposal! I'm open to changes to the structure of the project to enable use in workers.

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label Apr 22, 2024
@StormFury2701
Copy link
Author

StormFury2701 commented Apr 23, 2024

Thank you for getting back to me so quickly with this! I am gonna look into v4.8.0 without the DOM parser next week, try to estimate locally what changes would be required for that and get back to you with a more detailed proposal.

@shaka-bot shaka-bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label Apr 23, 2024
@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label May 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: waiting on response Waiting on a response from the reporter(s) of the issue type: question A question from the community
Projects
None yet
Development

No branches or pull requests

4 participants