On Saturday 10 March 2012, Dr.Leo wrote:
> thanks. As MinGW does the trick, I am not so keen to recompile it on
> MSVC9. I just wanted to share a potential problem. But I realise that
> the main problem is in my head rather than in fluidsynth's repository. I
> understand that you don't want to officially release windows binaries
> for the reasons you mention. But I think it would still be useful. If I
> had a website I would probably do it myself, well I have a project on
> Google code, but this is unrelated to music.
> 
> I've tried the -F option. A .raw file is created but I cannot play it.
> SoX reports an error as the sampling rate is not specified. I guess this
> is a feature, not a bug. 

A "raw" file means that it has no file header indicating the sample rate or 
format. You can choose the desired sample rate and sample format in the 
command line , like this:

fluidsynth -r 44100 -O s16 -F output.raw ...

Which are the defaults, by the way. You can try "-O help" to see the available 
sample formats, but 's16' is the only option without libsndfile support. Means 
16 bits signed. Another default is stereo, (=2 audio channels).

With the above data you can comfortably build a sox command line:

sox -r 44100 -e signed -b 16 -c 2 output.raw output.wav

> Still I want to use sndfile, but I don't know
> how.  The docs are tacit on this. There is a Windows binary of sndfile
> alongside with the tarball. I tried to compile the tarball successfully.
> but I don't know how to include it in FluidSynth. I thought I'd just
> copy sndfile.h in FluidSynth's include dir and the dll and def files of
> libfluidsynth in the MinGW lib dir. I know this is very basic and should 
> not be on this list. So I would also appreciate any link to a concise 
> recipe on compiling multiple libraries etc. but my only goal so far is 
> to create wav from midi.
> 
> 
> Any further tips?

To build FluidSynth with sndfile, download and install the package as usual, 
into "C:\Program Files", from the 32 bits package:
http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25-w32-setup.exe

Now, open in the windows explorer the directory "C:\Program Files\Mega-
Nerd\libsndfile" and select/copy the directories bin\, lib\ and include\. 
Paste the three directories into your C:\freesw folder (or whatever name you 
have chosen for the directory containing glib/pkg-config), merging them with 
the previous content. Now, you need to edit the file 
"C:\freesw\lib\pkgconfig\sndfile.pc", because its library name does not match 
the distributed windows DLL. I've attached mine, but the two affected lines 
are:

Name: libsndfile-1
Libs: -L${libdir} -llibsndfile-1

After this, you need to execute cmake again, with enable-libsndfile=1. Hope 
this helps. 

Regards,
Pedro
prefix=c:/devel/target/libsndfile
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: libsndfile-1
Description: A library for reading and writing audio files
Requires: 
Version: 1.0.25
Libs: -L${libdir} -llibsndfile-1
Libs.private: Ext/libflac.la Ext/libvorbis.la Ext/libogg.la
Cflags: -I${includedir} 
_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev

Reply via email to