5 ms·
Show HN: Meelo, self-hosted music server for collectors and music maniacs
I've been working on this alternative for Plex for almost 3 years now. It's main selling point is that it correctly handles multiple versions of albums and songs. As of today, it only has a web client.
It tries to be as flexible as possible, but still requires a bit of configuration (including regexes, but if metadata is embedded into the files, it can be skipped).
I just released v3.0, making videos first-class data, and scanning + metadata matching faster.
- turbojet1321 2y agoThis looks cool, but I'm not 100% sure what it does. Is the "music server" part just a backend for the web UI, or does it serve via other protocols like DLNA?
- arti_chaud 2y agoAs of today, the API is proper to the web app. No other protocols are implemented yet.
- zoriya 2y agoThis project deserves to be more known!
- Octopus773 2y agoGreat project ! It even works on Gnome Web this is quite a feat
- rollcat 2y agoGnome Web uses the OSS WebKit, which is also what Safari builds upon. I'm not familiar with the intricacies but it shouldn't be that problematic? My default browser is Safari and 99% of the websites work well. (Twitch is the only major outlier.)
- russelg 2y agoHow's the support for the Album Artist tag? This is a common paint point I have with every single self-hosted solution, shockingly I've found Jellyfin to handle it the best so far. Use case: Japanese doujin (basically label compilation) albums.
- arti_chaud 2y agoI'm not sure if I understood your question, so here's a quick brief on how I handle this: If the tag (from the path or the embedded metadata) is 'Compilation' or any other string specified in the settings, the album will have no main artist. Such albums cannot be grouped by series or sth (although that would be a great idea for version 4.0). As of today, on the web app, there is no page that lists all 'compilation' albums. Does it answer your question?
- russelg 2y agoHere's the typical use case for me: https://diversesystem.bandcamp.com/album/ad-garage https://diversesystem.bandcamp.com/album/ad-garage Typically with these, I put the Album Artist as "Diverse System" (this is the name of the "record label"). Each track will have it's own artist. In Jellyfin, there is an Album Artist tab inside a music library, which will group these albums into the Diverse System artist, and artists that only appear as a member of one of these albums will not appear in that tab (as they aren't the artist of an album). So a bit different from a Compilation as you state it.
- arti_chaud 2y agoThis should be compatible, as a song's artist does not have to be the same as an album's artist. A song has to have an artist, an album does not. In Meelo, an artist that does not have an album but only songs would not be listed in a library's artist list for example.
- rollcat 2y agoPerhaps the label should be a separate field, and the album could be grouped under the label?
- retrodaredevil 2y agoAs a Plex and Plexamp user, I'm curious about a few features: mobile support doesn't seem to be mentioned. Is there a mobile app? Are smart playlists a feature? What about gapless playback? Can you elaborate on the 5 star system for rating tracks, albums and artists? Overall the feature set really speaks to me, as I have a bunch of CD rips tagged using MusicBrainz Picard with a couple of deluxe and non-deluxe versions thrown in of the same album. I think I'll have to give it a try either way because you're touching on a niche Plex just doesn't seem to care about.
- arti_chaud 2y agoGlad you find Meelo interesting! Thanks As of today, there are no plans for a mobile app (I've thought about it a couple of times, but I don't have the bandwidth for that atm). No smart playlists, just a simple playlist system. No gapless playback either. There is no ratin system either (I hardly use this feature myself on other platforms, so it is not part of the roadmap (yet?)). The only 'ratings' are for albums, and are scrapped from websites like Metacritic or AllMusic.
- CableNinja 2y agoIf you could implement the OpenSubsonicAPI, you could solve the mobile issue easy, and dont even have to build a mobile app
- a-french-anon 2y agoI think you'll find the population anal enough about different album versions and the one who can't do without gapless playback overlaps significantly. I'll add that proper ReplayGain handling is also a must.
- Maskawanian 2y agoLooks very nice, however it doesn't seem to support subsonic yet, which means no Android Auto integration through Ultrasonic. I'm going to keep watch on this, there aren't many music players with interfaces that look that nice.
- CharlesW 2y ago@arti_chaud, out of curiosity, did you explicitly choose not to support what seems like a de facto standard for music servers? Or did you have to create the server to support the player?
- arti_chaud 2y agoI did choose to not use other standards as the main features of Meelo (multiple album/song versions, getting B-Sides, etc.) are not supported by them. The server's API follows its own design.
- rollcat 2y agoIt makes sense, since Meelo's main strength is the rich metadata model. You'd have to butcher it into a lowest-common-denominator format, which in many of these subtle cases would be missing the entire point. I think people who would rather use streaming apps should just stick to Jellyfin or Navidrome. I still prefer to listen to music through a native/dedicated app on desktop (and definitely on mobile). As much as I don't like Electron, Cider went with it and it's not that bad.
- cchance 2y agoMaybe an exposed compatibility API for supporting third party players
- deleted 2y ago[deleted]
- svilen_dobrev 2y agohow about keyboard shortcuts? various remote controls? search?
- arti_chaud 2y agoThere are a few/simple keyboard shortcuts (open/close the player, go to search, go to settings…) There is a search page, backed by Meilisearch. You can search artists, albums, songs and videos. You can even search songs by lyrics.
- dewey 2y ago> Using iTunes or Beets is a great way to start. I'm _just_ worked on cleaning my library with Beets today, excited to see more "frontends" being available. I'm currently on Plexamp but the Mac app (Which is just the iPad app) could be much better.
- lowbloodsugar 2y ago>no gapless playback Ok, so not for people who like long pieces of music that have been broken into tracks. No classical music fans and no EDM fans. What’s the market then?
- tuukkah 2y agoEveryone else?
- auxym 2y agoAnd no Pink Floyd fans. Gapless is definitely a must for any music enthusiast, I believe. I use Jellyfin btw, it does support gapless.
- cchance 2y agoYa definitly should add gapless, wish we also had more integrations from back in the day when they'd do beat matching and mixing between songs
- n2j3 2y agoCool, but does it scrobble?
- arti_chaud 2y agoNo yet, but the feature is on the roadmap for v4.0 !
- pimeys 2y agoOne thing to solve here, that nobody else but Roon can do, is bit-perfect playback. Meaning that your SACD rips in DSD format are not transcoded. Plex cannot do that, neither can any subsonic server or jellyfin. You need a native player for this, but it is doable. Mpv at least can play the files.
- rollcat 2y agoI'm a bit of a noob when it comes to DSD, but don't you need a DAC with DSD (as an alternative to PCM) support? Correct me if I'm wrong, but the player would need exclusive access to the device, and bypass almost all of the audio processing stack, like software mixing. Can you play PCM audio (like system alerts) through the same DAC at the same time? Like, a hw analog mixer?
- pimeys 2y agoYeah, I'm also interested on this. I don't know, but my gut feeling on this is that no, you can't mix other audio or use a software volume control with DSD audio. It has to be converted to PCM first. But, with Pipewire you _can_ play DSD audio, here's how: https://wiki.libre.moe/linux/pipewire/dsd-playback https://wiki.libre.moe/linux/pipewire/dsd-playback And yes, you need a DAC that supports it. They are not that hard to find though. Edit: just noting I do not have hardware that can play DSD audio. The audio files started to be available, and there are shops that sell them such as High Definition Tape Transfers. Space is cheap, and if I would have them in my collection it would be great to play them with the best quality. Although, I probably don't hear the difference even with these Hifiman headphones, but it's the nerd in me that likes to see this to work.
- cchance 2y agoAny chance for native apps to put it inline with things like roon, and support for DSD playback?
- VyseofArcadia 2y agoI love this, but I want it as a plain desktop app instead of a server + a web app. I don't want the headaches of self-hosting (regardless of whether it's on the same machine or a different machine on my network or he cloud), I just want to open an application and it works.
- mtillman 2y agohttps://github.com/clementine-player/Clementine https://github.com/clementine-player/Clementine, main website is out of date but the app is still getting releases.
- VyseofArcadia 2y agoI am a current Clementine user. It is pretty good, but I don't feel it is optimized for collectors with large libraries the way Meelo appears to be. For example, the duplicate finder can't distinguish between the same track that appears on two different albums, e.g. the album it debuted on and a "Greatest Hits" release.
- ddejohn 2y ago> For example, the duplicate finder can't distinguish between the same track that appears on two different albums, e.g. the album it debuted on and a "Greatest Hits" release. Honest question, why would you want to? What's wrong with having the same song on two different albums in your collection?
- VyseofArcadia 2y agoRight, it's exactly the opposite of what you're thinking. I want the duplicate finder to NOT report them as duplicates, but it currently does.