youegraillot / lidarr-on-steroids

Lidarr with some muscles thanks to deemix
333 stars 26 forks source link

Use D-Fi as an alternative to Deezer #66

Closed mon5termatt closed 6 months ago

mon5termatt commented 1 year ago

I tried using the D-fi api today and no errors. it might be a good alternative.

mon5termatt commented 1 year ago

image

ovosimpatico commented 1 year ago

Even better, streamrip.

janaxhell commented 1 year ago

I tried using the D-fi api today and no errors. it might be a good alternative.

How did you combine it with L-O-S?

codefaux commented 6 months ago

I like the thought so I looked into doing it, but there is no D-Fi "API". An API is an interface for a running application, through which commands and queries can be sent from a separately running application. The OP here is misusing the term "api".

D-Fi is a command line, interactive (or non-interactive if run in --headless mode) downloader tool. It can serve as a Download Client in that manner, except that D-Fi doesn't have a running daemon accepting requests from an external connection, as Deemix-GUI does. Current Lidarr plugins operate via API requests over a network connection, so reworking a pre-existing web-based API Indexer plugin to utilize Deemix was seemingly easy. (That was not this project, that was an external project which this project installs to Lidarr.) A plugin could be written to use D-Fi as a Download Client, but it would require a fully fresh ground-up Lidarr plugin utilizing one-shot command line executions rather than web API requests. (That's outside the scope of this project, which is essentially a wrapper installer/setup suite.)

However, D-Fi cannot serve as an Indexer. It cannot return a servicable link to Lidarr, to then be sent by Lidarr back to D-Fi as a download client -- the equivalent would be to say D-Fi uses Deezer directly as an indexer, then acts as its own download client. (This is not fully accurate, but helps frame it in Lidarr-alike terms.)

Deemix-GUI is able to serve as an Indexer because it runs as a separate service, provides an API, can return something akin to a download link to a specific target.

Deemix-GUI is able to serve as a Download Client because it runs as a separate service, provides an API, and can use something akin to a download link to retrieve a specific target.

Short version is, this suggestion cannot happen due to Lidarr's framework and structure. Deemix-GUI is, unfortunately, the only Deezer-friendly application which fits both of those requirements.

Same goes for Streamrip, I'm afraid.

If someone is able to provide evidence contrary or other projects to build from, I'm feeling motivated to look into those leads. In the mean time, my suggestion (and something I'll look into myself, at least in a limited sense) would be a plugin for Lidarr which uses Deezer directly...

mon5termatt commented 6 months ago

Yeah I mean in theory it's not an API but as long as you can input a URL it works so you would need some type of other indexer. Something that could feed the URL into dfi or streamrip. Sadly stream rip is having issues right now with unavailable albums that errors out.