Jump to content
  • Advertisement
Sign in to follow this  
Barrow Boy

Making a personal guitar hero

This topic is 3614 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I've decided that a project I'd like to work towards, after becoming proficient with DirectX programming, is making a sort of mini guitar hero for myself, with songs I'd personally like to play. That goal is far off right now, but I'd like to know a few things now anyway. First of all, how would you go about separating the guitar part of a song from the rest of it (singing, bass, etc)? Are there fancy programs that can do this for you? Could you manage it with a simple equalizer? Secondly, once you've got the guitar part by itself, how to store it? It seems to me like it would be rather inefficient to store every single note in a separate file of its own, but I haven't thought of a better way to do it. Finally, am I getting ahead of myself? I am just starting to learn the basics of Direct3D right now, and I know very little about sound in general, let alone DirectSound. (Are there any good resources to learn about sound?) Keep in mind, all I want to do right now is work on the musical part, not the coding. Thanks in advance for any help.

Share this post


Link to post
Share on other sites
Advertisement
there's filters you can try and pull out the guitar part.. otherwise, maybe if you just used MIDI of the songs??

as for the note storage... why not MP3, with a file containing the offsets for each note, so the prog knows how long to cut out the song if you screw up.

Share this post


Link to post
Share on other sites
Actually, I don't really understand MIDI at all. What do you mean by using the MIDI of the songs?

You're talking about one big mp3 file, right? Not a bunch of little ones? And what do you mean by the offsets of the notes? (I'm sorry if I'm asking stupid questions, but I'm new to this.)

Share this post


Link to post
Share on other sites
Guitar Hero / Rock Band used the original "master" recordings, which means they have the separate layers of each instrument in separate files (obtained from the recording studio) before being mixed into one file.

Trying to do this backwards (cut a single file back into multiple layers) is near impossible... unless you're in CSI-land.

Quote:
Actually, I don't really understand MIDI at all. What do you mean by using the MIDI of the songs?
The MIDI file format doesn't store sound waves (like a WAV or MP3 does), it stores the actual musical notes and instructions on how to reproduce the sounds using virtual instruments. If you based your game off MIDIs then it would be much easier to cut out individual notes, etc...
However, MIDIs generally don't sound as good as MP3s, and they can't store the vocals or any other 'non-instrument' sound.
Quote:
You're talking about one big mp3 file, right? Not a bunch of little ones? And what do you mean by the offsets of the notes?
You could have a data file that accompanies the MP3 file, which contains information on when the notes happen.
E.g. Note #42 lasts from 36 seconds to 37.4 seconds. (The 'offset' just means a time value measured from the start of the file, etc...)
Then using this information you could silence the MP3 for that time period if the player misses the note.

Share this post


Link to post
Share on other sites
A MIDI file, unlike an mp3, contains notes that are played by simulated instruments. Thus, the data you need is inherent to the format. It does tend to sound like ass though.

My suggestion would be to just not bother with the wrong-note noises or separating the tracks. Or, if you really feel you must, then simply play the wrong-note sound over the music without altering it because it will convey the same information to the player anyway, and when the player misses a note either play the wrong-note noise or just mute the song for an instant. It ain't perfect, but it will be a lot less work and almost the same.

Share this post


Link to post
Share on other sites
Quote:
Quote:
Actually, I don't really understand MIDI at all. What do you mean by using the MIDI of the songs?
The MIDI file format doesn't store sound waves (like a WAV or MP3 does), it stores the actual musical notes and instructions on how to reproduce the sounds using virtual instruments. If you based your programs off MIDI's then it would be much easier to cut out individual notes, etc...


So, would basing them off MIDIs be like personally rewriting the entire song? I take it there aren't ways to convert files to MIDI?

Quote:
My suggestion would be to just not bother with the wrong-note noises or separating the tracks. Or, if you really feel you must, then simply play the wrong-note sound over the music without altering it because it will convey the same information to the player anyway, and when the player misses a note either play the wrong-note noise or just mute the song for an instant. It ain't perfect, but it will be a lot less work and almost the same.


That's a good idea; one I was planning on resorting to if there wasn't a good way to do an alternative.

Share this post


Link to post
Share on other sites
Quote:
Original post by Barrow Boy
So, would basing them off MIDIs be like personally rewriting the entire song? I take it there aren't ways to convert files to MIDI?
I have seen tools to convert waveforms to MIDI's... but they don't really work.

However, I just typed "pop music midi" into Google and a lot of pages came up - other people have likely done the conversion for you ;) (keep in mind that downloading these songs *is* copyright infringement, even though they are of inferior quality)


Majorlag's suggestion of just playing the "incorrect" noise over the top is a far simpler solution to your problem though.

Share this post


Link to post
Share on other sites
Quote:
Original post by Daaark
Barrow, look up a project called Frets On Fire


That's neat. I noticed they were still able to separate the guitar. Were those songs MIDI files that the game's creator had written?

I didn't try out importing my own songs, so I'm not sure how that works out, but that's the general idea of what I was hoping to make. Different songs, which is, or course, why I want to make my own. And different graphics (I found it hard to quickly tell which notes needed to be strummed or not, for example).

I was also wondering whether it would be conceivable to use an actual guitar hero/rock band controller (one with a usb plugin) to play the game. I don't know anything about input, but how tough would it actually be to use one of those guitar controllers in your own game?

Share this post


Link to post
Share on other sites
Quote:
Original post by Barrow Boy
I was also wondering whether it would be conceivable to use an actual guitar hero/rock band controller (one with a usb plugin) to play the game. I don't know anything about input, but how tough would it actually be to use one of those guitar controllers in your own game?
I believe XNA / XInput can use the 360 version, since it's just a standard 360 controller with a different shape.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!