Walkyst / lavaplayer-fork

Apache License 2.0
173 stars 68 forks source link

Loading information for a YouTube track failed. (Status code 400) #129

Closed Yellowstrawberrys closed 1 month ago

Yellowstrawberrys commented 5 months ago
ERROR com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager - Error in loading item https://www.youtube.com/watch?v=dvgZkm1xWPE
com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Loading information for a YouTube track failed.
    at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.wrapUnfriendlyExceptions(ExceptionTools.java:44)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:240)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:252)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:248)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromUrlWithVideoId(DefaultYoutubeLinkRouter.java:101)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromMainDomain(DefaultYoutubeLinkRouter.java:66)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.route(DefaultYoutubeLinkRouter.java:44)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItemOnce(YoutubeAudioSourceManager.java:216)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItem(YoutubeAudioSourceManager.java:147)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItemOnce(DefaultAudioPlayerManager.java:449)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItem(DefaultAudioPlayerManager.java:431)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$createItemLoader$0(DefaultAudioPlayerManager.java:223)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.executeQueue(OrderedExecutor.java:98)
    at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.run(OrderedExecutor.java:87)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:840)
    Suppressed: com.sedmelluq.discord.lavaplayer.tools.exception.EnvironmentInformation: 
  lavaplayer.version: 1.4.3-original
  os.arch: amd64
  os.name: Linux
  os.version: 5.15.0-86-generic
  java.vendor: Private Build
  java.version: 17.0.9
  java.runtime.version: 17.0.9+9-Ubuntu-122.04
  java.vm.version: 17.0.9+9-Ubuntu-122.04
Caused by: java.lang.RuntimeException: java.io.IOException: Invalid status code for video page response: 400
    at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.toRuntimeException(ExceptionTools.java:66)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadDetails(DefaultYoutubeTrackDetailsLoader.java:38)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:228)
    ... 16 more
Caused by: java.io.IOException: Invalid status code for video page response: 400
    at com.sedmelluq.discord.lavaplayer.tools.io.HttpClientTools.assertSuccessWithContent(HttpClientTools.java:157)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadTrackInfoFromInnertube(DefaultYoutubeTrackDetailsLoader.java:240)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.load(DefaultYoutubeTrackDetailsLoader.java:48)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadDetails(DefaultYoutubeTrackDetailsLoader.java:36)
    ... 17 more
Yellowstrawberrys commented 5 months ago

It's not age stricted. After restarting bot, it works again but after like 3~4days same error occur.

hypherionmc commented 5 months ago

Having the same issues with searching. If you try searching some videos by name, it gives the same 400 error, but if you then give the direct url to the video, it plays

JakubDralus commented 5 months ago

I have the same issue with 'ytsearch:' but when I search the same thing a number of times there is a chance that it plays without an error. Weird thing because I didn't have this error before and I didn't change anything in the code. First time I noticed this issue was like 2 weeks ago and it was pretty rare but today it is a lot worse. It takes like 6 tries to get the song to play with 'ytsearch'. (playing from url works just fine)
I also tried a fork that is more up to date and it's maintained currently: https://github.com/lavalink-devs/lavaplayer and the error is the same.

hypherionmc commented 5 months ago

I have the same issue with 'ytsearch:' but when I search the same thing a number of times there is a chance that it plays without an error. Weird thing because I didn't have this error before and I didn't change anything in the code. First time I noticed this issue was like 2 weeks ago and it was pretty rare but today it is a lot worse. It takes like 6 tries to get the song to play with 'ytsearch'. (playing from url works just fine) I also tried a fork that is more up to date and it's maintained currently: https://github.com/lavalink-devs/lavaplayer and the error is the same.

I ended up using this:

maven { url = "https://s01.oss.sonatype.org/content/repositories/snapshots" }

implementation 'dev.arbjerg:lavaplayer:727959e9f621fc457b3a5adafcfffb55fdeaa538-SNAPSHOT'

which is a snapshot build of the mentioned fork, which does fix the issues for me

JakubDralus commented 5 months ago

Thank you so much @hypherionmc! it fixed my issue. Also, why it this bug not fixed in official release?

azarzosa commented 5 months ago

Only recently started experiencing these issues. I tried using the snapshot hypherionmc gave with no luck.


    at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.wrapUnfriendlyExceptions(ExceptionTools.java:44)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:220)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:232)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:228)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromUrlWithVideoId(DefaultYoutubeLinkRouter.java:99)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromMainDomain(DefaultYoutubeLinkRouter.java:64)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.route(DefaultYoutubeLinkRouter.java:42)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItemOnce(YoutubeAudioSourceManager.java:196)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItem(YoutubeAudioSourceManager.java:131)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItemOnce(DefaultAudioPlayerManager.java:436)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItem(DefaultAudioPlayerManager.java:418)
    at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$createItemLoader$0(DefaultAudioPlayerManager.java:217)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.executeQueue(OrderedExecutor.java:98)
    at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.run(OrderedExecutor.java:87)
    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:832)
    Suppressed: com.sedmelluq.discord.lavaplayer.tools.exception.EnvironmentInformation: 
  lavaplayer.version: 1.3.71
  os.arch: amd64
  os.name: Windows 10
  os.version: 10.0
  java.vendor: Oracle Corporation
  java.version: 15.0.2
  java.runtime.version: 15.0.2+7-27
  java.vm.version: 15.0.2+7-27
Caused by: java.lang.RuntimeException: Error when extracting data EID: b2fa8de2-4465-4eae-b2df-b35543538c4d, mainJson<redacted>
    at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.throwWithDebugInfo(ExceptionTools.java:134)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.load(DefaultYoutubeTrackDetailsLoader.java:66)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadDetails(DefaultYoutubeTrackDetailsLoader.java:41)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:208)
    ... 16 more
Caused by: java.lang.RuntimeException: Neither player nor playerResponse in result EID: b2ea1206-a02e-4808-8086-c1127e9a2d36, json<redacted>
    at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.throwWithDebugInfo(ExceptionTools.java:134)
    at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeTrackJsonData.fromMainResult(YoutubeTrackJsonData.java:53)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadBaseResponse(DefaultYoutubeTrackDetailsLoader.java:76)
    at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.load(DefaultYoutubeTrackDetailsLoader.java:55)
    ... 18 more```
xFrann commented 2 months ago

Hello,

I've stumbled across this https://stackoverflow.com/questions/78244940/java-music-bot-not-playing-music?noredirect=1#comment137948948_78244940

It seems that if you use the following depedency it starts working again:

<repository>
        <id>arbjergDev-snapshots</id>
        <name>Lavalink Repository</name>
        <url>https://maven.lavalink.dev/snapshots</url>
</repository>
<dependency>
        <groupId>dev.arbjerg</groupId>
        <artifactId>lavaplayer</artifactId>
        <version>0eaeee195f0315b2617587aa3537fa202df07ddc-SNAPSHOT</version>
</dependency>
topi314 commented 2 months ago

development has mostly been moved to https://github.com/lavalink-devs/lavaplayer with a new rewritten youtube source located at https://github.com/lavalink-devs/youtube-source

I recommend you try that