67 comments

[ 3.2 ms ] story [ 128 ms ] thread
This is a bummer, but when I heard the news last night it inspired me to add this functionality to the bot I've made for the server I'm in with friends.

For anyone looking for a fun, quick project to do I recommend checkout out discord bots, discord.py is a great library that allows for some pretty cool stuff!

The most fun I've had is hooking it up to OpenAI so that typing "!ai some prompt" here will get the bot to respond back with OpenAI's response

Why is your reaction "let's build another bot Discord can shut down whenever they want" and encouraging others to have this same experience when you could run your own server, maybe Rocket Chat or Mattermost or Matrix, and write a bot against software that is at least open source?

Discord is just Slack for gamers. Its popularity, and misuse of the term "server," for a cloud product, just kills me

theres a core idea gere of sharedistening beung nothing more than a feed of links that is not gonna die.

the copyright & control world is rearing up very heavily here, with twitch, in so many places so many ways. unhosting the stream, simply providing metadata about what you are listening to, is a liberty these large powers that be will have a much harder time wrenching back from humanity.

> simply providing metadata about what you are listening to

scrobbling: https://en.wikipedia.org/wiki/Last.fm#Scrobbling

edit: I had to go just a bit further into this rabbit hole. Apparently the term "scrobble" is still a registered trademark of Last.fm, a company owned by ViacomCBS.

There's the open source ListenBrainz project, which uses "listen" instead:

https://listenbrainz.org/faq/

> Effectively a tool for adding background tunes to a chat room, Groovy worked by pulling audio directly from YouTube videos, joining voice calls, and playing music queued up by users

It's not surprising that this was shut down like most "freeload until we get caught" hobby crafts.

But is there a way to build this service in a legit way on top of any existing music services?

For example, if you were able to give Groovy your Youtube Music API key at a subscription level premium enough for your Discord server, but that doesn't exist on Youtube.

I can imagine there isn't much upside for the big players in these hard spaces to support "glue app" value like Groovy, but how can you build Groovy without building your own music service?

I'm always surprised the source code doesn't accidentally leak out when this sort of C&D occurs
> a big "fuck you" to google

Ehh, I'll be the devil's advocate, google makes money via tracking and ads. Both were avoided by using the bot. big brother is just protecting their business model.

I'd take a bet that the email chain that began the process to send Groovy the C&D started with one of the companies who license music to YouTube.
Discord.js (the primary Node.js interface to the Discord API) is chock full of exactly this code -- as examples even. Using ytdl to stream into voice channels.
> But is there a way to build this service in a legit way on top of any existing music services?

Probably not because it would count as a performance and no consumer music services are licensed for that. You'd need something like whatever pubs and shops use.

So the question is how do we create a space for something like this? I don't think most people consider this kind of music as a "performance" it's just the RIAA dictating stuff.
Realistically this will probably spawn a bunch of small scale (i.e. single server), bespoke music bots doing the exact same thing.
The way to enable this would require some legislation. It doesn't matter what most people consider, legally it is performance and RIAA has the right to dictate stuff regarding it unless/until the laws change.

So the way to go is by public advocacy and lobbying, not by looking for e.g. some technical solution.

Any service that broadcasts licensed music to users is going to have issues like this someday. See how tricky it is to have legal background music on a Twitch stream.

I think the best way forward for this kind of thing is to not broadcast the music but instead have each user use their own local player with their personal Spotify/YouTube account and sync the playlist through a shared service.

Metallica played BlizzCon and the stream on Twitch had their audio replaced / covered up by elevator music [1]

[1] https://www.billboard.com/articles/news/9529030/twitch-metal...

Similarly Mike Shinoda (Linkin Park) and Herman Li (Dragonforce) ran into trouble performing their own music on Twitch during the pandemic. While in Li's case, it's possible that he didn't consult other rightsholders, Mike Shinoda mentioned that rights for Linkin Park music are held by a small number of people (possibly just the band?) and he offered Twitch that he could provide explicit consent from those people if they could exempt his channel from DMCA enforcement of LP music - twitch replied they simply didn't have a system in place that could handle that.
> Similarly Mike Shinoda (Linkin Park) and Herman Li (Dragonforce) ran into trouble performing their own music on Twitch during the pandemic

My god we live in a strange world.

Not in this case. It’s incorrect to call that they “own” the music if they don’t own the rights to it anymore because they sold the rights to someone else in exchange for money.

One can make a great painting and then sell the painting and the right to make copies of the painting to someone else. In this case, they would not be able to redraw that painting anymore than anyone else can.

As the rest of the comment says: "Mike Shinoda mentioned that rights for Linkin Park music are held by a small number of people (possibly just the band?) and he offered Twitch that he could provide explicit consent from those people if they could exempt his channel from DMCA enforcement of LP music"

Just because a creator can sell the rights does not automatically mean that every creator has. Let's assume good faith on the part of someone as proud of their work (and deservedly so) as Mike Shinoda.

