Showing posts with label music players. Show all posts
Showing posts with label music players. Show all posts

Tuesday, 28 February 2023

Returning to Music Player Daemon - Cantata vs Mpdevil

A while ago I tried Music Player Daemon (MPD) with my music, but found it wouldn't see half my collection and I gave up on it. That was a long time ago so I recently decided to try it again to see if it had improved and also I have recently been getting annoyed with usual music players, Clementine and Strawberry. Clementine is basically no longer maintained but it's one of few players that can cope with 80 thousand tracks! And it has a nice Android app to control it from my phone. But it's got some annoying bugs that will never be fixed so I have been trying to look for alternatives. Strawberry is a fork of Clementine but doesn't fix the bugs that bother me and there's no Android app for it, so I decided to give MPD another go since I haven't tried MPD for years.


This time when I installed MPD, I made sure it ran properly as my user rather than its own user, with the config in my Home folder. And this time it seems to see all my collection, and has clearly improved since I last tried it.  I used the brilliant guide on the Arch wiki and adapted it for KDE Neon (a distro of sorts based on Kubuntu but with latest KDE). Most of the guides I used before were for Ubuntu but usually they would create an MPD user, which is where the problems had begun.  Apart from setting the music directory, I have enabled Replaygain for audio normalisation. The sound was also distorting slightly on my desktop machine without Replaygain enabled. I haven't yet worked out how to make MPD run on startup in KDE, I usually just run it in my favourite drop-down terminal, Yakuake. Edit: you can set mpd to run automatically by adding it as a service with this command: systemctl --user enable mpd.service

The great thing about MPD is it runs in the background consuming very little resources, and then you control it with a front-end of your choice, either lightweight or heavy and control it from anywhere on the local network. At first it had problems choosing the right soundcard, as I use a USB interface, but changing it to use Pulseaudio instead of ALSA fixed that. One slight annoyance with MPD is it does not remember the previously played track or playlist the next time MPD is started.

This time round, after looking round at other front-ends, I ended up choosing Cantata as it seemed to be the best of thea KDE friendly apps, it works well  apart from the 16,000 track limit on playlists is a bit annoying. I have now got into a habit of just listening to albums in full or all of one artist etc, whereas in Clementine I would just have all my 80,000+ in a single playlist on Shuffle! 

I then discovered Mpdevil, which although a fairly simple player, it looks more modern than Cantata. I have Mpdevil running nicely on my main desktop and my main laptop, both are running KDE Neon (a distro based on Kubuntu but with the very latest KDE version). I also have MPD on my old Dell Vostro, which runs Manjaro,

One very noticeable difference between the two is that Cantata has a "locate in Library" option in the right click menu whereas Mpdevil only has the option of "Show" which locates the track in the file manager which is far less useful to me. I usually want to find the album a track is from and play it. 

Mpdevil 'Show' which opens a location in a file manager

Cantata 'Locate In Library' which shows where the track is in the app.

One other thing I really like in Cantata is it's easier to find and switch between MPD servers in the settings with it's Discover button. It isn't as simple to do that with Mpdevil. 

Mpdevil is basically a more minimal player, it lacks Last.fm support and, as far as i can tell, doesn't fetch missing covers, whereas Cantata has both of those features. As far as I know, there isn't an easy way to get Scrobbling in the MPD backend itself so it's useful to have that in the front-end. If you want a great looking player and don't need advanced features, mpdevil does the job fine but if you need the advanced features, Cantata does a better job, so I will stick with Canatata for now. I am open to suggestions though for an even better KDE-friendly MPD client. 


Saturday, 28 June 2014

Linux Music Players for Large Music Libraries

Back in 2009 I wrote a blogpost on Linux music players, about finding a Linux equivalent to Foobar or Winamp, and I've just recently been trying other music players again after a very long time of using Gmusicbrowser

Tuesday, 3 November 2009

Finding An Alternative to Winamp, Foobar or iTunes for Ubuntu 9.10

Whenever i am on Windows I prefer Winamp for general use. It has reasonable tagging, good album art and info support, the media library is excellent and it's gapless. For transcoding music files i use Foobar. As a player it is good and has great tagging support but lacks decent visualisations and is tricky to setup. On my Mac i use iTunes mainly as i can access my Firefly (mt-daapd) servers. However, on Windows iTunes is a different, more hideously bloated, beast. I used to really like Amarok 1.4 for awhile before i switched to Exaile, and I'm not keen on Amarok 2. I find it lacks the features I liked in 1.4 and does not fit in well with Gnome, it being a KDE program. There are not many gapless audio player for Linux other than Aqualung, which is a little bit too bare-bones for me, and struggles with large music collections and also Rhythmbox is now gapless. There is also Music Player Daemon but it can be difficult to setup.


