lavalink-devs / youtube-source

A rewritten YouTube source manager for Lavaplayer.
MIT License
147 stars 23 forks source link

403 error code from Youtube links #41

Closed OmarEfat closed 2 months ago

OmarEfat commented 2 months ago

Basic Troubleshooting

Version of youtube-source

1.5.1 YoutubeAudioSourceManager youtube = new YoutubeAudioSourceManager(/allowSearch:/ true, new Client[]{new MusicWithThumbnail(), new WebWithThumbnail(), new TvHtml5Embedded()});

The search query, URL, playlist or video ID that triggered the issue

N/A

Code Example

N/A

Exception and Stacktrace

16:00:32.081 lava-daemon-pool-playback-1-thread LocalAudioTrack ERROR Error in playback of G7KNmW9a75Y com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Something broke when playing the track. at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.wrapUnfriendlyExceptions(ExceptionTools.java:45) at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:121) at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$2(DefaultAudioPlayerManager.java:339) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) at java.base/java.lang.Thread.run(Thread.java:831) Caused by: java.lang.RuntimeException: Not success status code: 403 at com.sedmelluq.discord.lavaplayer.tools.io.PersistentHttpStream.validateStatusCode(PersistentHttpStream.java:88) at com.sedmelluq.discord.lavaplayer.tools.io.PersistentHttpStream.attemptConnect(PersistentHttpStream.java:124) at com.sedmelluq.discord.lavaplayer.tools.io.PersistentHttpStream.connect(PersistentHttpStream.java:106) at com.sedmelluq.discord.lavaplayer.tools.io.PersistentHttpStream.internalRead(PersistentHttpStream.java:158) at com.sedmelluq.discord.lavaplayer.tools.io.PersistentHttpStream.read(PersistentHttpStream.java:174) at java.base/java.io.DataInputStream.readByte(DataInputStream.java:271) at com.sedmelluq.discord.lavaplayer.container.matroska.format.MatroskaEbmlReader.readEbmlInteger(MatroskaEbmlReader.java:39) at com.sedmelluq.discord.lavaplayer.container.matroska.format.MatroskaFileReader.readNextElement(MatroskaFileReader.java:47) at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaStreamingFile.readFile(MatroskaStreamingFile.java:94) at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaAudioTrack.loadMatroskaFile(MatroskaAudioTrack.java:52) at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaAudioTrack.process(MatroskaAudioTrack.java:35) at com.sedmelluq.discord.lavaplayer.track.DelegatedAudioTrack.processDelegate(DelegatedAudioTrack.java:25) at dev.lavalink.youtube.track.YoutubeAudioTrack.processStatic(YoutubeAudioTrack.java:148) at dev.lavalink.youtube.track.YoutubeAudioTrack.processWithClient(YoutubeAudioTrack.java:116) at dev.lavalink.youtube.track.YoutubeAudioTrack.process(YoutubeAudioTrack.java:71) at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:109)

Nansess commented 2 months ago

i have noticed this as well, are you currently on the latest version of youtube source (1.5.1)?

devoxin commented 2 months ago

Can you try enable more clients?

OmarEfat commented 2 months ago

i have noticed this as well, are you currently on the latest version of youtube source (1.5.1)?

Yes

OmarEfat commented 2 months ago

Can you try enable more clients?

@devoxin sorry what you mean by "more clients"?

devoxin commented 2 months ago

Can you try enable more clients?

@devoxin sorry what you mean by "more clients"?

https://github.com/lavalink-devs/youtube-source?tab=readme-ov-file#available-clients

baskwo commented 2 months ago

I updated to 1.5.2 and still happening. I have WEB and WEB_REMIX. Do you want me to try another client? If so which one?

devoxin commented 2 months ago

Can you show me how you're registering the youtube source manager?

baskwo commented 2 months ago

within application.yaml `lavalink: plugins:

I don't know how to do a good formatting sadly on github :)

devoxin commented 2 months ago

Ah I assumed you were using Lavaplayer directly based on the code snippet in your first post. I just realised you are not OP (I will blame tiredness there)

You can try add more clients, yes. If you're only using TvHtml5Embedded and WEB (MUSIC is not used for playback) you run a higher risk of getting 403s.

baskwo commented 2 months ago

What client do you recommend to use?

devoxin commented 2 months ago

None specifically. It all depends on your requirements. Have a read of https://github.com/lavalink-devs/youtube-source?tab=readme-ov-file#available-clients and pick the ones that suit your requirements the best.

baskwo commented 2 months ago

Okey, I added TVHTML5EMBEDDED and ANDROID_MUSIC and it works now. Why would WEB get a 403? Rate limited?

devoxin commented 2 months ago

Sometimes it happens with no clear explanation as to why, but the idea is that enabling more clients offers more resilience against these 'edge cases'.

baskwo commented 2 months ago

Interesting! I might look up the stacktrace and try to see if I see something :) Thank you!

OmarEfat commented 2 months ago

We updated to 1.5.2 and now working, thanks