Mario Kart Unlimited - Unlimited Mario Kart Wii Experiences!

Full Version: Custom Music Tutorial (Fast Method Without Clipping)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Quindarius Gooch (MarioKartBoards) Wrote:So many people still use outdated methods for custom music creation, however, there are many more tools available nowadays that just aren't documented as well, so I'll teach the method I use, which not only allows faster creation, but also creation of multiple brstms at once. I know the guide looks long, but the process is very simple, and a bunch of what I say is just trying to explain as thoroughly as possible so that people who are new to this kind of thing can easily understand it.

Resources you need:
YouTube to MP3 Converter (For this particular one, make sure you set the dropdown to MP3 128kbps or MP3 64kbps, also if this link is dead, YouTube tends to take these down, so just google for a replacement.)
Audacity v2.4.2 (v3 and above contain spyware, so if you have them installed I'd recommend uninstalling them and installing this version, older versions work just fine as well.)
Looping Audio Converter
Final Lap Stream Maker
BrawlCrate (if you have BrawlBox installed already, that works just as well, although BrawlCrate is better in many other ways outside of brstm making, so you may want to upgrade anyways.)
a revo_kart.brsar file
Optional Resources:
Patch That BRSAR! (only if you plan on using your music outside of CTGP Revolution or any other pack that doesn't have an auto brsar patcher, or use a modified brsar.)
LoopAuditioneer (only if you care about your song having a custom loop point instead of start to finish.)
All Mario Kart Wii File Names (you don't need this if you have the file names memorized.)
QuickBRSTMPatcher (Only if you want to use CTGP's "BRSTMs Only" My Stuff option.)
HxD (If you want to hex edit for BRSTMs Only My Stuff, any other hex editor works as well.)



Creating The Input File
You can convert directly from MP3 to BRSTM, however a lot of songs actually have silence at the beginning and the end, and they'll only loop from start to end, so if you're using video game music, and you want to go directly from mp3 to brstm, the song will eventually stop looping, and a longer song creates a bigger file, which may be a problem if you have a small sd card, but you can create your own loops to make files smaller, as well as trim out parts of the song you don't like:

1. Find a YouTube video of the song you want, copy/paste the link into the converter, and download it (can't be over 1 hour)
2. Open Audacity and load the mp3 you just downloaded.
- Toad's Factory, Wario's Gold Mine. Koopa Cape, Dry Dry Ruins, Moonview Highway, and Bowser's Castle require a few extra steps because they're Multi Channel BRSTMs, reference this guide
Show ContentFor Song Cropping:
Show ContentFor Custom Loop Points:

3. Export the audio from audacity as a wav, name it whatever you want, for convenience, I usually just name it after the track's brstm (can be found here)
Show ContentCustom Loop Points Part 2:
Converting to BRSTM
Mario Kart Wii, along with most, if not all, other Nintendo games since at least the GameCube, can't read wav files, mp3 files, or any other common audio file types, it uses its own proprietary format (brstm), so you have to convert your file using a program.

4. Open Looping Audio Converter, (if your antivirus blocks it, just add it as an exception, it's a false positive, and if you really don't trust it, you can either check the source code or, if you're not fluent in code, you can convert to brstm in other ways, there are plenty of other tutorials out there showing other methods) click add, add your wav or mp3 file (you can add multiple at once by dragging over multiple files, shift clicking, or just any way to select multiple files at once, which is one of the reasons I prefer this method so much over the BrawlBox/BrawlCrate method and part of what inspired me to write this in the first place) and make sure the settings are the same as the ones I have besides the Output directory, click "Save Options" if it's your first time doing this, then hit "Start", it should take a bit to convert, after which it should give a success message. (Note that it does hang sometimes, especially when creating larger brstms in bulk, I am not aware of any fix other than closing the program and trying again)

[Image: 3XPGaWm.png]


5. Move the file(s) into their correct folder, for ISOs, it should be in (ISO Name)\DATA\files\sound\strm, and for consoles it should be put into whatever folder it's being read from, most likely (SD Card)\ctgpr\My Stuff unless you're using some riivolution pack without a CTGP My Stuff toggle, if that folder doesn't exist, just create it (it's case sensitive).
6. Open Final Lap Stream Maker, double click your brstm, and when the second window opens, rename it to something else (if you have it named properly, just change the _n at the end to an _f), this will create a final lap version of a song the exact same way Nintendo did it.

BRSAR Editing for the final touches
Your song will play ingame at this point, however it will most likely be extremely quiet and most likely cut off partway through, to fix this, we have to edit the brsar a little bit. Luckily, the cutting off can be auto fixed by CTGP as well as some other riivolution track packs (ex. JHFR), just turn on "Automatic BRSAR Patching" on Page 2 of the CTGP Channel settings, and riivolution distributions should have a similar name for their toggle, however, people using ISOs or packs without auto brsar patching have to do an extra, one time step, which is honestly worth doing even if you only play on ctgp or other auto patching packs. And the quiet music issue is much easier to fix without audio crackles that came with the old method.

Show ContentFor ISO/Riivolution Users, FIRST TIME ONLY:

7. Open the revo_kart.brsar with BrawlBox/Crate, on the left, navigate to STRM -> N (R For Retro Tracks, M For Galaxy Colosseum/Galaxy Arena, which plays on SADX Twinkle Circuit in CTGP, O for everything else) -> TRACKNAME (All of the battle stages will be under BTL for both N and R). Most are pretty obvious, but if you can't figure one out, click on one of the sub-entries and cross reference the SoundFile column on the right with the brstm list in the "All File Names" thread, there should be 2 sub-entries there, both with a "?" next to them; N for the first two laps, and F for the final lap. Click on one, and edit the "volume" value to be higher, despite being able to input from a range from 1-255, anything above 127 will just be treated as 127, then do the same thing with the other sub-entry.

[Image: k2yOWsm.png]

Only follow the next step If you plan on using CTGP's "BRSTMs Only" My Stuff setting.

Working With CTGP's BRSTM only My Stuff option (optional)
For the "BRSTMs only" My Stuff mode, the method above doesn't work due to the mode being created to prevent abusing the brsar volume for an unfair advantage, so you have to either use QuickBRSTMPatcher or hex edit the BRSTM to achieve the same result as above.

8a. Open QuickBRSTMPatcher and follow the instructions, your antivirus may go off, but just add it as an exception, it's completely safe, although if you don't trust it, you can always hex edit.

8b. If you'd rather hex edit, which is currently required due to the program being private, but can also be done if you just prefer it, as it's only a single byte, open the brstm in a hex editor, and locate byte 0x3F (highlighted in the screenshot), it should be 00, change it to a value between 01 (1) and 7F (127), as 00 causes it to refer to the brsar, therefore causing it to use the default value that the game uses in the vanilla brsar, use a hex calculator if you're not very good at converting in your head, there are plenty out there.

[Image: i58fbjh.png]

Hope this helped, I tried to put it in the most layman terms possible, so even somebody who just finished installing CTGP can understand and do it, but I also tried to cover all bases for the more experienced people out there who just want to learn this faster method. If you have any questions, feel free to reply to the thread or DM me on discord (Silvεr#0001).