mirror of
https://github.com/navidrome/navidrome.git
synced 2025-05-27 21:59:31 +03:00
This commit adds support for loading cover art from media file directories, according to configured filename priorities (of which an additional, special choice of `embedded` is given). Cover art paths are resolved during scanning and stored in the database as part of the `album.cover_art_path` column; if embedded cover art is matched, this will default to the path of the media file itself, and if no cover art is matched at all. Similarly, the `album.cover_art_id` column will default to a reference to `media_file.id` if embedded cover art is wanted, but if an external cover art file is matched, this will instead be set to a reference to the `album.id` value itself, prefixed with the `al-` constant. Stored cover art paths are once again resolved and matched against configuration when covers are requested; that is, any change in configuration between scanning and requesting cover art may not return correct data until a re-scan is complete. Tests will be added in future commits.
Navidrome Music Streamer
Navidrome is an open source web-based music collection server and streamer. It gives you freedom to listen to your music collection from any browser or mobile device. It's like your personal Spotify!
Any feedback is welcome! If you need/want a new feature, find a bug or think of any way to improve Navidrome, please fill a GitHub issue or join the discussion in our Subreddit. If you want to contribute to the project in any other way (ui/backend dev, translations, themes), please join the chat in our Discord server.
Installation
See instructions in the project's website
Features
- Handles very large music collections
- Streams virtually any audio format available
- Reads and uses all your beautifully curated metadata
- Great support for Box Sets (multi-disc albums)
- Multi-user, each user has their own play counts, playlists, favourites, etc...
- Very low resource usage
- Multi-platform, runs on macOS, Linux and Windows. Docker images are also provided
- Ready to use Raspberry Pi binaries and Docker images available
- Automatically monitors your library for changes, importing new files and reloading new metadata
- Themeable, modern and responsive Web interface based on Material UI
- Compatible with all Subsonic/Madsonic/Airsonic clients
- Transcoding on the fly. Can be set per user/player. Opus encoding is supported
- Translated to various languages
Documentation
All documentation can be found in the project's website: https://www.navidrome.org/docs. Here are some useful direct links:
Screenshots
Description
🎧☁️ Modern Music Server and Streamer compatible with Subsonic/Airsonic
airsonicmadsonicmedia-servermusicmusic-servernavidromeopensubsonicraspberry-piself-hostedstreamerstreaming-apistreaming-audiosubsonicsubsonic-server
Readme
SSPL-1.0
77 MiB
Languages
Go
74.4%
JavaScript
24%
Makefile
0.4%
C++
0.4%
Shell
0.4%
Other
0.4%