Like, I know I can pass it through audacity, but the problem is that for some reason it sounds way a bit different than on the engine, if I remember right from my last attempt
Is there a way to translate the MiDi’s into OGG without loosing quality?
Like, I know I can pass it through audacity, but the problem is that for some reason it sounds way a bit different than on the engine, if I remember right from my last attempt
Is there a way to translate the MiDi’s into OGG without loosing quality?
A MIDI file doesn’t have any audio in it, just note data, so whatever plays it back is what picks the instruments. XP handles BGM through DirectMusic’s own MIDI playback rather than sending the file out to whatever your system has set as its default MIDI device, which is why the same file can sound noticeably different once something else renders it. So what you ran into probably isn’t OGG losing quality, it’s a different sound set playing the notes.
What I’d probably do is record the engine’s own output. In Audacity, switch the audio host to Windows WASAPI and pick your speakers or headphones as the recording device, then playtest a map with that BGM playing and hit record. It’s real time so it’s slow across a whole soundtrack, but what you capture is exactly what XP is putting out.
If you’d rather batch it, there’s a command line tool called MIDIRenderer that renders MIDI straight to OGG and turns RPG Maker’s loop point marker into LOOPSTART and LOOPLENGTH tags: https://github.com/getraid-gg/MIDIRenderer. It doesn’t ship a soundfont, and its readme says the closest you’ll get to the Windows sound is Windows’ own gm.dls converted to SF2. I haven’t put XP’s music through it myself so I can’t say how close it lands next to the engine.
This is something I’d wanted to do as well, so I can use the XP music in MZ, but it wasn’t a priority so I put it on the back burner. So discovering MIDIRenderer is quite helpful.