And the creator may retain their right to distribute, perform etc.
We've even see law enforcement blast copyrighted music to prevent video from ending up online. I think you're right, the ability to synchronize clients via playlist versus streaming is going to be the path forward.
I'd love to see the copyrights holders go after law enforcement officer for unauthorized public performance of their songs. If a business owner has to pay a license to play music in their shop, or a DJ needs licenses to play a wedding, LEOs should not get a free pass to play copyrighted music in public.
(comment deleted)
The best way forward would be to abolish copyright. The only people making serious money in the current system are a fraction of a percent of the most popular artists and a constellation of middlemen who skim money off the top. And as sibling comments point out, the status quo is actually harmful to artists who want to play their music online.
Discord has spotify integration so you can have group listening sessions, but it only works for premium users.
What about just syncing the playlist and seek position and leaving the actual playback to every client with original youtube player (or even better music.youtube.com) ?
> But is there a way to build this service in a legit way on top of any existing music services?

One could always build an AI that train on the youtube data to provide background music that take a suggestion from discord and then fill in music that is generated with portions that are recognizable from copyrighted music but then does not do provide the whole song. User can then rate the background music and provide input to the AI.

AI copyright laundering is going to be a fascinating new legal domain.
> But is there a way to build this service in a legit way on top of any existing music services?

Discord surely have enough lawyers and, you'd hope with a $10bn valuation, enough financial clout to wave at the record companies to get the kind of license they'd need to give their users background tunes.

But that would cost them time, money, and put them on the hook for shenanigans...

This is why copyright is dumb and doesn't translate properly to cyberspace. There is no way in hell the RIAA would bring a case against you for listening to a record that you own in the privacy of your home with a group of your friends. This is the exact cyberspace equivalent to this meatspace activity, which is obviously entirely legal and desirable and socially acceptable. The fact that we can't have nice things over a technicality that there's some distance involved and computers is utterly insane.
I was prepared to be angry at Google, but this probably stems from at-volume use of licensed material outside of the ToS. It probably impacts their deals with the music industry, etc. and requires intervention. (Not that this couldn't also be a salvo fired against an upstart competitor, but I doubt that's the primary reason.)

Seems like Discord could estimate the value of Groovy to its users, and if non-negligible, could come up with their own license deal. Perhaps with Spotify or another company.

The people to be angry at are the recording industry.

Discord does in fact have a Spotify integration, but it has limitations - you need to link your spotify account, if anyone is a free user everyone else gets silence while they have ads, and you can't use it at the same time as voice chat (the last one is largely why bots like the topic of this post are still popular).

https://support.spotify.com/us/article/discord-and-spotify/

i wonder how it would work out if a bot used youtube-dl to snarf audio tracks.

it seems YT-dl has had its fight on the hill with google and won out for the time being, its possible a discord bot using YT-dl might wake a sleeping bear

This is exactly what I made last night so I hope not!
That would be awful. Youtube-dl feels like Slsk to me. As long as its under-the-radar enough, the big dogs will let it live. That it's a CLI tool is enough to deter most users. If somebody creates a GUI app for it however, I imagine it would be snuffed out quickly.
youtube-dl already has a gui app.
I wasn't aware of that. I know about NewPipe which is almost certainly using the API. But not a desktop app.
NewPipe isn't using YouTube-DL. There's a GUI for desktop platforms, and DVD on Android. They know about it plenty. It's still not going anywhere until and unless they add DRM to YouTube. Which I could see happening in a few years.
> i wonder how it would work out if a bot used youtube-dl to snarf audio tracks.

youtube-dl + ffmpeg was the "traditional" way of doing it, but it didn't scale very well. These days, the majority of bots use lavaplayer[0] based solutions like lavalink[1] to stream audio.

There's also YouTube IP bans to be concerned about. Most bots get around it by rotating through blocks of IPv6 addresses.

[0] https://github.com/sedmelluq/lavaplayer

[1] https://github.com/freyacodes/Lavalink

It would pretty much guarantee that YouTube would kill youtube-dl access.

The music content industry is very aggressive with using legal pressure to make sure they get their dime.

I liked groovy bot and it replaced what people would do manually by just streaming their machine watching YouTube.

It seems stupid that Google didn’t work something out as the main problem was that it didn’t play ads. So just play ads.

I dislike the trend of shutting down APIs as groovy should be able to use any user’s license to YouTube to play music into a channel (or Spotify or Apple Music or whatever).

This is the equivalent of playing a record over the phones to my friends and should cost me any extra money.

I’ve never used groovy in a channel with more than 5 people anyway.

Don't forget that google wants you to watch the videos and ads. Most preferably logged into your account.

They want to learn what you watch and listen to.

Bot usage anonymises your preferences and skips ads.

So then Googs should embrace the bots and attach the bot to a user so that anything the bot does is associated with the user. win-win
Google could provide an api that shows ads or plays ads. They could also even register the users to know who was listening.

