Midi Buddy

It’s been a long time coming but I’ve finally got a first working version of a One-Press Song creator. You can find it here: https://midi-buddy.firebaseapp.com

Keep in mind that I’m an amateur programmer - there are plenty of bugs and things that can be added to make this more useful. Anyway, you can get at least some satisfaction from following these steps:

  1. Download a midi file of your favourite song from a random internet site

  2. Have a listen, make sure it’s up to snuff

  3. Go to https://midi-buddy.firebaseapp.com

  4. Upload your file. It should automatically move you to the next step. If not, click Next

  5. You should see a list of tracks from the song. Choose the kit you wish to use with the song.
    The Default V2 kits are the recently updated built-in content for the BB. User kits are the ones that have been generously posted to this forum. The General MIDI entry isnt’ really useful - it’s there for reference really.
    The other options are

    • Move unsupported notes to nearest octave - check this box if notes in the midi file are outside the range of notes in the non-drum instruments in the chosen kit. This is good to keep it musical without gaps but may play havoc with a recognisable riff.

    • Move unsupported drums to closest equivalent - if your midi file use the Alt Snare at note 40 for example, you won’t hear it if you use a kit that does not have an instrument for that number. Checking this option will move the note to 38. I’ve taken the liberty of deciding what the missing instruments should map to, but I hope to make this user configurable in future.

    • Transpose - maps non-drum notes up or down by the given number.

  6. Midi Buddy attempts to select an appropriate instrument from the kit against the tracks in song
    Blank selections means that that track is ignored. Tracks with the same selection are merged. You can change these selections if you want to, but you’re limited to the instruments in the chosen kit.

  7. Once you’re happy, click Next

  8. Change the name of the output file here if you want to (I advise not including commas (,) in the name as they cause issues in BBM).

  9. Click Export. You should get a downloaded midi file.

  10. Import the OP part into your song in BBM (make sure you use the kit you chose at step 4)

  11. Enjoy!

Features / fixes I want include in future (in no particular order):

  • Add more kits to the list / let users add a kit to the list
  • Track playback / preview
  • Store the processed file to an area so other people can download it
  • Export a .sng file
  • Automatically create a post for the forum
  • Allow users to map any track note to another note / instrument
  • Option to just remove unsupported notes
  • Create multi-part songs (this is what I actually wanted to do first but I couldn’t get my head around the logic of detecting patterns and fills etc)
  • Show a more detailed analysis of the uploaded midi file eg show tempo, key signature etc

Great work and kudos for sharing…I do not use OP/B songs myself but I am sure there are hundreds of others who do and will really appreciate this!

1 Like

Thanks for sharing, I’ll give it a try, much appriciated

1 Like

Great job! It works!

But those links lead to nowhere:

1 Like

Wow. Ok. That’s disappointing. Not sure what happened there. I’ll have a look later (although you’re not really missing much). Thanks for letting me know