MidiRadio - The anywhere you go midi player!

What is MidiRadio?

MidiRadio attempts to imitate songs in game by sending tuned in players note block sounds. MidiRadio is inspired by and expands on the original works of Protected in their plugin MidiBanks, now managed by jfmherokiller.

Rather than play note sounds through note blocks however, MidiRadio streams the players individually note sounds when they are tuned in to the radio, regardless of where they are at.

How do I use MidiRadio?

MidiRadio is very easy to setup in its current stage. Just stick some midi files into the plugin's data folder and it will start playing next time the server starts up. By default players are not tuned in to the radio - however typing /tune in will quickly have them listening to the waves in no time. You can opt out too by using /tune out.

Players with the midiradio.play permission can use /play <song> to change the song too!

Video demonstation:

You can see MidiRadio in action on server.minesworn.com. Just use /tune in when you join.

At the moment MidiRadio is still in its infancy and I'd love to expand on it by adding features like playlists, or multiple radio stations however they might be limited by how much time I have. Also, please do share any good midi files you find that work well with this plugin - keep in mind though that note blocks aren't suitable for playing long notes.

Check out the source on Github here!

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of t7seven7t t7seven7t Jan 17, 2013 at 10:07 UTC - 0 likes

    Turns out I was still using a part of the old midibanks tempo conversion which makes playback somewhat slower than it should actually be causing songs to occasionally end prematurely. Will fix that :)


  • Avatar of t7seven7t t7seven7t Jan 17, 2013 at 09:58 UTC - 0 likes

    @brinaq: Go

    I never even thought of playing the Morrowind theme. I'll have to go find a good midi for it now! Thanks :)

    Last edited Jan 17, 2013 by t7seven7t
  • Avatar of brinaq brinaq Jan 17, 2013 at 09:41 UTC - 0 likes

    This is really awesome! Wow now I can play Morrowind theme in note blocks to my players :D will test tomorrow and see how it sounds. Once I get the MIDI.

  • Avatar of t7seven7t t7seven7t Jan 17, 2013 at 07:19 UTC - 0 likes

    @Ajtro08: Go

    Thanks, with your files I found a glitch with how the player gets the instrument from the midi file and fixed the drums up a bit so that you will only hear them when the channel is equal to 10 (drum channel in midi files). However, unfortunately neither of these updates are good news for your tracks unless you can make some edits to them.

    Both of the tracks you linked have only two channels each which are both the same instrument. If you can change the second channel to either channel 10 (for drums) or a guitar instrument (for MidiRadio that includes instruments 28 to 40) then you will get a more distinct difference between the two channels and as a result the song will sound better.

    Call me maybe sounds pretty cool on this.. I mean.. for a note block song :P

  • Avatar of Ajtro08 Ajtro08 Jan 16, 2013 at 02:53 UTC - 0 likes

    @t7seven7t: Go

    Alright, here are two of the midis with the problem desribed: http://www.qfpost.com/file/d?g=NtC9EbLJC (The Lazy Song - Bruno Mars) http://www.qfpost.com/file/d?g=unvNZ5EjU (Call Me Maybe - Carly Rae Jepsen)

  • Avatar of t7seven7t t7seven7t Jan 16, 2013 at 00:59 UTC - 0 likes

    @Ajtro08: Go

    Sure, I'm always looking to improve playback for different songs in the hopes it will make all sound better. I should also add that files need to use PPQ timing and most homemade midis probably won't work very well unless you've split the song into different channels for each instrument.

  • Avatar of Ajtro08 Ajtro08 Jan 15, 2013 at 16:04 UTC - 0 likes

    @t7seven7t: Go

    I created a local server and tried it, and the the midis I used didn't work. It did the same thing. I can see how the randomness can be created by latency, but the "beat" we heard was just one instrument (a very quiet drum.) I believe this program doesn't recognize some types of noise in midis? If you want, I can send you the .mid files.

  • Avatar of HeyShibby HeyShibby Jan 15, 2013 at 15:54 UTC - 0 likes

    @t7seven7t: Go

    there is no midiradio data folder being created as it just crashes on startup ;/

  • Avatar of t7seven7t t7seven7t Jan 15, 2013 at 09:28 UTC - 0 likes

    @Ajtro08: Go

    Might sound seemingly random unless you have a direct connection to the server. Due to the way Minecraft sends packets (UDP) the timing of packets showing up to the client can deviate and packets may become out of order. There really is no solution to this asides from client side mods to ensure timing and order are maintained during playback. This plugin works best for servers and clients connecting in a local network but can also achieve at least semi-desirable playback on other servers.

    As for your midi files not working, its really dependent on the song as to how well it will play back. There are a few things that might help though:

    1. Make sure you're using the most recent build (v1.1) where I fix the automatic picking of instruments somewhat so some of the notes which used to sound random now use the proper instrument.

    2. Use sound clips that don't have notes which are played for long durations, or rely on playing lots of notes very fast. Good spacing between notes is something that might help combat the playback issues I mentioned earlier.

    3. You might also try setting up a local test server for each song and listening to them to see whether the sound any good with no latency. If they don't you could try editing them to your liking with a program such as Anvil Studio (freeware program for viewing, creating and editing midis).

  • Avatar of funbi11112 funbi11112 Jan 15, 2013 at 05:46 UTC - 0 likes

    This works perfectly but it's just kinda annoying XD cus they don't sounds very good


Date created
Jan 11, 2013
Last update
Jan 18, 2013
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Recent files