What I require in a Linux music player:
  • Gapless playback
  • Last.FM support
  • Album cover support (from embedded and/or folder image, and ability to download covers)
  • Good Mp3 tag support and tag editor
  • A context view with information from the internet (lyrics etc)
  • Reasonable Gnome integration.
  • To just play music, i have VLC or Totem for video files.
  • Shuffle mode and custom playlists - especially Recently Added)
  • Decent visualisations.
  • Firefly (mt-daapd) support

The Linux alternatives:


Exaile
















Exaile was my choice of media player for the Linux desktop, until now. I have just upgraded to Ubuntu 9.10 and sadly it has version 3.0.1 of Exaile. In this version there is a very annoying bug. Exaile refuses to close, even when I attempt to close the player's tray icon it just sits there. if i have the icon disabled and close the player, the music will just keep going without the GUI. When this bug will be fixed is uncertain. It's a shame as if it was not for that bug it would be great player. Consequently I am now looking for a replacement media player, at least until Exaile is fixed.


Rhythmbox















Rhythmbox is many users' choice as it's the default Gnome music player, however it has it's problems. it takes a long time to scan my music as i have a very large collection but that's not the biggest problem. Unfortunately the main problem with Rhythmbox is it keeps scanning non-audio files and giving error messages, and trying to download codecs for them. It does this on startup whether it has already found them before or not. This is made worse by the lack of a manual rescan library function.

Banshee















Banshee seemed to take the longest (more than an hour!) of all the players I've tried to scan my music collection as it found my 31299 tracks (i actually have around 27500) then re-scanned them for some reason. Visually, the interface is a bit messy at first but once i had it configured to how i like it, it's fine. It is similar to Rhythmbox really, except with a better interface. the only problem I have at the moment is it is not submitting songs to Last.Fm. I should also say I tested using the Beta from the Banshee Team Repository.


Listen Media Player
















This is the first time I have use Listen Media Player for a long time, and it looks a lot better than it used to. Once I set my music folder in it's preferences, Listen scanned my music collection. it was quicker than Banshee but not as quick as Exaile, and gave good feedback along it's progress bar, although it used quite a bit a lot resources doing it. Upon trying to play however it became unresponsive and my CPU peaked out at 100% and memory usage skyrocketed, then Listen crashed with a python error. When I restarted the player, it had to rescan the media library again *sigh*. I managed to get it to play again but with such high resource usage that I had to close it down. So no joy there, which is a shame as it does have a gapless setting.


Conclusion

Well for now it seems I'm going to stick with Rhythmbox but only because Last.Fm scrobbling actually works otherwise I would choose Banshee. I have disabled automatic scanning of tracks though to avoid it trying to find codecs for non-audio files everytime it starts up! If the bugs in Exaile are worked out then I'll switch to it instead. For editing tags in mp3s I use Mp3tag in Wine, and for normalising volume i use Mp3gain in Wine. I long for a decent substitute for Winamp/Foobar on Linux.

Update: I managed to get last.fm plugin to submit tracks on Banshee - it's now vieing to be my choice of player on Linux! My only annoyances: lack of a visible Skip button on the interface - where is it? EDIT: When you disable Shuffle the Skip forward button appears. I use the Cairo Dock Audio Player applet or the media buttons on my keyboard to control the player. the best thing about Banshee is the cover fetcher, it is a lot better than Rhythmbox's.

Resource Usage:

This is the output of 'top' on the command-line, when each player is playing an mp3 (separately):

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

16998 carl 20 0 779m 141m 22m S 11.9 7.1 64:39.88 banshee-1

21623 carl 20 0 817m 120m 26m S 5.9 6.0 0:19.64 rhythmbox

10958 carl 20 0 565m 27m 15m S 4.6 1.4 0:25.57 aqualung

12041 carl 20 0 1212m 355m 17m R 89.7 17.7 23:00.49 listen

4579 carl 20 0 743m 219m 20m R 94.7 10.9 0:27.39 exaile

Notice the astronomically high resource usage of Listen!

Update 2 - 3/11/09: For some reason, possibly because it uses Mono, I've recently found Banshee (1.6 beta) to be using more and more ram the longer it is left usually around 900mb and peaking the CPU quite a bit, I hope this is fixed soon. Until then I'll keep looking for alternatives.

Update 3 - 29/01/10: I've settled on Gmusicbrowser for now as it does just about everything I want, although transfering to USB drives is a bit cludgy.