Skip to content

Tips for your music library

Although crossonic-server is designed to work with differently organized media directories I recommend following some basic strategies to improve your experience.

The directory structure of you media library is mostly irrelevant for crossonic-server. It’s only important for cover images to be associated with the correct album/artist.

I recommend only storing songs from the same album in one directory as well as taking note of the cover art detection described in Cover art.

Because crossonic-server operates on tags and not directory structure it’s important to tag your files properly for best results.

Tags are text values in the metadata of your music files that tell crossonic-server (and other music software) information about the music they contain.

These are the most important tags that are required if you want your music to be properly organized:

NameDescription
TITLEThe name of the song.
ALBUMThe name of the album.
ARTISTThe name of the artist. Create multiple ARTIST tags if the song has multiple artists.

See here for a full list of supported tags.

I recommend using tools like MusicBrainz Picard to automatically and properly tag your media files.

It automatically tags your music with MusicBrainz IDs, multiple artists, release types, genres, release date, bpm and much more.

Different media files can have vastly different volume levels. Crossonic-Server supports ReplayGain tags to tell clients how loud a song should be played back in order for all songs/albums to be equally loud.

These values are not calculated automatically. You’ll need to use third-party tools (e.g. rsgain) to calculate the replay gain values and write the appropriate tags into your media files.

Crossonic-Server supports reading lyrics from file metadata and LRC sidecar files. First, crossonic-server tries to read lyrics from a file with the same name as the music file but with a .lrc or .txt extension. Example: when reading /example/dir/example-song.mp3 crossonic-server would try to read lyrics from /example/dir/example-song.lrc and /example/dir/example-song.txt. If that fails, crossonic server will try to extract lyrics from the LYRICS and UNSYNCEDLYRICS tags.

There are many tools available to automatically write .lrc files and/or lyrics tags, e.g.:

Images are only detected if they are in either JPEG or PNG format with an appropriate extension.

Album covers are detected if they are in the same directory as at least one song of the album and if their name matches one of the patterns in the COVER_ART_PRIORITY config option case-insensitively (default: cover.*, folder.* or front.* in that order). The first file in this list being found is used as the album cover.

If no such cover file is found the cover is extracted from the media file if available. To prioritize embedded covers over cover files change the position of the embedded special value in the COVER_ART_PRIORITY config option.

Artist images are detected if their name matches one of the patterns in the ARTIST_IMAGE_PRIORITY config option case-insensitively (default: artist.*). If one such file is found all artists whose name matches the parent directory name EXACTLY (case-sensitive including all special characters etc.) are given this image as their artist image.

If no artist image file is available for a given artist their image is fetched automatically from last.fm if last.fm integration is configured. Last.fm images can currently not be prioritized over local images.