Hacker News new | past | comments | ask | show | jobs | submit login
FunkWhale: Decentralized Music Server (funkwhale.audio)
177 points by alexfromapex 41 days ago | hide | past | favorite | 92 comments

Ive been running a private funkwhale for me and my friends since november ‘19 and its been great. Works lovely with play::sub for ios. Have about 300gb of music hosted and 4 daily users :)

Recommended for those wanting to ditch spotify. Redirect the subscription fee to buying an album or two each month. Get a few friends to do the same. The artists get much more royalties and you have a more personal collection.

Last.fm tells me that in the last 2 years I've listened to songs from 2,015 different albums (almost exclusively via Spotify). That goes up to 4,238 in the last 5, and increases by a few hundred per year thereafter.

The top 50 albums over those 2 years are a quarter of my listens, the top 100 are just over a third.

Even if two-thirds of that album count is bad metadata (e.g. the same song counted against multiple different albums/compilations/etc.) it would still be prohibitively expensive to consume anywhere near the same breadth of content if I had to acquire perpetual rights (from Bandcamp/iTunes/etc.) for everything rather than effectively renting them out for a single play (from Spotify).

The other thing I like about the streaming model is that artist remuneration correlates to how impactful their work subsequently is to my life (i.e. how many times I listen to it both during discovery and then over the subsequent years/decades) rather than how effective their marketing is at convincing me to buy the album up front.

> artist remuneration correlates to how impactful their work subsequently is to my life (i.e. how many times I listen to it both during discovery and then over the subsequent years/decades) rather than how effective their marketing is

I may have the wrong end of the stick here, but it sounds like you think all artists get a certain fee per stream, where as the reality is far from that (depending on many factors).

Is there an android app that works well with this? Youtube Music has killed most of the usefulness that Google Play Music had (e.g., no way to edit id3 metadata, no way to browse by genre, and a thousand other tiny papercuts) and I'm really looking to stop using it.

I tried Otter, which touts itself as a mobile app specifically for Funkwhale and found that it had some pretty glaring flaws, namely the way it managed the playing queue. It also had some other issues with volumes in an album.

So I've been trying Ultrasonic, using the subsonic API feature of Funkwhale, and it's working pretty well. Not as slick as Google Play Music ever was, but better than Otter (for now).

They show a screenshot of it running on Android right on the frontpage, so apparently yes. There’s a list of clients over here:


Are there any laws to worry about with this? What's stopping a bunch of people coming together and doing this?

This could be really cool especially for a lot of older music that isn't on streaming platforms.

Sharing with friends via a server is as much copyright infringement, legally speaking, as sharing with randoms on bittorrent. Its just much harder to prove, much less financially beneficial to prosecute and much worse PR if you do it anyway to set an example.

> legally speaking

as usual, this depends on where in the world you are. Some legal systems do make a difference here.

I don't think so because it is not illegal to give them a copy on a cassette

Not illegal where? I'd be surprised if this wasn't copyright infringement in most USA-compatible jurisdictions.


"Making a noncommercial mix tape (as in, an analog audiocassette) of copyrighted songs is immune from claims of copyright infringement, thanks to the Audio Home Recording Act of 1992, 17 U.S.C. § 1008."

Does it mention creating bit perfect mix tape clones and redistributing to unlimited others?

Some info here...


most of my music is not bit perfect though... they are compressed mp3's of decent quality (but if you look at the bits, they probably look nothing like the originals)

I wonder what the feasibility is of doing something like this for movies and tv shows?

I can't recommend Jellyfin enough. It works remarkably well!


Jellyfin is an amazing and underappreciated project. I've run it for a year or so and it's great.

I use (and recommend) the Kodi addon as the client. I had stability issues with the jellyfin Android (TV) app, but Kodi runs on all sorts of platforms and it's very well supported. I use it for music, too (there's a dedicated music player for it in f-droid called "gelli.")

What's the difference between this and Plex?

Jellyfin is free and open source software for one. I don't know the exact difference in the feature set but I have heard people complaining that Plex is focusing more on surveiling it's users to push ads. I just got Jellyfin working with linuxserver.io docker image on my rpi4 and it is pretty nice.

Adding a random Jellyfin anecdote: Jellyfin stable (10.6.2) is buggy and somewhat unusable for me — videos wouldn't play because of some browser compatibility issue.

This seems to have been fixed in the 10.7.0 RCs, and they've been quite wonderful.

