Commit graph

1718 commits

Author SHA1 Message Date
Tom M
c0ff5a0af1
Optimize Travis and AppVeyor CI builds (#451)
* cleanup unneeded compiler variations (now builds in 7 min rather than 13 min)
* Windows:
  * use VS2017 for vcpkg, VS2015 for manual build
* Linux:
  * install alsa, jack, pulse, portaudio, ladspa, libsndfile for all builds
* MacOSX: 
  * use AppleClang
  * reorder macosx build in between linux build, as macosx usually takes longer to build, allowing to make better use of build time (via pipelining)
  * switch to XCode10, enabling TravisCI to support CoreAudio and CoreMidi
2018-10-28 16:29:15 +01:00
derselbst
3d94d01225 clang-tidy: remove annoying readability-inconsistent-declaration-parameter-name 2018-10-28 14:21:36 +01:00
Tom M
804cbf91c9
Merge pull request #449 from carlo-bramini/win-driver-selection
let cmake find WinMidi and DSound
2018-10-27 20:26:18 +02:00
derselbst
e4ab5067f1 fix linker error on win32 without network support
by adding missing #ifdefs
2018-10-27 16:32:54 +02:00
carlo-bramini
e298fefd7f cleanup audio and midi driver instantiation (#448)
Instead of saving the name of the driver, it would be worth to save to pointer to the selected definition instead.
In this way, the function for deleting the driver does not need to search its name by parsing all the list, but it just needs to call the pointer into the saved definition (less code). This fix can be applied to MIDI drivers too. 
I also moved the FLUID_FREE(allnames) inside the "if(allnames != NULL)" block, nothing bad should happen even by keeping that instruction outside, but actually there is no need to call the free if allnames is NULL.
2018-10-27 16:22:44 +02:00
carlo-bramini
a1affca2ca
Use "enable-network" instead of NETWORK_SUPPORT 2018-10-27 10:11:28 +02:00
carlo-bramini
02d7ab6939
Fix "-mms-bitfields" option. 2018-10-26 19:49:27 +02:00
carlo-bramini
2ffad4dd2c
Add options for Windows drivers 2018-10-26 19:48:01 +02:00
carlo-bramini
30886a3d78
Remove handwritten macros 2018-10-26 19:44:27 +02:00
carlo-bramini
413bcbeb84
Add Windows driver support macro. 2018-10-26 19:43:27 +02:00
carlo-bramini
8ef6ac7dcc
Enable VersionInfo also for MINGW 2018-10-26 19:42:15 +02:00
carlo-bramini
7b6ebbea5b
Add Windows driver selection 2018-10-26 19:41:34 +02:00
carlo-bramini
f8c470d3f7
Don't use an MFC include. 2018-10-26 19:38:04 +02:00
carlo-bramini
4f75973f88
Print status of Windows drivers 2018-10-26 19:35:50 +02:00
carlo-bramini
f3afe61b6a
Merge pull request #2 from FluidSynth/master
Sync to master
2018-10-23 21:02:14 +02:00
Tom M
121ed7124e
Merge pull request #447 from FluidSynth/zero-size-arr
Fix build when no audio drivers are supported
2018-10-23 17:41:35 +02:00
derselbst
e03e2edf8d register settings before adding options 2018-10-23 17:07:34 +02:00
derselbst
f6e70b38c7 clarify log message when no MIDI drivers are available 2018-10-21 20:26:46 +02:00
derselbst
327b3fb45b clarify log message when no audio drivers are available 2018-10-21 20:21:21 +02:00
carlo-bramini
a7c5b66872 Simplify MIDI driver installation 2018-10-21 13:35:41 +02:00
carlo-bramini
70f4551e90 Simplify audio driver installation
In my opionion, it should be possible to simplify the code by installing the drivers with a for() cycle instead of doing tons of #ifdef...#endif.
The size of the binary code is basically the same as before, but the source lines are much less. I think that it could be done also for MIDI input drivers.
2018-10-21 13:35:32 +02:00
carlo-bramini
326c20c0e3 Remove duplicated init_dither() declaration (#446) 2018-10-20 20:06:38 +02:00
derselbst
670cdf1e8f conditionally compile fluid_aufile.c 2018-10-20 15:15:43 +02:00
derselbst
08b5333398 remove macro workaround when no midi drivers are supported 2018-10-20 15:05:18 +02:00
derselbst
5bd07c120c fix build when no audio drivers are supported 2018-10-20 15:04:55 +02:00
carlo-bramini
dc15ace53a
Merge pull request #1 from FluidSynth/master
Consistently use FLUID_LOG macro (#443)
2018-10-20 11:24:34 +02:00
carlo-bramini
ebc177f48f Consistently use FLUID_LOG macro (#443) 2018-10-16 18:02:27 +02:00
derselbst
7517c17524 Revert "make fluid_log() thread safe"
This reverts commit d25cdae17c.
Mistakenly committed too early on the wrong branch.
2018-10-12 09:24:07 +02:00
derselbst
2b563071f6 initialize logging at compile time 2018-10-09 18:11:37 +02:00
derselbst
d25cdae17c make fluid_log() thread safe
by using a local buffer rather than global one, intentionally breaks
fluid_synth_error()
2018-10-09 18:00:19 +02:00
jjceresa
8178d72d82 fix typos and grammar in FluidPolyMono-0004.pdf (#440) 2018-10-09 14:57:17 +02:00
derselbst
0f11c9a0da bump to 2.0.1 2018-10-07 14:47:07 +02:00
derselbst
450250e019 travis: remove gcc49 and clang39, add clang6 and clang7 2018-10-07 14:25:08 +02:00
derselbst
c93fdd4b10 avoid chorus depth from spamming the console
on any chorus setting, if the previous depth was out of range
2018-10-07 13:15:05 +02:00
derselbst
0920db6d1f abort 'set' shell command if param not found 2018-10-07 12:56:18 +02:00
derselbst
ce57220d65 dont cast const qualifier away 2018-10-06 14:27:10 +02:00
derselbst
3a0640d633 bump manpage date 2018-10-06 13:51:40 +02:00
carlo-bramini
f74f415a69 Avoid duplication of fluid_chorus_sine() call.
Closes #439.
2018-10-06 12:05:10 +02:00
Tom M
b768ad6d14
Merge pull request #437 from FluidSynth/null-fixes
NULL derefs and mem leaks in soundfont loader
2018-10-06 11:55:11 +02:00
derselbst
3ef6af5ade Merge branch 'recent-docs' 2018-10-06 11:45:18 +02:00
derselbst
3d528a0f05 revise deprecated reverb/chorus commands in man page 2018-10-05 18:40:15 +02:00
derselbst
fd7db023dd set upper chorus depth to 256 ms
upper depth limit (ms) = (MAX_SAMPLES * 1000) / lower sample rate limit

with MAX_SAMPLES==2048 && lowersrate==8000
2018-10-05 18:39:54 +02:00
derselbst
f972fbf1ec remove experimental hint from fluid_synth_set_sample_rate() 2018-10-05 18:12:31 +02:00
derselbst
0fb62e4184 fix lower limit of synth.sample-rate in docs 2018-10-05 18:12:27 +02:00
derselbst
57ef2dfed8 fix memory leaks in load_phdr() and load_ihdr() 2018-10-02 20:20:22 +02:00
derselbst
7f2d655b9c fix various NULL derefs in fluid_sffile 2018-10-02 20:14:56 +02:00
derselbst
b31afd65a5 fix NULL deref in new_fluid_hashtable_full() 2018-10-02 19:33:50 +02:00
carlo-bramini
6f8a574e36 Various fixes to dsound driver (#435)
- fluid_dsound_audio_run() and fluid_win32_error() are now static functions.

- WAVEFORMATEX is not required by DirectSound during the playback. We do not need it anymore after calling ::SetFormat(), so allocating this structure dynamically inside driver structure is useless.

- Implemented support for float sample type.

- Uses an event object for handling the end of thread, it allows to combine the quit event with the later wait in milliseconds in a single block.

- Calculates the amount of milliseconds to sleep rather than sleeping always for one millisecond.

- Fix an error into a FLUID_LOG() call.

- Fix handle leak of the thread, now it is correctly closed with CloseHandle().

- ExitThread() is a nonsense in that position, since the thread is already exiting.

- Fix error when compiling with WSDK 8.1, by defining NOBITMAP, in case NOGDI macro added somewhere
2018-09-29 10:08:34 +02:00
derselbst
923f5f3544 update API doc of delete_fluid_sequencer() 2018-09-21 19:00:28 +02:00
Tom M
fb684aa5d8
Merge pull request #434 from rncbc/jack_driver-last_client-reuse-fix
jack_driver: last_client reuse fix.
2018-09-20 20:20:55 +02:00