Post by lucius on Feb 16, 2023 5:17:46 GMT
This build adds both Sound Font (sf2) and OPL3 midi synthesis. External midi is no longer required on Linux. Note that midi settings will be reset with this build, if you want to change from the default (OPL3 emulation) - then use the Sound menu.
OPL3 support required reverse-engineering the iMuse "FM4" driver code, as well as changing the midi device/output architecture to support synthesis, and dynamically changing both devices and outputs during gameplay. In addition, the audio system now processes audio at 44.1 kHz (instead of 11 kHz) - which means upsampling the iMuse mixed digital audio.
Download: theforceengine.github.io/downloads.html
Changes
* Implemented midi device types to support system midi as well as midi synthesis.
* Implemented support for midi synthesis using Sound Fonts (sf2).
* Implemented support for midi synthesis using OPL3 emulation and the iMuse OPL driver.
* Implemented the ability to change midi devices and outputs during gameplay, the game music is restarted as needed.
* Added Roland SC-55 and AWE64 sound fonts.
* Added support for 800p in the resolution list for the Steam Deck.
* Update the Readme to reflect that external midi is no longer required on Linux.
* The midi device now defaults to OPL3.
* Reduced stack size requirements in the audio system to fix issues on Steam Deck.
* Linux/CMake: also install the Mods and SoundFonts folders.
* Linux/Paths: look for support data in the executable directory too.
* CMake: gitVersion: do nothing if Git is not available.
* Linux: name executable “theforceengine”
* Add comments categorizing keywords and noting those which are not implemented.
Video
OPL3 support required reverse-engineering the iMuse "FM4" driver code, as well as changing the midi device/output architecture to support synthesis, and dynamically changing both devices and outputs during gameplay. In addition, the audio system now processes audio at 44.1 kHz (instead of 11 kHz) - which means upsampling the iMuse mixed digital audio.
Download: theforceengine.github.io/downloads.html
Changes
* Implemented midi device types to support system midi as well as midi synthesis.
* Implemented support for midi synthesis using Sound Fonts (sf2).
* Implemented support for midi synthesis using OPL3 emulation and the iMuse OPL driver.
* Implemented the ability to change midi devices and outputs during gameplay, the game music is restarted as needed.
* Added Roland SC-55 and AWE64 sound fonts.
* Added support for 800p in the resolution list for the Steam Deck.
* Update the Readme to reflect that external midi is no longer required on Linux.
* The midi device now defaults to OPL3.
* Reduced stack size requirements in the audio system to fix issues on Steam Deck.
* Linux/CMake: also install the Mods and SoundFonts folders.
* Linux/Paths: look for support data in the executable directory too.
* CMake: gitVersion: do nothing if Git is not available.
* Linux: name executable “theforceengine”
* Add comments categorizing keywords and noting those which are not implemented.
Video