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

Youtube livestream stops randomly. Plays live stream for 10 minutes and ends while livestream is still ongoing #263

Closed
PotatoCider opened this issue Jan 9, 2018 · 4 comments
Labels

Comments

@PotatoCider
Copy link

The livestream does not end immediately, the livestream would play for 10 minutes and randomly end without any error. When the video is a livestream, I wouldn't provide any options parameter to ytdl so therefore it would play with video and audio (Just that discord.js only uses the audio from the stream)

I don't think this is a duplicate of #231. I do not get any request path errors and neither did I specify audioonly in my filter settings. This should be a different issue. Creating new issue because I can't reopen #255 since its not a dupe of #231.

It could be a side effect of the stream lagging behind the actual version. (Since youtube only stores the last 2 hours of the livestream and the stream starting behind 2 hours) See #157.

Live stream used: https://www.youtube.com/watch?v=sKIbH-gXmX0

@fent
Copy link
Owner

fent commented Jan 9, 2018

Sorry about before.

Will require more investigation/debugging on my side, it might take a bit for me to get to it.

@fent fent added the bug label Jan 9, 2018
@FireController1847
Copy link
Collaborator

FireController1847 commented Jan 10, 2018

This is due to the way m3u8stream works with YouTube. I've made a PR on m3u8stream that should fix this along with allowing the fact that it'll start at the latest point in the stream.

Basically, m3u8stream will send a request to YouTube for the m3u8 stream. YouTube will then send back it's formatted version of the request (which is ALL archived data). m3u8 then reads this as "yes, okay, this is normal. go from top to bottom", when in reality YouTube is constantly updating that and doesn't read from top to bottom. It instead reads the bottom line over and over and you have to keep getting requests of 5s of video. Due to this, m3u8 will request 10 minutes of the video (the archived data), and then re-request 10 more minutes of archived data which breaks. My PR should fix this by telling m3u8 to constantly make new requests and read the bottom line.

@FireController1847
Copy link
Collaborator

@fent Don't forget to close this one, seems your comma after closes didn't wanna work 😝

@fent
Copy link
Owner

fent commented Jul 20, 2018

Need to learn that closing syntax

@fent fent closed this as completed Jul 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants