CappielloAntonio / tempo

An open source and lightweight music client for Subsonic, designed and built natively for Android.
GNU General Public License v3.0
877 stars 39 forks source link

Transcoded downloads #6

Closed ivan-avalos closed 10 months ago

ivan-avalos commented 1 year ago

This downloaded tracks shows up as playing in FLAC. However, I would like to be able to download tracks in Opus. Is that possible with the current implementation of downloads? Are you downloading the original file from the server? I believe other clients use the stream endpoint instead.

Screenshot_20230624-120808

CappielloAntonio commented 1 year ago

The current implementation uses the download endpoint, which doesn't allow you to specify parameters for transcoding the file, but I understand the need for wanting to download a compressed version of the file, in order to save space and expand your offline library.

Anyway, your file is huge!

CappielloAntonio commented 10 months ago

I finally have something. Now you can set the codec and bitrate with which to download the tracks or use the original endpoint for downloads.

The change was quite invasive and needs to be tested thoroughly. The possibilities that new bugs have been introduced are not small.

Everything around downloads has been changed and the db underneath has been changed. There is a migration which keeps the db in a working state, but the information is missing (the download uri which uniquely acknowledges the download). It should work, but will work better with new downloads.

These changes also bring the ability to use downloads from multiple servers simultaneously.

I am attaching a test apk here.

app-tempo-debug.zip

CappielloAntonio commented 10 months ago

I'm closing the issue, but please feel free to reopen it in case of problems.