MusicPlayerDaemon / MPD

Music Player Daemon
https://www.musicpd.org/
GNU General Public License v2.0
2.2k stars 350 forks source link

Files with embedded cuesheet #451

Closed grimlokason closed 5 years ago

grimlokason commented 5 years ago

Hello,

I don't know if it should be considered as a bug or as a feature request, but when a flac file with embbeded cue sheet is read by MPD, it's added both as file and playlist in database :

OK MPD 0.21.0
listall "groupes/Al Loar Zu"
directory: groupes/Al Loar Zu
file: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
playlist: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
OK
listallinfo "groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac"
file: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
Last-Modified: 2014-09-29T22:10:12Z
Format: 44100:16:2
Time: 3119
duration: 3118.680
Album: Engrenage
Artist: Al Loar Zu
Disc: 1
Date: 2009
playlist: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
OK
listplaylistinfo "groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac"
file: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
Range: 0.000-214.213
Last-Modified: 2014-09-29T22:10:12Z
AlbumArtist: Al Loar Zu
Album: Engrenage
Date: 2009
Track: 01
Artist: Al Loar Zu
Title: En route (Suite Loudia Rond 1)
Disc: 1
Time: 214
duration: 214.213
[...]
file: groupes/Al Loar Zu/Al Loar Zu - 2009 - Engrenage.flac
Range: 2774.893-
Last-Modified: 2014-09-29T22:10:12Z
AlbumArtist: Al Loar Zu
Album: Engrenage
Date: 2009
Track: 12
Artist: Al Loar Zu
Title: Gwerz Emmet (1778-1803) (Suite Plinn Ts)
Disc: 1
Time: 344
duration: 343.787
OK

As a side effect, the client (like rpompr, malp,...) show both playlist and file. Is it possible to add something to hide files entry when there is a playlist with the same filename ?

My mpd version :

mpd --version
Music Player Daemon 0.21.3 (0.21.3)

Copyright 2003-2007 Warren Dukes <warren.dukes@gmail.com>
Copyright 2008-2018 Max Kellermann <max.kellermann@gmail.com>
This is free software; see the source for copying conditions.  There is NO
warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Database plugins:
 simple proxy

Storage plugins:
 local

Decoders plugins:
 [mad] mp3 mp2
 [mpg123] mp3
 [vorbis] ogg oga
 [oggflac] ogg oga
 [flac] flac
 [sndfile] wav aiff aif au snd paf iff svx sf voc w64 pvf xi htk caf sd2
 [audiofile] wav au aiff aif
 [dsdiff] dff
 [dsf] dsf
 [hybrid_dsd] m4a
 [faad] aac
 [mpcdec] mpc
 [wavpack] wv
 [ffmpeg] 16sv 3g2 3gp 4xm 8svx aa3 aac ac3 adx afc aif aifc aiff al alaw amr anim apc ape asf atrac au aud avi avm2 avs bap bfi c93 cak cin cmv cpk daud dct divx dts dv dvd dxa eac3 film flac flc fli fll flx flv g726 gsm gxf iss m1v m2v m2t m2ts m4a m4b m4v mad mj2 mjpeg mjpg mka mkv mlp mm mmf mov mp+ mp1 mp2 mp3 mp4 mpc mpeg mpg mpga mpp mpu mve mvi mxf nc nsv nut nuv oga ogm ogv ogx oma ogg omg opus psp pva qcp qt r3d ra ram rl2 rm rmvb roq rpl rvc shn smk snd sol son spx str swf tak tgi tgq tgv thp ts tsp tta xa xvid uv uv2 vb vid vob voc vp6 vmd wav webm wma wmv wsaud wsvga wv wve
 [pcm]

Filters:

Tag plugins:
 id3tag

Output plugins:
 shout null fifo alsa httpd

Encoder plugins:
 null vorbis wave flac

Archive plugins:
 [bz2] bz2
 [iso] iso

Input plugins:
 file archive alsa curl ffmpeg cdio_paranoia

Playlist plugins:
 extm3u m3u pls xspf asx rss flac cue embcue

Protocols:
 file:// alsa:// http:// https:// gopher:// rtp:// rtsp:// rtmp:// rtmpt:// rtmps:// cdda://

Other features:
 dbus epoll icu inotify tcp un

Best regards.

MaxKellermann commented 5 years ago

Yes, it is possible, but you need to convince me that this should be done. Why on the server? The server tells the client what it has, and the client can decide what to show to the user. Adding user interface stuff to the MPD server must be justified well.

MPconta commented 5 years ago

Hi Max, yes you can see it, like you have written.

But it is also possible to interpret it in another way: When somebody add a cuesheet to a flac-file, he wants to seperate the file. Otherwise he (or she...) would not add a cue-sheet. Following to this logic the procedure should look like this:

If there is no cue-sheet --> the server adds the flac-file to the database If there is a cue-sheet --> the server adds the seperated flac-file to the database

Adding both, flac-file and seperated flac-file, does not serve anybody and is somehow illogical.

Could that be an argumentation, with which you can get warm? ;-)