SGI Audio Tools: Difference between revisions

m
Made sample images larger for readability
m (Made sample images larger for readability)
Line 34:
Programs such as [https://musescore.org/ MuseScore] likely export in Type 1, so it's usually a good idea to convert to Type 0 before continuing.
 
[[File:Midicvt_sample_image.png|frameless|Screenshot of <code>midicvt</code> run successfully.|alt=|500x500px]]
 
For each of your original MIDI files, run the following:
Line 46:
The NuSystem library is written to use compressed MIDI files for songs. If you inspect the library, you'll notice that it uses a <code> ALCSPlayer</code> for storing/playing songs. It is possible to use uncompressed Type 0 MIDI, but you'll need to look into editing/rebuilding NuSystem or your own audio code with Nintendo's core audio library.
 
[[File:Midicomp usage.png|frameless|Midicomp being successfully used.|alt=|600x600px]]
 
For each of your converted MIDI files, run the following:
Line 59:
<br ><code>sbc -Osongs.sbk first_song_compressed.cmf second_song_compressed.cmf third_song_compressed.cmf</code>
 
[[File:Sbc used.png|frameless|sbc successfully used here|alt=|600x600px]]
 
The '''ordering is important''' here! Keep note of the order of each parameter, as when you're selecting your songs in your game's source code, you'll be indexing them as they're ordered here (eg: <code>first_song_compressed.cmf</code> will be <code>0</code>, second_song_compressed.cmf </code> will be <code>1</code>, etc.).
Line 278:
If your <code>.ins</code> file doesn't have any errors, you should see an output like this:
 
[[File:Ic success.png|frameless|A bunch of garbled output from the instrument compiler, but no specific line numbers.|alt=|600x600px]]
 
You should also then have <code>.tbl</code> and <code>.ctl</code> files in the same directory with the name you put before the <code>-O</code> parameter.
 
[[File:Ic new files.png|frameless|The CTL and TBL output files shown via the DIR command.|alt=|500x500px]]
 
If there are syntax or other errors in your <code>.ins</code> file, you might get an error message like this:
 
[[File:Ic error.png|frameless|The instrument compiler showing an error.|alt=|600x600px]]
 
Even though the output looks garbled, try not to be discouraged! The final line output will show the line number of the error. The first place to look is often the associated line.
 
[[File:Screen Shot 2020-10-06 at 10.05.28 PM.png|frameless|An Instrument Bank file with a missing semicolon on line 28/29.|alt=|500x500px]]
 
In this case, the example error message was caused by a missing semicolon on line 28/29.
84

edits