Well, I figured it'd be possible to use part of FluidSynth's source code for this task, and not writing all code from scratch. Of course it wouldn't be as easy as a soundfont library, but the code's there nonetheless.fred02 wrote:I will try to continue with my cooking analogy. Just because you know and have all the ingredients does not makes you chef. You have to know when and how to mix the ingredients (play notes), and that what these programs do, and each programmer uses a slightly different way, just as each chef do.
On a more technical side, SoundFont 2.* specification is actually quite complex and some parts are not trivial to implement. This is why there not so many programs around.
Built-in soundfont support for MIDI?
Moderator: Moderator Team
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
Re: Built-in soundfont support for MIDI?
Indeed, but then you have the main problem: somebody has to do it. And currently developers already have their hands full. But if you want to try nobody will stop you. You may even get some helpful suggestions, if asked politely. And you don't have to wait for ROS sound subsystem to stabilise: write it for windows, and once it is finished it should "just work" in ROS, then you will have gratitude of both windows and ROS community + all music lovers around the world.Nintendo Maniac 64 wrote: Well, I figured it'd be possible to use part of FluidSynth's source code for this task, and not writing all code from scratch. Of course it wouldn't be as easy as a soundfont library, but the code's there nonetheless.
Recently, there appeared a thread on the Russian forum (google translation), where somebody suggested a procedural synthesizer which is released under Artistic License 2.0.
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
fred02, I definitely would if I could, but alas not only can I not code, but I do not LIKE to code. >_< Therefore, I figured it'd be better to share my thoughts than to just sit here in dreamland.
Re: Built-in soundfont support for MIDI?
You can still help ROS , translations and testing are the first to come in mind.Nintendo Maniac 64 wrote:fred02, I definitely would if I could, but alas not only can I not code, but I do not LIKE to code. >_< Therefore, I figured it'd be better to share my thoughts than to just sit here in dreamland.
hto: Interesting stuff, indeed, and since it is formula based it should be compact, unlike the fm-wavetable simulations I saw. It will be nice if somebody could wrap a driver around it.
-
- Posts: 129
- Joined: Sun Feb 26, 2006 5:33 am
Re: Built-in soundfont support for MIDI?
FluidSynth I believe could be compiled as a DLL and then used as the basis of the synth engine. A tiny soundfont bank could be included to have default support for MIDI synth.fred02 wrote:You can still help ROS , translations and testing are the first to come in mind.Nintendo Maniac 64 wrote:fred02, I definitely would if I could, but alas not only can I not code, but I do not LIKE to code. >_< Therefore, I figured it'd be better to share my thoughts than to just sit here in dreamland.
hto: Interesting stuff, indeed, and since it is formula based it should be compact, unlike the fm-wavetable simulations I saw. It will be nice if somebody could wrap a driver around it.
Additionally, MIDI is also used in many older games, and this is generally passed through to the OS as a MIDI signal. Some have an internal MIDI processing system, but the ones I have used do not.
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
THIS. In theory it would be easier to implement AND give better results since it'd be fully compatible with larger high quality soundfonts - that's a win-win in my book.Pharaoh_Atem wrote:FluidSynth I believe could be compiled as a DLL and then used as the basis of the synth engine. A tiny soundfont bank could be included to have default support for MIDI synth.
For small filesize soundfonts, here's a discussion thread about just that (most are in the lower single digit MBs):
http://www.un4seen.com/forum/?topic=8801.0
And I've been dying to say this at some point, I know your username's a Yu-Gi-Oh reference.
Last edited by Nintendo Maniac 64 on Thu Oct 22, 2009 5:05 am, edited 1 time in total.
-
- Posts: 129
- Joined: Sun Feb 26, 2006 5:33 am
Re: Built-in soundfont support for MIDI?
Yep, FluidSynth can actually be compiled as a DLL for use as a MIDI engine. Mario Paint Composer by UnFun Games uses it, along with a very light soundfont. So, during the implementation of the audio engine in ReactOS, FluidSynth could be used to help make the MIDI engine in ReactOS. Users would be able to switch soundfonts and such through the control panel in the MIDI options in the Sound panel.Nintendo Maniac 64 wrote:THIS. In theory it would be easier to implement AND give better results since it'd be fully compatible with larger high quality soundfonts - that's a win-win in my book.Pharaoh_Atem wrote:FluidSynth I believe could be compiled as a DLL and then used as the basis of the synth engine. A tiny soundfont bank could be included to have default support for MIDI synth.
For small basic soundfonts, here's a discussion thread with various small soundfonts (lower single digit MBs):
http://www.un4seen.com/forum/?topic=8801.0
And I've been dying to say this at some point, I know your username's a Yu-Gi-Oh reference.
Meheheh... So.. someone noticed where my username came from... Without the avatar...
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
You're right, I just discovered that the MIDI plugin for foobar2000 uses FluidSynth as one of two MIDI backends, which also means it can use SoundFonts.
On a somewhat related yet off-topic subject...
LAWL, you have got to see this. While it doesn't support soundfonts, it's a MIDI driver for the Yamaha S-YXG50 for XP, but is COMPLETELY IN SOFTWARE. This basically gives you an emulated soundcard with decent MIDI that supports XG too, and it's free from Microsoft nonetheless XD.
I have got to try to see if this works in ReactOS for lulz
Driver download:
http://download.windowsupdate.com/msdow ... 403848.cab
Installation instructions (don't know if you can follow these exactly for ReactOS):
http://www.vgmusic.com/phpBB3/viewtopic ... 19#p109619
On a somewhat related yet off-topic subject...
LAWL, you have got to see this. While it doesn't support soundfonts, it's a MIDI driver for the Yamaha S-YXG50 for XP, but is COMPLETELY IN SOFTWARE. This basically gives you an emulated soundcard with decent MIDI that supports XG too, and it's free from Microsoft nonetheless XD.
I have got to try to see if this works in ReactOS for lulz
Driver download:
http://download.windowsupdate.com/msdow ... 403848.cab
Installation instructions (don't know if you can follow these exactly for ReactOS):
http://www.vgmusic.com/phpBB3/viewtopic ... 19#p109619
Re: Built-in soundfont support for MIDI?
TiMidity++/TiMidity++ Windows Synthesizer/libTiMidity instead.Nintendo Maniac 64 wrote:On a somewhat related yet off-topic subject...
it's a MIDI driver for the Yamaha S-YXG50 for XP, but is COMPLETELY IN SOFTWARE. This basically gives you an emulated soundcard with decent MIDI that supports XG too, and it's free from Microsoft nonetheless XD.
»Forward Agency NPO
In progress we (always) trust.
In progress we (always) trust.
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
^^That would've been nice to know earlier... though having soundfont support built-in to ReactOS would still work better not to mention give more exposure to the fact that MIDI can actually sound good.
EDIT: ...uh, I haven't a clue how to get soundfonts working on that. We REALLY could use built-in soundfont support then. Also FluidSynth is supposedly better at soundfonts and supports higher quality audio output. (the max for TiMiDy++ is 24bit and 48KHz while FluidSynth can do 32bit and 96KHz).
EDIT: ...uh, I haven't a clue how to get soundfonts working on that. We REALLY could use built-in soundfont support then. Also FluidSynth is supposedly better at soundfonts and supports higher quality audio output. (the max for TiMiDy++ is 24bit and 48KHz while FluidSynth can do 32bit and 96KHz).
-
- Posts: 129
- Joined: Sun Feb 26, 2006 5:33 am
Re: Built-in soundfont support for MIDI?
FluidSynth is much better at using soundfonts over Timidity. Timidity's soundfont engine sometimes scrambles the order of instruments, so strange things come out of the speakers when it is being played. Plus, Timidity hasn't been updated in five years, so it's definitely not 64-bit ready on the Windows platform.Nintendo Maniac 64 wrote:^^That would've been nice to know earlier... though having soundfont support built-in to ReactOS would still work better not to mention give more exposure to the fact that MIDI can actually sound good.
EDIT: ...uh, I haven't a clue how to get soundfonts working on that. We REALLY could use built-in soundfont support then. Also FluidSynth is supposedly better at soundfonts and supports higher quality audio output. (the max for TiMiDy++ is 24bit and 48KHz while FluidSynth can do 32bit and 96KHz).
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
Well, now that we know this would be possible through FluidSynth, not to mention it'd be useful for making MIDI work at all in conjunction with a small soundfont, maybe it'd be about time to make a topic in the Feedback & Suggestions forum in the form of a more organized post?
EDIT: Oh wait, we should find and choose a specific small soundfont first that'll be good for all-around use. I personally like the following two:
AweROMGM is 1MB and about the same quality as the "Microsoft GS Wavetable SW Synth" in Windows. Unfortunately this one looks to be ripped from a commercial soundcard, that's no good!
CT4MGM is 4MB with a bit to somewhat better sound quality than the "Microsoft GS Wavetable SW Synth". This one MAY be legal to include since according to the webpage most soundcards come with it, implying that it's somewhat of a standard. Will need to research it more...
EDIT 2: Just thought of another issue we'll have to figure out somehow - MIDI playback quality. Sure you could just set it to 44.1KHz 16bit since nearly ANYTHING within the last 15-20 years can play that, but what about taking advantage of FluidSynth's 96KHz and 24/32bit support? The only two ways I can think is for there to either be an option for playback quality, or for there to be something in the OS that states what the highest-compatible samplerate and bitdepth are (I'd imagine there's something in the soundcard drivers that already deal with this).
EDIT: Oh wait, we should find and choose a specific small soundfont first that'll be good for all-around use. I personally like the following two:
AweROMGM is 1MB and about the same quality as the "Microsoft GS Wavetable SW Synth" in Windows. Unfortunately this one looks to be ripped from a commercial soundcard, that's no good!
CT4MGM is 4MB with a bit to somewhat better sound quality than the "Microsoft GS Wavetable SW Synth". This one MAY be legal to include since according to the webpage most soundcards come with it, implying that it's somewhat of a standard. Will need to research it more...
EDIT 2: Just thought of another issue we'll have to figure out somehow - MIDI playback quality. Sure you could just set it to 44.1KHz 16bit since nearly ANYTHING within the last 15-20 years can play that, but what about taking advantage of FluidSynth's 96KHz and 24/32bit support? The only two ways I can think is for there to either be an option for playback quality, or for there to be something in the OS that states what the highest-compatible samplerate and bitdepth are (I'd imagine there's something in the soundcard drivers that already deal with this).
-
- Posts: 129
- Joined: Sun Feb 26, 2006 5:33 am
Re: Built-in soundfont support for MIDI?
I believe usually the sound card drivers take care of this aspect because they have to when working with the built in MIDI engine in Windows.Nintendo Maniac 64 wrote:Well, now that we know this would be possible through FluidSynth, not to mention it'd be useful for making MIDI work at all in conjunction with a small soundfont, maybe it'd be about time to make a topic in the Feedback & Suggestions forum in the form of a more organized post?
EDIT: Oh wait, we should find and choose a specific small soundfont first that'll be good for all-around use. I personally like the following two:
AweROMGM is 1MB and about the same quality as the "Microsoft GS Wavetable SW Synth" in Windows. Unfortunately this one looks to be ripped from a commercial soundcard, that's no good!
CT4MGM is 4MB with a bit to somewhat better sound quality than the "Microsoft GS Wavetable SW Synth". This one MAY be legal to include since according to the webpage most soundcards come with it, implying that it's somewhat of a standard. Will need to research it more...
EDIT 2: Just thought of another issue we'll have to figure out somehow - MIDI playback quality. Sure you could just set it to 44.1KHz 16bit since nearly ANYTHING within the last 15-20 years can play that, but what about taking advantage of FluidSynth's 96KHz and 24/32bit support? The only two ways I can think is for there to either be an option for playback quality, or for there to be something in the OS that states what the highest-compatible samplerate and bitdepth are (I'd imagine there's something in the soundcard drivers already that deal with this).
A site call freepats.org has FOSS soundfonts. Remember that soundfonts can be downsized from their humongous size by pulling out unneeded instruments.
Anyway, here it is a repository of soundfonts (not much though)
Additionally, this site offers a prebuilt version of Timidity on Windows (very old, but it DOES work). The important thing there is not the application though. It's the GM 6MB soundfont that was made by him and released as part of the Timidity package, giving it acceptable conditions for use in ReactOS, even if it is used outside of Timidity, since Timidity is a GPL package.
The soundfont is called TimGM6mb.sf2
The soundfont is of decent quality, so I think it would work.
-
- Posts: 234
- Joined: Sun Sep 17, 2006 3:08 am
- Location: Northeast Ohio, USA
Re: Built-in soundfont support for MIDI?
Just tried it out on several "more advanced" MIDIs that some not-so-perfect soundfonts incorrectly play back and it worked great! That definitely fits the bill.
EDIT: I've made the topic here:
http://www.reactos.org/forum/viewtopic.php?f=14&t=7608
EDIT: I've made the topic here:
http://www.reactos.org/forum/viewtopic.php?f=14&t=7608
Who is online
Users browsing this forum: Bing [Bot] and 65 guests