fluidsynth for windows port

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Cyphox
Posts: 73
Joined: Wed Jan 02, 2008 8:38 pm
Location: Germany

Post by Cyphox »

cooool, i'll give it a try when i'm home.

if it works, i think it's the best solution for using soundfonts and should be implemented in all future versions of scummvm :P

so you just have to choose "fluidsynth" in audio and point to the soundfont in midi-options? :?:

would be great :!:
mac_es
Posts: 145
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es »

That's it: audio driver: fluidsynth and select the soundfont.

FYI, I have tested the dll uploaded by svarnifyer and it works.
Cyphox
Posts: 73
Joined: Wed Jan 02, 2008 8:38 pm
Location: Germany

Post by Cyphox »

hmmmm..... it works fine, but it sounds different :shock:

some instruments are louder/quieter than with timidiy++ and i think timidity++ uses some kind of nice reverb-effect which fluidsynth doesn't :?:

Timidiy++ = http://rapidshare.com/files/102298358/t ... _.ogg.html

fluidsynth = http://rapidshare.com/files/102299021/f ... h.ogg.html

please don't missunderstand me, you've done a great job, but perhaps it's possible to configure fluidsynth somehow? :)

i used the same soundfont of course
mac_es
Posts: 145
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es »

First, I haven't done anythinng. I have just compiled it whith the library, nothing else.

For the configuration, take a look into:

Code: Select all

http://qsynth.sourceforge.net/qsynth-index.html
http://fluidgui.sourceforge.net/
http://fluidsynth.resonance.org/trac
I haven't readed it, but it seems that you can configure it.

But I'm not sure if you can do it via a config file or something like that... I think that it should be configure from inside ScummVM
Cyphox
Posts: 73
Joined: Wed Jan 02, 2008 8:38 pm
Location: Germany

Post by Cyphox »

alriiight, i'll have a look. thx
mac_es
Posts: 145
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es »

Hi,

You are right there are some configuration flags

I have looked the fluidsynth code in ScummVM, and in sound\softsynth\fluidsynth.cpp we can configure it.


This is the related code to volume

Code: Select all

// The default gain setting is ridiculously low - at least 
//for me. This cannot be fixed by ScummVM's volume settings 
//because they can only soften the sound, not amplify it, so 
//instead we add an option to adjust the gain of FluidSynth 
//itself.

double gain = (double)ConfMan.getInt("midi_gain") / 100.0;
So you will need to define a midi_gain in your scummvm.ini for trying to normalize the volume.

If you want, look how is configured Timidity and I can compile a version whith:


reverb on:

Code: Select all

which parameters? (in brackets the default values)
roomsize [0,2], damping [0.0], width [0.5], level [0.9]
chorus?:

Code: Select all

which parameters? (in brackets the default values)
number [3], level [2.0], speed [0.3], depth [8.0], type [SINE]

In type we can choose SINE or TRIANGLE
interpolation mode?

Code: Select all

We can use :

NONE, LINEAR, 4THORDER, 7THORDER

The default one is 4THORDER
cu.
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3525
Joined: Mon Oct 31, 2005 7:39 am

Post by eriktorbjorn »

mac_es wrote: So you will need to define a midi_gain in your scummvm.ini for trying to normalize the volume.
Or you can use ScummVM's own options dialog to set it.
Cyphox
Posts: 73
Joined: Wed Jan 02, 2008 8:38 pm
Location: Germany

Post by Cyphox »

eriktorbjorn wrote:
mac_es wrote: So you will need to define a midi_gain in your scummvm.ini for trying to normalize the volume.
Or you can use ScummVM's own options dialog to set it.
already did, with timidity i set midi-gain to 10, with fluidsynth is waaaaay to loud... 5 is an acceptable setting...

with 10 the bass will almost blow your speakers :shock:
Lostech
Posts: 157
Joined: Fri May 04, 2007 8:42 am
Contact:

Post by Lostech »

svarnifyer wrote:I managed to compile ScummVM for Windows with my VisualStudio2005, but how do I make it to in clude the fluidsynth_lib.lib or the .dll? And after compiling, what files are needed? I guess there is no need to upload the .obj-Files?

PS: I set the flag "USING_FLUIDSYNTH" and added correct paths to the project for including fluidsynth.h and fluidsynth_lib.lib, but I get "unresolved symbol"-errors for
__imp__new_fluid_synth
and 14 other functions. Someone want's to help? I'll upload the working ScummVM with included fluidsynth for windows then :)
I have the same problem but also under MinGW I can´t compile ScummVM against Fluidsynth.
mac_es
Posts: 145
Joined: Mon Oct 31, 2005 9:37 am

Post by mac_es »

You should build it against ver 1.0.0 or modify the source of ScummVM
Lostech
Posts: 157
Joined: Fri May 04, 2007 8:42 am
Contact:

Post by Lostech »

Yeah, you´re right :P
I tried the version 1.03 and a self-compiled version SVN/1.0.8 of fluidsynth and both didn´t link. But version 1.0 does link without problems.
THX for the hint :)

[edit]
Just for information: it compiles also fine with the actual SVN version of ScummVM
[/edit]
Post Reply