MegaMan Network Transmission Music - in_cube plug-in and lossless encoding (FLAC) by CyberSpark at 3:25 AM EDT on April 30, 2008
Hi I'm new here. VideoGameScrapBook informed me about this site. Thanks. :)
OK so I've read through the list of games that support the in_cube plug-in and was happy to see that it should work for MegaMan Network Transmission. :D Now please note that I'm very new to all of this, I've never used Winamp (VLC media player user) and just recently heard about the in_cube plug-in.
What I would like to do is extract all of the music from MegaMan Network Transmission (Gamecube disc), burn it to CD(s) first and then encode it in lossless for archival purposes. Can someone walk a noob through the steps of how to do this? I can handle the lossless encoding part myself. Better yet, if someone has already done this (in lossless FLAC or APE) could you send me the files?
I also want to be able to loop some of the songs to match that of the inferior mp3 quality game recodings. Most "game-rips" (recodings) that I've seen have 32 songs with 91 minutes worth of music. An 800MB CD should hold 91 minutes, right? Anyway, I'd really appreciate help on this. Thanks for reading. :)
Well, there's 4 methods to get the DSPs. These are probably in backwords order of easiest... (Therefore #4 is easiest, #3 is second easiest, etc.)
1) Create a copy of the GC ISO yourself. This requires a specific DVD drive for your PC. I don't know what drive is needed (You'd have to search for it). Even if I did know, I mildly doubt you have the right one. Even if you did have the right one, you'd need to modify the firmware (or download a modified firmware and install it to your DVD drive). I don't know how to do this, or where to get the modified firmware (you'd have to search). Once you did that, you'd have to get the correct software to dump the disc, and then you'd have to get the right software to read the resulting RAW image (see #3).
2) Create a copy of the GC ISO yourself, using the NGC and the broadband adapter. This is among the "easiest" "legal" ways, but probably expensive. If you happen to have the BBA, then you need to get the game that has the glitch in it that allows you to login to a server running on your PC, rather than the server it's programmed to connect to (the back door you'd be using was fixed in a later version of this game, so you need the original, not the "+" or "Plus" version). To run the server on your PC, you need specific software. I have this software, but I don't remember where on my PC it is, or what it's called (again, search for it). Once you have the necessary software and hardware, this method is pretty easy, but very slow. There's readme's with the software. It's all explained reasonably well with those.
3) Download the GC ISO off of some site that has it, or a torrent for it. Once you have the ISO/GCM, you can read the GCM with GC Explorer. This will also allow you to extract the contents of the GCM file.
4) Download the DSPs themselves, and don't bother with all the fangled stuff above. You can find them here.
Once you have the DSPs, you need to be informed that the MegaMan Network Transmission DSP files do not follow the Nintendo guidelines for DSP files. As such, they don't work correctly with in_cube. They *do* play, but I've heard that they don't loop properly. I doubt that VGMstream will be much better, but I'd still recommend VGMstream over in_cube for these, as it is likely more capable of getting data that in_cube can't get. In other words, you will likely have to use VGMstream to create WAV files, and then use these WAV files to manually loop them. How to use VGMstream is explained in the readme that comes with it.
Hopefully I've provided enough information to help you accomplish your goal. If not, please specify what you need clarification on, and I will see what I can do. Please note that at the time that I posted this, VGMstream was unaccessible. I'm sure the link is correct, but it seems that sourceforge wouldn't respond. Mouser X over and out.
Thanks for the info, I'll definitely look into it when I get home.
Once I extract the WAV files what program can I use to loop the audio? What will give me the most accurate results? I want it to sound seemless as if there's no break in the audio.
That's going to require a fair amount of work on your part to figure out exactly where the loop point is. Any decent wave editor (I use Audacity, many apparently use "Goldwave") will let you look at the waveform and determine this, and then copy the looped portion and apply a fade. I've been meaning to write something to make this suck less... Particularly for things like this where we know they loop precisely, and an algorithmic solution shouldn't be terribly difficult.
I'd do it with deltas. Build up a list of all pairs of consecutive deltas, and use that as a start point to speed up the search. Assume that there is a sequence near the end that is repeated earlier, find longest (or first few longest). Maybe some fuzz (which the delta pretty much is).
I'm finally home; may I please get some assistance now? I've download Winamp, I've downloaded the VGMstream folder (with in_vgmstream.dll file), what do I do with all of this now? to what directory do I move the vgmstream.dll file and how do I use it within Winamp? Sorry but I'm a noob. :(
OK thanks, now what. lol. Can I drag and drop the files? I'm trying to convert them to .WAV format.
Edit: OK I should really look for things first before asking questions.
This might sound a little strange but do you think I can use FL Studio 7 (Music creation program) to loop the .WAV files? With it I should be able to import the .WAV file and the program already has features in it for creating loop points. Think it might work?
The most important thing first: These are "dual-audio" files. That is, one ends with "L" and the other ends with "R." For example, there's a "BM01_06_L.dsp" and a "BM01_06_R.dsp" file. One is the Left Stereo channel, and the other is the Right Stereo channel. VGMstream combines these files on the fly, so there's no need to decode both of them. If you're using Winamp, then remove all of the "R" (or all the "L" files. One or the other. Be consistent, and only remove the files that end in "R" or "L," not both "R" and "L" files) files from the playlist, and you'll still have 100% of the music.
The other thing is that there's no need for Winamp here. Personally I'd recommend using the "test.exe" command line application. If you read the readmen.txt file, it tells you how to use that program. If you don't want to bothered with a command line application though, I can't see anything specifically that would make Winamp a problem to use, so feel free to use that if you want.
If you don't know how to use a command line application, open a command prompt (start>run>cmd.exe), and browse to where you've extracted "test.exe" (use "cd" followed by the directory name to get there. Ex: If you've extracted vgmstream to "D:\Program Files\vgmstream" then this is how you'd get there from the command prompt (assuming it starts you on the C: drive): "D:" push ENTER [this will change the drive you're on] 'cd "Program Files"' push ENTER [you need the " marks around 'Program Files' because there's a space in the name] "cd vgmstream" push ENTER. You're now in the "D:\Program Files\vgmstream" directory. You could also do this to get there (again assuming it starts the command prompt in the C: drive): "D:" push ENTER [again, to get to the D: drive], "cd "Program Files\vgmstream" push ENTER.
Once you're in the directory with "test.exe" in it, then use the commands that the readme.txt file tells you to use. I was going to suggest the "-i" option, but I just looked at the MM NT DSPs, and it looks like they don't have any loop points at all. I've had these files on my PC for nearly 2 and a half years, and I've never listened to them even once... The reason being is that when I got the MegaMan X: Command Mission DSPs, they were completely broken. The loop points were completely wrong, and looped to random parts throughout the file (this is why the PS2 version of MMX:CM is so awesome. It uses ADX, and therefore loops correctly). I had heard that the MM NT DSPs were the same. I guess I probably misunderstood. They have no loop points at all.
So, personally I recommend using the command line application. However, it really won't make much of a difference either way, it looks like. Hopefully this has been helpful. Mouser X over and out.
I have a question about the DPS files I received in the first link for MM NT. Within Winamp I can view the Stream Info. The sample rate is apparently 32,000Hz and the encoding is 4-bit ADPCM. How can I get the DSPs with 44,000Hz (or 44,100Hz) sample rate and 16-bit audio like CD quality?
Edit: here's the information that's displayed: Image
Rule of thumb: You can't recover data that lossy compression throws away. GC DSP is a lossy compression, packing 16-bit PCM into 4-bit ADPCM. In practice this really doesn't lose much data, but the losses still exist. vgmstream decodes this back to 16-bit PCM because that's what the rest of the system wants to play, but it is never truly "CD quality" unless you consider that it is exactly the 16-bit audio played by the game, which is usually enough. Regarding the sample rate: 32000 Hz has been enough for Nintendo since the SNES. If you're making FLACs there really isn't any reason to resample it to 44100; this doesn't recover any data and will only serve to make it take up more space. If you are intending to burn it to a redbook audio CD then you have no choice, but that doesn't seem to be your goal.
You do realize you're wrong, right? If not, let me spell it out for you. FLAC IS LOSSLESS! IF YOU SAY OTHEWISE YOU ARE DOUBLE-YOU ARE OH EN GEE. Again, that means that you're WRONG. If for some reason you've come across information that says otherwise, then you've either misunderstood that information (language barrier), or the information you read IS WRONG. If you're going to say it's from Neill's site, then I'll say it again. YOU MISUNDERSTOOD IT, or Neill is WRONG. Yes, you saw that correctly. If Neill Corlett ACTUALLY said that (which I'm sure he didn't) then Neill Corlett is WRONG.
Have I made myself clear? Please stop with your misinformation. FLAC *IS* lossless. The WAV used to create the FLAC, and the WAV that you'd get from decoding the FLAC file are identical. Try it yourself. Take a WAV, make a FLAC, then decode that FLAC, and compare it to the original WAV. I hope that helps clear up any misconceptions you've had. Mouser X over and out.
Quote: "Rule of thumb: You can't recover data that lossy compression throws away. GC DSP is a lossy compression, packing 16-bit PCM into 4-bit ADPCM. In practice this really doesn't lose much data, but the losses still exist. vgmstream decodes this back to 16-bit PCM because that's what the rest of the system wants to play, but it is never truly "CD quality" unless you consider that it is exactly the 16-bit audio played by the game, which is usually enough. Regarding the sample rate: 32000 Hz has been enough for Nintendo since the SNES. If you're making FLACs there really isn't any reason to resample it to 44100; this doesn't recover any data and will only serve to make it take up more space. If you are intending to burn it to a redbook audio CD then you have no choice, but that doesn't seem to be your goal."
Oh OK, I understand that, I guess that I was thinking of the way game used to be where all of the data was uncompressed and the audio data alone took more then half of a disc's space. :)
So the only way to get true CD quality of this music is to either wait for an original soundtrack (very unlikely) or to do what I've been trying to do and that is to contact Shinji Hosoe (composer) directly and request this music in lossless format. I found his official website here: CocoeBiz Forums. He hasn't responded, I don't even know if he has even read my request but as you can see I really want this music in lossless. :)
Quote: "You do realize FLAC is not lossless?"
FLAC stands for "Free Lossless Audio Codec". So if you were to encode songs on a CD into FLAC then it'll sound and mathematically be 100% identical to the original source. If you were to encode an mp3 into FLAC then the data will be 100% like that Mp3 but of course a complete waste of space o your storage device.
No matter how well you encode something it will always lose quality. Although the quality lost from FLAC is basicallly 0. However, transferring sound to digital signals, whether it be *.WAV or *.FLAC or any other format you instantly lose some quality, becuase the sample rate is infinite in normal sound but in digital its set, usually 48kHz, although some use 96kHz and some stupid people use 44.1kHZ.
Just wondering, I guess you want him to send it in its original format?