Music

A comprehensive guide about how to interact with the music system. How to request, how to listen, rules, etc.

I listen to a lot of music. Copyright is complicated. Not everyone enjoys song request streams. It's a pretty complex thing to try to take all of this into account. In response, I've built a music system for my streams that CAN be a bit complex to navigate. With that in mind, I wanted to go ahead and put together a comprehensive guide about how exactly these systems work together to keep the tunes bumpin' on streams.



Song Request Rules


Usually if I'm streaming I've got some song request rules in place that I ask you to follow.

Minimum Rank Required
To cut down on malicious song requests, you have to at least have a minimum rank of "Initiate Rk1" to request music. This rank is unlocked after 1 hour of watch time, so you can usually get to requesting on your first stream. It's not a tough requirement to meet, but it is a requirement.

Song requests must be music
It's as simple as that. Good/bad music is a matter of taste, but whatever you throw into the song request system must be music (as opposed to just a standard video with background music). No exceptions on this - non musical requests will immediately be skipped, and repeated offense will result in blacklisting.

Try to keep it PG-13 - I run a pg-13 stream, so some swearing is allowed but songs with gratuitously "adult" elements will usually just get skipped.

Memes are allowed, but tasteful memes preferred
Meme mixes are a genre of their own. But songs that fall into the realm of shittyfluted, earrape, etc are just going to immediately get skipped. The general rule of thumb is that if I feel it's too disruptive to the stream, I'll skip without a second thought.

Preferably no live mixes/recordings
This generally isn't much of an issue, but generally it's in bad taste to request songs that are recordings of live performances. This is a livestream, and it can be a bit confusing to hear another live performance in the background.

Read the room & Request your best
This isn't really a hard rule, but generally if you request heavily disliked songs often enough, you could end up getting blacklisted from the song request system. I'm not the one you need to get the songs by on this one - it's chat. Look at the section about skips below for more information.

How to Request - Chat

To interact with the music system from chat, most of it is done with the !sr command (short for song request). Here are a few examples.

!sr http://youtube.com/watch?v=_A20ivWEk9c
This is the basic way to request a song. It's simply the !sr command followed by a link to a youtube video (in this case, PRONOBOZO COMING BACK). You should expect a message from Shabtibot in chat to confirm that the song was added.

!sr help
This is just an informational command to give a bit of extra info about how to use the song request features in chat.

!cs OR !song
This command outputs the current song title that is playing.

!songlist OR !music
This command will give you a link to the Song Requests page where you can request music, view the song request queue, listen to the music with us on music optional streams, and see a history of songs that have played.

!skip[/b1]
The !skip command will start or contribute to a vote to skip the current song. Be careful with this command! Check out the section about Skips, Vetos, and Blacklisting a bit further down.

!veto[/b]
This is a costly way to immediately skip a song. There is no vote called, the song is just skipped outright and 10,000 xa (which takes about a week or so to get) is deducted from your balance.

Music Optional Streams

We have recently started experimenting with running the streams "music optional", meaning that you can watch/listen to the stream and only have the music playing if you want to. We do this by making use of a separate, audio-only Icecast stream that can be left to play in the background. This means that you can adjust the volume yourself, or just elect to play your own music in the background while we listen to song requests together.

Now, I built this system trying to keep in mind as many different watch cases as possible - desktop, mobile, wifi, data, audiophile, etc. Hopefully whatever your preferences are, we should just about have you covered.

Desktop
If you're watching on Desktop the best/easiest way to listen, request, and interact with the song request system is going to be through the Song Requests page. This page is built to have pretty much everything - a player to access the music stream, a field to request songs, a view of the current song request queue, and a history of songs that play while you have the page open.

VLC
You can open the stream in VLC on both desktop and mobile devices. To do this, you can just open the link to the audio stream itself (http://radio.shabtibot.com/live) in VLC and the stream will immediately begin playing.

Other Mobile Options
If you are a subscriber, you can watch the stream from the Sub Watch Page to avoid the issues of having audio form multiple apps open at once. Aside from that, there are a multitude of other workarounds but due to the wide range of devices and technical aptitude, it's difficult to suggest any one method in particular here. If you want to give it a mention on stream, feel free - I'm usually more than happy to discuss.

Skipping, Vetos, and Blacklists (oh my!)


Okay, so... the song request system was intended to be a democratic one - the viewers cumulatively have a whole lot of power when it comes to the song request system (which honestly results in me getting trolled more often than not). The skips, vetos, and blacklists are a way to help enforce and empower that democracy.

!skip
This starts (or contributes to) a vote to skip the current song. The votes to skip are based on the number of currently active chatters, and scales dynamically, even over the course of the vote. Currently the metric that determines the number of skip votes to pass is (square root of the number of active chatters) + 1. That's not typically a very large number, because the goal is to keep tunes that are enjoyable for EVERYONE in the stream, not just a 51% majority.

One other important thing to note is that passed skip votes contribute to auto-blacklisting of songs and requesters, so make sure to read about that in the blacklisting section below.

!veto
Vetos are meant to provide the most supportive members of the community with an occasional opportunity to express their preferences when it really matters to them. If you've been here for a while and you really just don't want a certain song to play, you can !veto it to immediately remove it from queue and move to the next song. This is a very costly command, costing 10k xa (which generally takes about a week of active participation to get) because it's pretty overpowered, and is really meant to be used when you feel it's important to skip it.

Vetos do not contribute to any of the auto-blacklisting features, because there's no vote involved. I wanted to avoid some stream veteran with 300k xa from just taking a dump on someone's ability to request songs.

IMPORTANT: Blacklisting
While I've got the power to blacklist songs myself, songs are more often blacklisted by chat than they are by me. I have an auto-blacklisting process in place that is based primarily on skip votes (Again: Democracy).
  • Songs that pass skip votes enough times will automatically be added to the blacklist. 5 passed votes is enough to send any one specific song to the blacklist.
  • If enough of YOUR songs get blacklisted (like if, for example, you are requesting intentionally irritating music consistently), you will automatically be blacklisted from requesting any more music. I have control over this, and I can easily reinstate your request privileges, but at that point you and I are having a conversation. Meme skips happen, and usually I'll reverse those if it comes to it.
  • Songs that are already on one of the persistent playlists can not be auto-blacklisted.


So, keep that in mind. The best practice is to read the room and request your best - Try not to request music that you feel won't go over well. Remember, the number of votes needed to skip a song will always be small in comparison to the total number of active chatters, so it's best to exercise a bit of consideration.

License-Aware Requesting


I don't do this very often, but I built ShabtiBot to be as aware of copyright license as I could - able to restrict song requests to music that we have permission to use on stream. If I have license-aware requesting turned on, you'll only be able to request music that falls into one of these categories (based on how I've got it set):
Monstercat songs
Twitch-Approved Music
Creative Commons Works
Original Music

Just be aware that occasionally if you request a song, you may get a notification in chat about only music with certain licensing options can be requested.

More to come!


ShabtiBot is a constant work in progress for me. I've always got an idea of what I'd like to do with Shabti, and I'm adding new features all the time. As I continue to expand on ShabtiBot, some features might change over time. With that in mind, I'm going to do my best to keep this page as current as possible about how to use the music systems here.

As for what's ahead:
Guest DJs (yes, really)
More bit rate on the music streams.
Personal playlists, specific to you
Short song request "takeovers"
A proper song request history
Analytics about how individual songs affect stream performance
Song requests from other platforms (SoundCloud, Spotify, Etc)
×