The only feature I find lacking is being able to use Jellyfin on a Chromecast, via their iOS app. It seems to be blocked by the lack of upstream SDK support: https://github.com/jellyfin/jellyfin-expo/issues/16

You have to pay for hardware transcoding with plex. Plex (and also Emby for that matter) have more client apps and platforms supported than Jellyfin though, so you might want to check that before settling for one.

Jellyfin is fully open-source and doesn't require any third party authentication. It's not quite feature complete versus Plex but it is very close, and has never been a issue for me or my users.

I don't do it because I don't want to expose my network, but /r/plex would have more info.

You could always set up a VPN and make the Plex server only available on the VPN's interface. But then you have to be on the VPN on whatever device you want to watch on, so it can be a bit of a hassle if you're not on your own devices.

That's not the way to do it. If anyone can break out of Plex they are on your local network.

Besides, if you're going through all that networking hassle, you're better off doing things right. Get a real firewall like pfSense, then setup a separate network just for outside facing services. To access those services locally create firewall rules that allow traffic 1 way: from your trusted network to your outside facing network. While you're at it, consider making separate networks for IoT devices, and maybe even another for untrusted guest devices. You can use VLANs or physical interfaces if your firewall has enough ports.

Seems like running separate wires for each of those networks would be a huge pain.

Nah, with VLAN tagging you can do it as a single legged router, or as a virtual switch if you’re running it all in a hypervisor.

My home network has 12 VLANs, but each VM cluster node only has 2 NICs

What are you using to host the server? VPS? Machine from your home network?

vps(https://contabo.com/) about $5 a month or so. I think Funkwhale can be hosted on a server with the library on amazon s3 if you want a lot of cheap storage. but ive been fine on my vps for now.

I’m interested that you say the artist gets more royalties. How does that work?

If you're buying 1 - 2 albums per month, at a price of about $10 per album and with artists/composers on average being paid a flat 20% of album sales[0], then you'd be giving an artist $2-4 USD for that album. If that artist is a smaller artist and is releasing their album relatively independently (very common these days), then their percentage earned can be 50% - 80% instead, leading to you paying the artist more like $5-10 USD for those album(s).

For streaming music, let's say you're listening to the artists music in the USA (meaning your streams are worth the most). Let's also assume an average song length of 4 minutes and an average per-stream payment to the artist of $0.003526648542 dollars since you're in the USA[1]. In this world, if you listen to that artist for 3 hours a day, every day, for all 30 days in a month, then you will listen to 1350 songs from that artist and earn them ~$4.76 with all your listening.

So while it is possible that you could listen to an artist so much on a streaming platform that you give them more than if you buy an album, I wouldn't call it super likely.

[0] - https://www.recordingconnection.com/reference-library/record...

[1] - https://www.igroovemusic.com/blog/wie-viel-erhalte-ich-pro-s...

Beautiful calculation. Let's say that if you listen to music for 3 hours a day then it is as if every month you spend 5$ which goes to divide for all the artists you listen to, every month. So you have to listen to an artist 100 hours to compensate for the purchase of an album, it's not something you do with every artist you know.

This does assume you're not decreasing any revenue by using Funkwhale's sharing functionality.

Royalties is probably the wrong word. What i mean is that i can buy an album for $5 on bandcamp and the artist will get more money than if i stream the album 1000 times on spotify. Album sales (especially in no-tour lockdown times) are an important part of funding musicians. Streams dont cover bills. Neither does merch.

You have described precisely the reason I support artists on Bandcamp - my single €5 purchase is worth 1000s of streams. Although I'd argue artists are promoting merch because selling albums/EPs doesn't pay the bills. It's fascinating what merch people will buy too - tapes, signet rings, €30 caps, bags...

> artists are promoting merch because selling albums/EPs doesn't pay the bills. It's fascinating what merch people will buy too - tapes, signet rings, €30 caps, bags...

Pretty much this. The music is basically promotion for the merch, which actually makes money.

Cassette and vinyl sales are also important because in addition to the nostalgic (hissy/scratchy but also warm and saturated) "analog" sound the physical recording is a fun collector's item and something you can show off.

Hopefully live shows will return at some point as well.

Funkwhale is incredible. I comment every time it's posted here because it's truly one of my favorite technologies out there. I ran a personal pod for around a year, and lately I've been thinking of running one for my home.

The project is also looking for maintainers, as the lead developer might not be able to contribute for much longer. If you have the inclination to do so, definitely reach out to them :)

