Comments (8)
In case it helps, GZDoom is an example of a project that integrates libADL alongside several other music playback options: https://github.com/coelckers/gzdoom/tree/master/src/sound
from systemshock.
I've been playing around a bit with this and have it playing the Midi music over at https://github.com/Interrupt/systemshock/tree/adlmidi
It sounds amazing in some places, and not so great in others. There's also some basic XMI midi support in there which kinda plays the SS XMI files, but it plays all the tracks at the same time so it's just a wall of noise right now with those files.
from systemshock.
I dunno about using a soundblaster soundfont but the soundtrack with a Roland SC-55 sounds great
https://www.youtube.com/watch?v=O3fWoGwnTG0
I use fluidsynth to get this sound when i play Doom in Gzdoom.
from systemshock.
LibADL isn't a soundfont, it's an entirely different kind of synth for playing music. The sounds characteristic of FM synthesis can't be replicated with a soundfont.
As for getting the (totally unrelated to FM synth) SC-55 sound, there are a couple of soundfonts out there that apparently do a good but not perfect job. Currently Shockolate uses SDL2_mixer to play MIDI via whatever is available on the system, and it's probably possible to point that towards an SC55 like soundfont.
from systemshock.
Modern midi support really can destroy the soundtrack, the Soundblaster version sounds so much more like the electronica it was trying to replicate: https://www.youtube.com/watch?v=dcOVe2rX_80
It's worth a shot playing midi through something like this to see how it sounds once we've got the XMI soundtrack working again.
from systemshock.
The XMI support in adlmidi has been getting better with some recent commits so I've been using that as a base to unearth the layered XMI track playback along with the Music AI system that controls all of this. This work is on branch https://github.com/Interrupt/systemshock/tree/adlmidi-xmi
It seems to be sequencing the tracks correctly now in my proof of concept but libAdlMidi seems to either be playing the file for too long before looping, or there's some loop points in the XMI files that aren't being handled properly since there's a long period of silence at the end of the music snippets.
from systemshock.
Have been taking another stab at this: #163
from systemshock.
This is in now, for the most part.
from systemshock.
Related Issues (20)
- Problems with MIDI music
- Digital speech is broken on Raspberry Pi 4 / retropie build HOT 1
- Mouse speed + double click annoyance in Linux HOT 1
- How compile ? HOT 2
- Game controller support
- The hacker's jump is feeble
- install_sdl.sh unexpected behavior (deleted dependency from Doom64)
- [Question] source port clarification
- Won't use LibSDL2 Mixer
- Errors with make systemshock HOT 4
- Game does not build whatsoever? Running on Linux Mint HOT 1
- Being able to fast doubleclick while SHIFT quicklooting containers causes the quickloot to fail sometimes
- Shift quickpick an item will force equip it/force show its infoscreen
- Double use clicking a junk item in the inventory will grab the item
- Feature request: SS2-like UI interactions
- Ability to change sprint key + Bind shift key to other binds
- Mouse not locked to window (Linux) HOT 1
- Feature request: FOV modifier
- trying to build on windows 10 HOT 1
- Cmake error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from systemshock.