vanilla-music / vanilla

Vanilla Music Player for Android
GNU General Public License v3.0
1.15k stars 290 forks source link

.cue file support #651

Open meucd opened 7 years ago

meucd commented 7 years ago

Are there any plans for .cue file support? I'm absolutely in love with this player. It's UI, gestures, and options are great. However, I can't really create certain playlists since my files are sometimes played in hour-long chunks due to lack of support of .cue.

adrian-bl commented 7 years ago

There are no plans to support cue files anytime soon and i don't see any benefit in using them.

We already support gapless playback, so why not just split up the files?

alekksander commented 7 years ago

because that means a lot of extra work every time a person copies an album from lossless collection

adrian-bl commented 7 years ago

There are plenty of cue splitter applications to automate this task.

alekksander commented 7 years ago

open source? i'm not sure if we're talking the same thing. .ape file on device is displayed as long—play due to lack of .cue support in vanilla.

adrian-bl commented 7 years ago

open source?

https://wiki.archlinux.org/index.php/CUE_Splitting

i'm not sure if we're talking the same thing. .ape file on device is displayed as long—play due to lack of .cue support in vanilla.

I am aware of this and already said that i do not see the point of implementing this when splitting such a file is trivial and doesn't break gapless.

alekksander commented 7 years ago

it's not about breaking gapless, it's about not touching a rip that has archival value (for sharing purposes (torrents for example, but not only ofc) and to have exact same checksum as in .log file). it's not easy task to make a copies of hundreds of albums and split them just to have a proper track list on portable device. i think that's why this request was made. if You have already decided i don't intend to change Your mind, but maybe my input will put some new light on this issue.

Kaned1as commented 7 years ago

Agreed, checksum can be an issue. I sync my collection with syncthing on all my laptops, desktops and mobile and having splitted files is just impossible.

Besides I seed some torrents and splitting will cause data to be duplicated as well.

adrian-bl commented 7 years ago

Agreed, checksum can be an issue.

FLAC contains an md5 checksum in the header and has CRC checksums for each frame.

I sync my collection with syncthing on all my laptops, desktops and mobile and having splitted files is just impossible.

Well, do you have your whole music collection on your phone? I have about 700GB of music and only have a fraction of it on my phone (which i transcode to ogg before putting it on the device - a process that can be automated with a simple shell script).

Anyway: The whole discussion got somewhat derailed:

alekksander commented 7 years ago

first issue that comes to mind: Stopping playback at exactly the correct position

As You probably know, .cue informs about where track starts and when does it stop. lot's of music players read it without any problem. i don't know about vanilla's eventual limitations though, but in my understanding implementing such feature wouldn't be too hard. just code how to understand .cue, and then don't include file\files that are already described by it (to avoid duplicates). i really hope someone with skills will get into it.

adrian-bl commented 7 years ago

but in my understanding implementing such feature wouldn't be too hard.

https://developer.android.com/reference/android/media/MediaPlayer.html

At first glace, MediaPlayer does not offer a way to set a custom end position.

Kaned1as commented 7 years ago

I'll leave this bug open for grabs for now - if someone wants to start working on it, go ahead

@adrian-bl , good! Can you add patches-welcome label to this?

I just don't think that it will be possible to implement this in a sane way

This will also require some significant changes to internal media adapters to process this kind of files.

adrian-bl commented 7 years ago

done

rdscorreia74 commented 6 years ago

It's a pitty that vanilla-music doesn't support cue sheet files. This is not an ancient way to do something. It's just a different way of doing it. There are hundreds of thousands of FLAC's, APE's and TAK's that can't be properly handled by vanilla-music because there's no way to change track or shuffle. Not to mention the incredible library called you tube that has millions of albums available in 1 hour nonstop mp4/mp3/ogg/opus format. Having said that, does anyone know an android media player capable of understanding cue sheet files? Thanks in advance. Cheers

KillyMXI commented 6 years ago

HikiPlayer supports cue sheets - they work kinda like folders in the UI. Although I'm moving away from that player, since I'm not quite happy with other aspects of it's current UX.

My current way to deal with cue sheets: convert the stuff I want to drop to the phone by means of Audio Converter bundled with AIMP player for Windows. Their converter is a pretty smart tool.

alekksander commented 6 years ago

HikiPlayer is not open source

rdscorreia74 commented 6 years ago

@KillyMXI

My current way to deal with cue sheets: convert the stuff I want to drop to the phone by means of Audio Converter bundled with AIMP player for Windows. Their converter is a pretty smart tool.

That's troublesome. It takes time and thought to it. There's nothing like simply copying your stuff to your phone not caring if you need to convert, slice, etc. Not to mention that Hiki is not opensource and is not on F-Droid.

rdscorreia74 commented 6 years ago

@adrian-bl

Well, do you have your whole music collection on your phone? I have about 700GB of music and only have a fraction of it on my phone (which i transcode to ogg before putting it on the device - a process that can be automated with a simple shell script).

As a workaround, could you please share with us your tools and your script to convert to ogg and slicing the FLAC/APE/TAK into split songs with their proper names and stuff? Thanks

KillyMXI commented 6 years ago

andLess had cue sheets support and opensource. Although it is not under development for a long long time now.

Converting before copy has following benefits:

I configured audio converter once, and all I have to do now is to drag-n-drop album folders onto converter window, press Start, wait a little (it's pretty fast, using all the CPU cores) and drag-n-drop output folders to the device. As I said, AIMP converter is pretty smart. You won't get any tools much better than that, with parallel conversion, cue splitting, covers etc. And I don't see it troublesome, it has no additional cognitive load.

Still, cue sheets support will look nice in a feature list and may come in handy once in a while.

adrian-bl commented 6 years ago

@john3voltas: shntool and cuetools can do that just fine.