The name -- and service -- feels very reminiscent of GrooveShark.

(https://en.wikipedia.org/wiki/Grooveshark, for the youngins.)

I noticed they call their groups "pods" and I thought that was poor naming because that's what Kubernetes calls their groups. Then it hit me and I looked up what a gathering of whales is called, and sure enough, it's a "pod". It gave me a little chuckle.

Kubernetes is Greek for the "helmsman" of a ship. The seafaring theme runs deep in the ecosystem

Funkwhale seems to focus on the social aspect of sharing music among a group, and that's cool if you're into that, but for hosting my personal music library just for myself I like Airsonic: https://airsonic.github.io/

I use Airsonic, can anyone comment as to why I might want to switch to Funkwhale?

It would be great if it would link the music to a graph of information about the songs, bands, individual performers, composers, recordings etc.

There's a project that makes this data available as linked data: https://wiki.musicbrainz.org/LinkedBrainz

Also note that as of November, Funkwhale is looking for other maintainers (https://blog.funkwhale.audio/~/Announcements/funkwhale-is-lo...).

I really miss the act of browsing someones music collection like you could do with Napster and Soulseek around the turn of the century. Definitely going to check this out!

Soulseek is still going strong, I recently discovered.

The whole idea of this seems cool but I don't really get the value of it as a Spotify replacement. Though I haven't tried. Spotify to me is a source of music I don't already have. I don't understand the value of putting my existing music on a website. I mean I guess there's some, but not a ton.

Given the social/federation aspects, it seems like it's a much better replacement for Soundcloud. You could use it to distribute freely licensed stuff (assuming you're respecting copyrights) or more importantly your own music as a musician (which I am not). I could see a lot of value in interoperating with Mastodon. You "boost" a new song by a musician you follow. Some of your Mastodon followers see it and listen and comment directly on the song. Others look at the person's Funkwhale profile for a better catalogue view to explore further. Etc. Could be a great future.

Been using gonic[1] on my Raspberry Pi at home. Works brilliantly.

As an aside, I'm glad I didn't bother with Funkwhale: https://funkwhale.audio/en_US/code-of-conduct/.

[1]: https://github.com/sentriz/gonic

I like the project, but the Code of Conduct is literally the only reason I will not be trying Funkwhale out.

I am very respectful towards homosexuals, transsexuals, women in highly technical roles, people struggling with disabilities or mental illnesses, am very open to interesting political discussion even with my ideological opponents, and always ready to change my mind if proven wrong.

But I have a very bad feeling any social-justice driven CoC can and will be abused, and in the long term no one is safe from being labeled a racist, misogynist, homophobe, transphobe or any currently fashionable -ist or -phobe one day. When there's a sufficiently malevolent will, there's a way.

Just wanted to say that.

Does anyone else just want to build cool s***? Or does everything under the sun need to be about furthering a social agenda?

How does an open source project trying to encourage more diverse people to collaborate detract in any way from the cool stuff they are making?

The maintainer of this project recently came out (? Terminology?) as trans...gender, I think. Presumably that's why there's focus on this.

Wow you're not even allowed to make jokes.

If someone accused of harassment or slander can claim they were "actually joking the whole time" then the decision changes from what constitutes harrasment to whether they were actually joking.

That's not what is written.

Is this federated or p2p? It would be amazing to have something like SoulSeek but in a music player (Spotify) format. I have rather eclectic taste when it comes to music and Spotify is missing a lot of good stuff.

It's federated over ActivityPub. You can follow other user's libraries on other instances.

How does funkWhale deal with piracy of music and copyrights?

It doesn't. Funkwhale is not meant to be run as a service for a large number of users. People running a pod should be cleared by fair use, much like someone with a iTunes library that is accessible through the home (or company) intranet.

How would it fall under fair use?

It's a decentralized system, anyone can install and set it up. If I am running a pod and only give access to a few friends, how is that not fair use?

Mind you, this is only one of the basic cases. There are plenty of other use-cases for such a service that does not even involve copyright abuse. Imagine an indie label that sets up an instance to promote their artists. Or a music school that puts performance from their teachers/students.

There are plenty of ethical reasons for something like Funkwhale to exist, it's not on the developers to ensure that it is only going to be used in a way that doesn't cause the ire of the big-baddie RIAA.

Also: https://news.ycombinator.com/item?id=25865040

How are royalties paid to the music labels?

I think you may already realise the royalties answer, but want to poke HN readers. That's fine, by me, but I think you also are aware that the majority of software developers here don't like digital locks on creative work so write digital keys to circumvent them. They do not believe in outright copyright, they do not believe in royalties. They are against corporate media streaming platforms, that pay a pittance to artists and labels, big and small.

That's basically music.

Questions of copying, design, originality, costing and ownership become more detailed, complicated, and fractious, the nearer you move the conversation toward to code.

> the majority of software developers here don't like digital locks on creative work so write digital keys to circumvent them

That probably explains why they never use DRM-based app stores like those from Apple, Valve, Epic, Sony, etc..

No, not 'never use DRM' objects; sometimes we do. Many developers are youngsters, from disadvantaged backgrounds, poorer countries, barely scraping an existence from their non-privileged zone of society. After exerting all their energies on an idea and writing the code, will go the mainstream route just to 'get it out there', to put a toe on the ladder. They can't worry that their efforts will be circumvented, they would give up entirely.

So some things that come with caveats are worth investing in. And there is some good in the majors. Throwing out the bad without the baby is the tricky part.

They're paid when I buy the music

This looks sort of like a Plex for music, and in a way (if you use some creative thinking) a self hosted Audius [1], neat!

I've been thinking about how I'd do this to ditch my library on what was Google Play Music and is now YouTube Music.

[1]: https://audius.co/

Plex isn’t terrible for music. They have specific music clients now https://plexamp.com/

I just tried it and it was in fact terrible.

I made a Music library and added 10 random tracks. Instead of reading the ID3 tags, it labeled the artist for each of them as "Various Artists" because they couldn't find a match using whatever service they use.

The paid version of plex has much better tagging. I bought it about 8 years ago $75. Well worth it

I paid for it too. My music library is 33.8k tracks. I'm not tagging those.

Is this peer2peer? I am thinking about a tool for Podcast that federates and is p2p like e.g. peertube only with all the Podcast rss Features + listeners can choose a ratio how many copys of the Podcast they want to distribute

I personally use Jellyfin's music integration of my selfhosted music streaming. It works fine, but still has a few kinks to work out. FunkWhale seems like the way to go if you're just looking for music streaming.

WOW, I can't believe we went this long without this. I knew these old IDE hard drives full of MP3s from the 90s/early 2000s would come in handy someday!

The project is lovely and exactly what I'd need. If only it was possible to buy a raspberry Pi with everything configured and 32 GB of memory for music...

How does this not run into major copyright issues?

Most instances I've seen are used to host music uploaded by the original authors, or collections of CC-licensed music, etc. I actually have yet to see anyone using funkwhale to share music publicly they didn't create themselves or have permission to share. It does have a private mode for that, so you could upload your music collection and share it with just a few friends or something.

(Edit: I tried funkwhale out as a way to privately share a small online radio station's music library with its DJs. It didn't suit our needs ultimately -- I felt the UI & search / filtering affordances were lacking for our use case -- but you could use it in a hybrid public/private way like that if you want. Libraries have some access control features.)

It's a federated model so it would be up to each instance to police it's self.

Because you are hosting your own legally owned music library on your server.

I don't expect that will be good enough for the RIAA. There are enough similarities to being a radio station or paid streaming service that RIAA would still want to strip the flesh from the bones.

Then it's up to the RIAA to (1) come and find every single instance out there, (2) get access to the instance, (3) find copyrighted content and (4) demonstrate that is beyond fair-use.

Yes, it is. That hasn't stopped them from copyright abusing shenanigans before.

I know it's mind-boggling, but there are also a few other countries outside US and A. :)

In Sweden as an example, it's OK to share with a small group of friends[1].

[1] https://translate.google.com/translate?sl=auto&tl=en&u=https...

Thanks unicornporn for pointing out the world is a big place. Ive got no love for RIAA or MPAA. I am a little surprised that my stance wasnt more dominant on HN. Did everybody forget the litigation against p2p sharing software and raids of PirateBay and Megaupload?

I do think that federated services will finaly set media free. But I also expect that copyright holders will try their best to kill a few servers that are big enough to catch their attention.

Arr matey

FYI the funkwhale dev team is looking to orphan the project, or was last I heard.

Do people have recent mp3s anymore?

Only flacs&opus sir!

is sonos supported?

And this is getting shut down in 3... 2... 1...

For what reason?

Applications are open for YC Summer 2021

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact