PDA

View Full Version : Artist information for various artist albums



max.spicer
2005-07-16, 07:56
Could someone tell me where abouts to look for the code that works out the artist for an album as it is displayed in the Browse Music->Browse Albums section? I've noticed that my various artists albums are now being attributed to the artist of the first track and would like to investigate.

Is there a general explanation anywhere of how the SlimServer code is organised? I find it quite confusing atm!

Thanks,

Max

Ben Sandee
2005-07-17, 15:34
On 7/16/05, max. spicer <max.spicer.1s9pdz (AT) no-mx (DOT) forums.slimdevices.com> wrote:
>
> Could someone tell me where abouts to look for the code that works out
> the artist for an album as it is displayed in the Browse Music->Browse
> Albums section? I've noticed that my various artists albums are now
> being attributed to the artist of the first track and would like to
> investigate.

Sorry Max I can't help you within the code. You might be interested
in a related bug I filed:

http://bugs.slimdevices.com/show_bug.cgi?id=1442

Ben

Grotus
2005-07-18, 07:55
max.spicer wrote:
> Could someone tell me where abouts to look for the code that works out
> the artist for an album as it is displayed in the Browse Music->Browse
> Albums section? I've noticed that my various artists albums are now
> being attributed to the artist of the first track and would like to
> investigate.

For the player interface look at Slim::Buttons::BrowseDB.pm.
Specifically, the browsedbItemName function.

For the web interface look at Slim::Web::Pages.pm. Here look at the
listItem function under the album key of the fieldInfo hash.

In both places the artist is retrieved by grabbing the last track
returned from $album->tracks and then calling $track->artist on it. At
some point there might be an album artist field introduced, much like
the album year that was recently added. When this does happen, there
will most likely be a Various Artists value to attribute to albums with
different artists on different tracks.

> Is there a general explanation anywhere of how the SlimServer code is
> organised? I find it quite confusing atm!

No one has created an overall structural document.

In general, UI for the player is under Slim::Buttons. Web UI is under
Slim::Web. Other UI, and general command handling is under
Slim::Control. Client object code is under Slim::Player. All the
database stuff is under Slim::DataStores. The other directories under
Slim are fairly straightforward.