They don’t want APIs and only want listeners through their apps. Kind of lame they aren’t building technical solutions for actual user problems (like I’d like to listen to YouTube in my channel), they would be able to charge advertisers more if there are 5 people listening to an ad vs just one.

> This is the equivalent of playing a record over the phones to my friends

Yeah, that's against copyright law too. It's just that if you were doing that yourself, it would be on too small a scale for the record industry to fight against.

By this logic I can’t invite my friends over to listen to it either though right? That seems like it should be legal. I thought there was some legal threshold where it is no longer personal use but I could be wrong
(comment deleted)
I'm not a lawyer.

I believe the difference is the 'broadcasting' part. Same with streaming movies over a Zoom call.

You aren't sitting at home, privately listening to music with friends, though. You're streaming the music to a people in other places so they can listen to it.

Those don't sound the same to me.

It does, however, sound like the cyberspace equivalent to the meatspace activity in question.
That’s not against the law. What are you talking about?

I can’t deliver public performances. But I can certainly play songs for private settings. Usually explicitly, and if not, under fair use.

I was curious, so I looked up the actual law in the US.

It doesn't fall under fair use, as that only covers the use of small portions of a work for a very limited set of uses.

But you might be right. It really depends on whether playing something over the phone is considered a retransmission of a broadcast, whether it's considered the creation of a broadcast, or whether it's considered a single performance.

Section 110 subsection 4:

(4)performance of a nondramatic literary or musical work otherwise than in a transmission to the public, without any purpose of direct or indirect commercial advantage and without payment of any fee or other compensation for the performance to any of its performers, promoters, or organizers, if—

(A)there is no direct or indirect admission charge; or...

And under section 101, 'Definitions':

To perform or display a work “publicly” means—

(1) to perform or display it at a place open to the public or at any place where a substantial number of persons outside of a normal circle of a family and its social acquaintances is gathered; or

(2) to transmit or otherwise communicate a performance or display of the work to a place specified by clause (1) or to the public, by means of any device or process, whether the members of the public capable of receiving the performance or display receive it in the same place or in separate places and at the same time or at different times.

So - you're all good if you're just playing music for your friends at home.

But I can't find anything at all regarding taking a work and turning it into a limited transmission embodying that work, other than the code generally saying that broadcasts to the public must be licensed.

Anyway, while this was a fascinating exercise, I haven't actually come up with a solid answer. I take back my initial statement of "yeah that's against the law" and replace it with "...that might be against the law?" :)

Is playing through WiFi speakers transmission? If just to myself? If I have friends present?

What is the source is upstairs and the speakers are downstairs, etc.

I think the key factor is non commercial and to a small audience of friends. And that was why I thought fair use.

It’s not clearly defined, but Wikipedia describes it as “ flexible proportionality test that examines the purpose of the use, the amount used, and the impact on the market of the original work.”

So the whole song is played but the purpose is limited and there’s zero or negligible impact on the market.

It comes as no surprise to me, they were monetizing streaming music from YouTube to millions of people, once you get to that scale you can't pretend it's just a hobby project, it's a business that's freeloading on YT content.

If you want a music bot that won't succumb to the same fate, you are better off self hosting something on a small VPS.

Well, yeah...anything that depends on a third party API will last only as long as the API owner is OK with it.

10 years ago, back when Windows Phone was a thing, Google wouldn't make an official WP app for Youtube. So somebody created MetroTube, a native YT client. Incredible app, with a completely seamless experience.

Then Google changed its API rules and it was dead in under a year.

> anything that depends on a third party API will last only as long as the API owner is OK with it.

Discord bots generally use a library like lavaplayer[0] to scrape YouTube for music streaming purposes; no API access per se. It was always at best a grey area, especially since many large bots rotate through IPv6 blocks to avoid YouTube's IP bans.

[0] https://github.com/sedmelluq/lavaplayer

There are hundreds if not thousands of these bots, some are already close to Groovy's size. My initial reaction is that...this won't have much of an effect?

I wonder if a "bot factory" would be more effective, so then you're in the same boat as torrent trackers (we just make the gun, we don't use it).

(comment deleted)
Discord should just use AI generated music trained on those unlimited 8 hour tracks. Then the music could be generated by the user’s cpu with low bandwidth utilization.
Thought experiment: let's say I'm in a Zoom call (or Jitsi or whatever) with some strangers, and in turn each of us plays some music in the call (could be from Spotify, could be from the local music library, whatever can be piped into an audio sink), assume the room is open for anyone to join, would this (which is basically plug.dj over webrtc) be illegal? If so why?
In some jurisdictions is even illegal to sing a song to yourself in public.

Copyright around music and film is insane and absolutely detached from reality. Having a copyright for 70 years after the last involved person's death? Because shoveling money into a grave is useful? Why isn't it like patents, 25 years and done?

Any good options for something similar? It’s been pretty great for a few friends hanging out grinding some game and chatting. Or queuing up music of a random theme we think of.
What if we invented some kind of protocol for sharing media?