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

Bruteforcing bad streams #6585

Closed
Wyyyned opened this issue May 11, 2024 · 4 comments
Closed

Bruteforcing bad streams #6585

Wyyyned opened this issue May 11, 2024 · 4 comments
Labels
type: question A question from the community

Comments

@Wyyyned
Copy link

Wyyyned commented May 11, 2024

Have you read the Tutorials?
Yes

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

What version of Shaka Player are you using?
4.8.3

What browser and OS are you using?
Chrome 122

Please ask your question
Is it possible to play some streams even if the server is bad and not caring for the best playback performance?.

https://shaka-player-demo.appspot.com/demo/#asset=http://168.232.168.242:4000/play/a00m/index.m3u8;panel=CUSTOM%20CONTENT;build=uncompiled (the url its from a random site but there are many streams that behave the same). On this demo it doesnt even start playback and there are buffer range errors. Thanks!

@Wyyyned Wyyyned added the type: question A question from the community label May 11, 2024
@joeyparrish
Copy link
Member

I don't know what you mean by "brute forcing" the stream. What do you expect the player to do?

If the expectation is "take arbitrary, non-conformant garbage and make it play correctly somehow"... that's not a reasonable expectation. 😁

If you can be more specific and tell us what you'd like to be done differently, or how we should interpret a given stream to make it play, I'd be happy to listen and consider it.

@Wyyyned
Copy link
Author

Wyyyned commented May 11, 2024

Well VLC and SS IPTV play those streams without hesitation, I was mostly wondering how ssiptv does it because it's html based im pretty sure, and I was trying to replicate that with shaka

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label May 13, 2024
@joeyparrish
Copy link
Member

VLC is known for error recovery, error masking, and tolerance. It's excellent at that, and it basically always has been. VLC also owns the demuxers & decoders, whereas Shaka Player relies on the browser for demuxing and decoding. If the browser doesn't tolerate your stream, there's very little we can do about that.

We can do some amount of transmuxing for TS content and packed audio streams for compatibility, but we can't, in general, fix a broken container, and we definitely have no way to fix an encoded bitstream. In fact, the same browser can have different decoder implementations on different operating systems. You might have a hardware decoder on Android, but software for the same codec on Linux. And hardware decoders tend to be much less forgiving.

In many cases, if you control the content, you might find re-encoding it from the original sources with an updated encoder can fix many problems with a non-compliant bitstream. For example, many of Shaka's VP9 demo assets were failing to decode on some platforms, and we fixed it by updating libvpx and ffmpeg and re-encoding them from their sources.

I hope this helps!

@shaka-bot shaka-bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label May 14, 2024
@Wyyyned
Copy link
Author

Wyyyned commented May 14, 2024

Thank you so much for the information it's very useful!, I ended up doing some reverse on the ssiptv source and it's very hacky to make work different streams on diverse TV brands, with that particular stream removing /index.m3u8 works don't ask me why, so it's just a matter of debugging!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: question A question from the community
Projects
None yet
Development

No branches or pull requests

4 participants