OPL3 rendering path: authentic Sound Blaster FM, no soundfont
- tools/opl/render_opl.cpp: libADLMIDI harness - renders MIDI through OPL3 emulation with game-driver volume models (DMX/Doom, Apogee/Duke, AIL, HMI), normalised output, WAV header patched to actual length - tools/opl/build.sh: one-shot fetch+build of libADLMIDI - tools/render_opl.sh: batch render + check_wav for all tunes - README: OPL3 section
This commit is contained in:
1 parent
9b1e61b2ce
commit
72a337f50f
5 files changed
+152
No files matched your search
@@ -104,6 +104,21 @@ on a peak of 32767.
|
||||
- A bar-length linter in the score parser catches more composition bugs
|
||||
than any amount of staring at note lists.
|
||||
|
||||
## OPL3 rendering (the authentic one)
|
||||
|
||||
For real Sound Blaster flavour — FM synthesis, no soundfont, like the
|
||||
actual YMF262 chip:
|
||||
|
||||
```bash
|
||||
./tools/opl/build.sh # one-time: fetches + builds libADLMIDI
|
||||
./tools/render_opl.sh # renders all midi/*.mid through OPL3
|
||||
OPL_MODEL=4 ./tools/render_opl.sh midi/03_late_equaliser.mid
|
||||
```
|
||||
|
||||
Volume models mimic real game sound drivers: `2` NativeOPL3 (id-style),
|
||||
`3` DMX (Doom, default), `4` APOGEE (Duke Nukem 3D), `8` AIL, `10` HMI.
|
||||
Output is normalised (OPL runs quiet). Needs `cmake` + `g++` to build.
|
||||
|
||||
## Licence & soundfonts
|
||||
|
||||
MIT — see [LICENSE](LICENSE). Rendering needs a General MIDI soundfont,
|
||||
|
||||
Reference in new issue
Block a user