Library and Album Artist

Hi all!

So I’ve been banging my head against the wall trying to solve one issue and possibly another. So the first (and biggest) is the album artist field. I’ve done my share of searching around for mpd fixes and what not but can’t seem to find anything concrete. I noticed that mpd added album artist support circa version .18.x and I noticed we now have 0.18.10 but it hasn’t seemed to fix the issue.

What I’m experiencing is when I have Volumio start indexing a NAS store, it starts breaking out the library into tons of artists… think a “Various Artists” scenario.

A perfect example is “Arthur Fiedler & Boston Pops Orchestra” and the album is “Christmas Favorites” ( … 751411795f):

The first track is “Santa Claus Is Comin’ to Town”
The Album Artist is “Arthur Fiedler & Boston Pops Orchestra”
The Artist is “J. Fred Coots”.

So in Volumio, it shows “J. Fred Coots” as an artist (and the other 9 people on the album) instead of just listing “Arthur Fiedler & Boston Pops Orchestra” with all 10 tracks in there.

Any thoughts on how to get it to see just the Album Artist field, or at least make it a priority?

The second problem (and not immediately important), it seems that when ever the Raspberry Pi/Volumio boot up, it wants to re-index the entire library on the NAS. We’re talking about hundreds of gigs that it wants to go through again.

Is there a way to have a persistent library DB so when it boots up, it assumes everything is where you left it?

Problem 1
If you want an immediate solution i think you could look towards acessing the NAS Library via a different control point.
What NAS drive are you using ?
What hardware device are you using as a control point, e.g. Pc, mac, tablet, phone ?

Problem 2
Think you only option here will be to leave the RPI powered up :unamused:


There will be much improvements in future releases that are already in good progress of development.
However, if you want to see album artists instead of artists, and don’t mind modifying the PHP code, you can try this (I didn’t try myself since I don’t have these sources on my installation, but there’s good chances that it works!) :

in /var/www/inc/player_lib.php line 126 ( … b.php#L126 )
replace $artist = $songData["Artist"] ? $songData["Artist"] : "Unknown";


 $artist = $songData["AlbumArtist"] ? $songData["AlbumArtist"] : ($songData["Artist"] ? $songData["Artist"] : "Unknown");

Then restart the PHP server (sudo /etc/init.d/php5-fpm restart) or restart the pi

The next version will bring improvements in performances. Currently with your version, here’s how it works:

page refresh => 1.loading lib from MPD => 2.indexing lib => 3.sending to client => locally and filter => 5.display all
Steps 1 and 2 are server-side, the loading consumes a lot of time whereas indexing is rather fast.
On the client side (4 & 5), the operation is faster however the fact that full library gets displayed is a serious issue when tons of songs are loaded, it may become unusable.
And moreover, absolutely nothing is cached, which means that a simple page refresh will restart the whole process.

The current development state is much better, here’s how it’s going to work:

  • page refresh => if not in cache, load songs from MPD then store in cache ; the cache lives until server (device) is restarted
  • in parallel: client asks server about loading progression
  • once completed: send data to client page by page
  • on the client side: store locally and filter, then display only a subset of elements that’s actually on-screen
  • on scroll up/down: lazy-fill HTML with data on screen

It performs much better. BUT the part that takes a lot of time, that is loading data from MPD, is still there and I’m not sure this is something compressible.

Hi, I’m just wondering if anyone had any success in modifying Volumio to allow sorting by Album Artist? I’m considering installing Volumio on my Pi, but I’m only really interested if it can sort by Album Artist. Cheers.

It’s now the default behaviour, it has been implemented in 1.5, so now album artist is used in priority, then if it’s not found “artist” is used.