lavalink-devs / Lavalink

Standalone audio sending node based on Lavaplayer.
https://lavalink.dev/
MIT License
1.56k stars 674 forks source link

Play-dl support #534

Open getxd-dev opened 2 years ago

getxd-dev commented 2 years ago

Use play-dl for extracting YT videos.

https://www.npmjs.com/package/play-dl

Ryan5453 commented 2 years ago

I seriously doubt Lavalink will ever switch from Lavaplayer because the whole purpose is to provide a separate Lavaplayer node. Besides that, it wouldn’t work anyway seeing that’s an npm package and Lavalink is written in either java or kotlin (i forget)

freyacodes commented 2 years ago

I'm not opposed to having multiple downloader libraries. The big issue is that play-dl is a JS library which is difficult to integrate into a JVM application like Lavalink. It might be possible with something like GraalVM, but that would require users to switch to that specific JVM.

https://www.graalvm.org/reference-manual/js/JavaInteroperability/

The downloaded audio would then go through Lavaplayer to be processed.

Significant changes would have to be made to Lavalink to make all of this possible.

Lavalink is written in either java or kotlin (i forget)

Both! They are interoperable JVM languages.

DaliborTrampota commented 2 years ago

check this out https://github.com/AmandaDiscord/Volcano its 1:1 replacement for lavalink which runs on js and ytdl. It mirrors the lavalink api so no code needs to be rewritten

PapiOphidian commented 1 year ago

would not recommend tbh

Fyphen1223 commented 1 year ago

play-dl is basically unstable through my experience. I cannot be so sure that changing downloader to Node.js based library will improve the quality of Lavalink.

madebylydia commented 4 months ago