Amend previous commit, fluidsynth tables
[ardour.git] / tools / fluid-patches / ardour_fluidsynth.diff
1 diff --git b/libs/fluidsynth/fluidsynth/synth.h a/libs/fluidsynth/fluidsynth/synth.h
2 index f4802ee5b9..3003972542 100644
3 --- b/libs/fluidsynth/fluidsynth/synth.h
4 +++ a/libs/fluidsynth/fluidsynth/synth.h
5 @@ -176,7 +176,7 @@ FLUIDSYNTH_API int fluid_synth_count_effects_groups(fluid_synth_t *synth);
6  
7  /* Synthesis parameters */
8  
9 -FLUID_DEPRECATED FLUIDSYNTH_API void fluid_synth_set_sample_rate(fluid_synth_t *synth, float sample_rate);
10 +FLUIDSYNTH_API void fluid_synth_set_sample_rate(fluid_synth_t *synth, float sample_rate);
11  FLUIDSYNTH_API void fluid_synth_set_gain(fluid_synth_t *synth, float gain);
12  FLUIDSYNTH_API float fluid_synth_get_gain(fluid_synth_t *synth);
13  FLUIDSYNTH_API int fluid_synth_set_polyphony(fluid_synth_t *synth, int polyphony);
14 @@ -233,7 +233,7 @@ FLUIDSYNTH_API int fluid_synth_tuning_dump(fluid_synth_t *synth, int bank, int p
15  /* Misc */
16  
17  FLUIDSYNTH_API double fluid_synth_get_cpu_load(fluid_synth_t *synth);
18 -FLUID_DEPRECATED FLUIDSYNTH_API const char *fluid_synth_error(fluid_synth_t *synth);
19 +const char *fluid_synth_error(fluid_synth_t *synth);
20  
21  
22  /* Default modulators */
23 @@ -265,7 +265,7 @@ FLUIDSYNTH_API int fluid_synth_write_s16(fluid_synth_t *synth, int len,
24  FLUIDSYNTH_API int fluid_synth_write_float(fluid_synth_t *synth, int len,
25          void *lout, int loff, int lincr,
26          void *rout, int roff, int rincr);
27 -FLUID_DEPRECATED FLUIDSYNTH_API int fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
28 +FLUIDSYNTH_API int fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
29          float **left, float **right,
30          float **fx_left, float **fx_right);
31  FLUIDSYNTH_API int fluid_synth_process(fluid_synth_t *synth, int len,
32 @@ -310,7 +310,9 @@ FLUIDSYNTH_API int fluid_synth_set_custom_filter(fluid_synth_t *, int type, int
33  
34  /* LADSPA */
35  
36 +#ifdef LADSPA
37  FLUIDSYNTH_API fluid_ladspa_fx_t *fluid_synth_get_ladspa_fx(fluid_synth_t *synth);
38 +#endif
39  
40  
41  /* API: Poly mono mode */
42 diff --git b/libs/fluidsynth/fluidsynth/types.h a/libs/fluidsynth/fluidsynth/types.h
43 index 47ef18336a..5ad29281ad 100644
44 --- b/libs/fluidsynth/fluidsynth/types.h
45 +++ a/libs/fluidsynth/fluidsynth/types.h
46 @@ -56,7 +56,9 @@ typedef struct _fluid_sequencer_t fluid_sequencer_t;            /**< Sequencer i
47  typedef struct _fluid_ramsfont_t fluid_ramsfont_t;              /**< RAM SoundFont */
48  typedef struct _fluid_rampreset_t fluid_rampreset_t;            /**< RAM SoundFont preset */
49  typedef struct _fluid_cmd_handler_t fluid_cmd_handler_t;        /**< Shell Command Handler */
50 +#ifdef LADSPA
51  typedef struct _fluid_ladspa_fx_t fluid_ladspa_fx_t;            /**< LADSPA effects instance */
52 +#endif
53  typedef struct _fluid_file_callbacks_t fluid_file_callbacks_t;  /**< Callback struct to perform custom file loading of soundfonts */
54  
55  typedef int fluid_istream_t;    /**< Input stream descriptor */
56 diff --git b/libs/fluidsynth/src/fluid_conv.h a/libs/fluidsynth/src/fluid_conv.h
57 index 60f441c49f..e6455186eb 100644
58 --- b/libs/fluidsynth/src/fluid_conv.h
59 +++ a/libs/fluidsynth/src/fluid_conv.h
60 @@ -22,7 +22,7 @@
61  #define _FLUID_CONV_H
62  
63  #include "fluidsynth_priv.h"
64 -#include "utils/fluid_conv_tables.h"
65 +#include "fluid_conv_tables.h"
66  
67  fluid_real_t fluid_ct2hz_real(fluid_real_t cents);
68  fluid_real_t fluid_ct2hz(fluid_real_t cents);
69 diff --git b/libs/fluidsynth/src/fluid_hash.c a/libs/fluidsynth/src/fluid_hash.c
70 index 946a873bbf..79f83a4583 100644
71 --- b/libs/fluidsynth/src/fluid_hash.c
72 +++ a/libs/fluidsynth/src/fluid_hash.c
73 @@ -991,6 +991,7 @@ fluid_hashtable_remove_all(fluid_hashtable_t *hashtable)
74      fluid_hashtable_maybe_resize(hashtable);
75  }
76  
77 +#if 0
78  /**
79   * fluid_hashtable_steal_all:
80   * @hashtable: a #fluid_hashtable_t.
81 @@ -1008,6 +1009,7 @@ fluid_hashtable_steal_all(fluid_hashtable_t *hashtable)
82      fluid_hashtable_remove_all_nodes(hashtable, FALSE);
83      fluid_hashtable_maybe_resize(hashtable);
84  }
85 +#endif
86  
87  /*
88   * fluid_hashtable_foreach_remove_or_steal:
89 diff --git b/libs/fluidsynth/src/fluid_midi.c a/libs/fluidsynth/src/fluid_midi.c
90 index ea1aff5202..844de01c8f 100644
91 --- b/libs/fluidsynth/src/fluid_midi.c
92 +++ a/libs/fluidsynth/src/fluid_midi.c
93 @@ -77,7 +77,7 @@ static int fluid_midi_file_read_tracklen(fluid_midi_file *mf);
94  static int fluid_midi_file_eot(fluid_midi_file *mf);
95  static int fluid_midi_file_get_division(fluid_midi_file *midifile);
96  
97 -
98 +#if 0 // disable file I/O with Ardour
99  /***************************************************************
100   *
101   *                      MIDIFILE
102 @@ -1048,6 +1048,7 @@ fluid_midi_file_get_division(fluid_midi_file *midifile)
103  {
104      return midifile->division;
105  }
106 +#endif
107  
108  /******************************************************
109   *
110 @@ -1414,7 +1415,7 @@ static void fluid_midi_event_get_sysex_LOCAL(fluid_midi_event_t *evt, void **dat
111   *
112   *     fluid_track_t
113   */
114 -
115 +#if 0 // disable fluid file player in Ardour
116  /*
117   * new_fluid_track
118   */
119 @@ -2504,3 +2505,4 @@ fluid_midi_event_length(unsigned char event)
120  
121      return 1;
122  }
123 +#endif
124 diff --git b/libs/fluidsynth/src/fluid_mod.c a/libs/fluidsynth/src/fluid_mod.c
125 index 47547b5b5e..57313caf42 100644
126 --- b/libs/fluidsynth/src/fluid_mod.c
127 +++ a/libs/fluidsynth/src/fluid_mod.c
128 @@ -603,7 +603,7 @@ fluid_mod_check_cc_source(const fluid_mod_t *mod, unsigned char src1_select)
129   * @param name,if not NULL, pointer on a string displayed as a warning.
130   * @return TRUE if modulator sources src1, src2 are valid, FALSE otherwise.
131   */
132 -int fluid_mod_check_sources(const fluid_mod_t *mod, char *name)
133 +int fluid_mod_check_sources(const fluid_mod_t *mod, const char *name)
134  {
135      static const char invalid_non_cc_src[] =
136          "Invalid modulator, using non-CC source %s.src%d=%d";
137 diff --git b/libs/fluidsynth/src/fluid_mod.h a/libs/fluidsynth/src/fluid_mod.h
138 index 3e7661741f..ec8e967a35 100644
139 --- b/libs/fluidsynth/src/fluid_mod.h
140 +++ a/libs/fluidsynth/src/fluid_mod.h
141 @@ -44,7 +44,7 @@ struct _fluid_mod_t
142  };
143  
144  fluid_real_t fluid_mod_get_value(fluid_mod_t *mod, fluid_voice_t *voice);
145 -int fluid_mod_check_sources(const fluid_mod_t *mod, char *name);
146 +int fluid_mod_check_sources(const fluid_mod_t *mod, const char *name);
147  
148  #ifdef DEBUG
149  void fluid_dump_modulator(fluid_mod_t *mod);
150 diff --git b/libs/fluidsynth/src/fluid_rvoice_mixer.c a/libs/fluidsynth/src/fluid_rvoice_mixer.c
151 index 257f0fbdec..d7fd2f541f 100644
152 --- b/libs/fluidsynth/src/fluid_rvoice_mixer.c
153 +++ a/libs/fluidsynth/src/fluid_rvoice_mixer.c
154 @@ -23,7 +23,6 @@
155  #include "fluid_sys.h"
156  #include "fluid_rev.h"
157  #include "fluid_chorus.h"
158 -#include "fluid_ladspa.h"
159  #include "fluid_synth.h"
160  
161  
162 diff --git b/libs/fluidsynth/src/fluid_rvoice_mixer.h a/libs/fluidsynth/src/fluid_rvoice_mixer.h
163 index 4ee072e4b9..1b3fceb342 100644
164 --- b/libs/fluidsynth/src/fluid_rvoice_mixer.h
165 +++ a/libs/fluidsynth/src/fluid_rvoice_mixer.h
166 @@ -24,7 +24,6 @@
167  
168  #include "fluidsynth_priv.h"
169  #include "fluid_rvoice.h"
170 -#include "fluid_ladspa.h"
171  
172  typedef struct _fluid_rvoice_mixer_t fluid_rvoice_mixer_t;
173  
174 diff --git b/libs/fluidsynth/src/fluid_settings.c a/libs/fluidsynth/src/fluid_settings.c
175 index 78532ad2a3..a825603a44 100644
176 --- b/libs/fluidsynth/src/fluid_settings.c
177 +++ a/libs/fluidsynth/src/fluid_settings.c
178 @@ -21,9 +21,6 @@
179  #include "fluid_sys.h"
180  #include "fluid_hash.h"
181  #include "fluid_synth.h"
182 -#include "fluid_cmd.h"
183 -#include "fluid_adriver.h"
184 -#include "fluid_mdriver.h"
185  #include "fluid_settings.h"
186  #include "fluid_midi.h"
187  
188 @@ -328,11 +325,13 @@ fluid_settings_init(fluid_settings_t *settings)
189      fluid_return_if_fail(settings != NULL);
190  
191      fluid_synth_settings(settings);
192 +#if 0
193      fluid_shell_settings(settings);
194      fluid_player_settings(settings);
195      fluid_file_renderer_settings(settings);
196      fluid_audio_driver_settings(settings);
197      fluid_midi_driver_settings(settings);
198 +#endif
199  }
200  
201  static int
202 diff --git b/libs/fluidsynth/src/fluid_synth.c a/libs/fluidsynth/src/fluid_synth.c
203 index e03c64089f..382979f7f5 100644
204 --- b/libs/fluidsynth/src/fluid_synth.c
205 +++ a/libs/fluidsynth/src/fluid_synth.c
206 @@ -25,7 +25,6 @@
207  #include "fluid_settings.h"
208  #include "fluid_sfont.h"
209  #include "fluid_defsfont.h"
210 -#include "fluid_instpatch.h"
211  
212  #ifdef TRAP_ON_FPE
213  #define _GNU_SOURCE
214 @@ -262,7 +261,7 @@ void fluid_version(int *major, int *minor, int *micro)
215   * @return FluidSynth version string, which is internal and should not be
216   *   modified or freed.
217   */
218 -char *
219 +const char *
220  fluid_version_str(void)
221  {
222      return FLUIDSYNTH_VERSION;
223 @@ -5558,7 +5557,7 @@ fluid_synth_set_interp_method(fluid_synth_t *synth, int chan, int interp_method)
224      }
225  
226      FLUID_API_RETURN(FLUID_OK);
227 -};
228 +}
229  
230  /**
231   * Get the total count of MIDI channels.
232 @@ -6496,6 +6495,7 @@ int fluid_synth_set_channel_type(fluid_synth_t *synth, int chan, int type)
233      FLUID_API_RETURN(FLUID_OK);
234  }
235  
236 +#ifdef LADSPA
237  /**
238   * Return the LADSPA effects instance used by FluidSynth
239   *
240 @@ -6508,6 +6508,7 @@ fluid_ladspa_fx_t *fluid_synth_get_ladspa_fx(fluid_synth_t *synth)
241  
242      return synth->ladspa_fx;
243  }
244 +#endif
245  
246  /**
247   * Configure a general-purpose IIR biquad filter.
248 diff --git b/libs/fluidsynth/src/fluid_synth.h a/libs/fluidsynth/src/fluid_synth.h
249 index b649bcf340..955b3fa12e 100644
250 --- b/libs/fluidsynth/src/fluid_synth.h
251 +++ a/libs/fluidsynth/src/fluid_synth.h
252 @@ -33,8 +33,6 @@
253  #include "fluid_rev.h"
254  #include "fluid_voice.h"
255  #include "fluid_chorus.h"
256 -#include "fluid_ladspa.h"
257 -#include "fluid_midi_router.h"
258  #include "fluid_rvoice_event.h"
259  
260  /***************************************************************
261 @@ -165,7 +163,9 @@ struct _fluid_synth_t
262  
263      fluid_mod_t *default_mod;          /**< the (dynamic) list of default modulators */
264  
265 +#ifdef LADSPA
266      fluid_ladspa_fx_t *ladspa_fx;      /**< Effects unit for LADSPA support */
267 +#endif
268      enum fluid_iir_filter_type custom_filter_type; /**< filter type of the user-defined filter currently used for all voices */
269      enum fluid_iir_filter_flags custom_filter_flags; /**< filter type of the user-defined filter currently used for all voices */
270  };
271 diff --git b/libs/fluidsynth/src/fluid_sys.c a/libs/fluidsynth/src/fluid_sys.c
272 index 7454217dd2..c6300b90c2 100644
273 --- b/libs/fluidsynth/src/fluid_sys.c
274 +++ a/libs/fluidsynth/src/fluid_sys.c
275 @@ -239,9 +239,10 @@ void fluid_free(void* ptr)
276   * @param delim String of delimiter chars.
277   * @return Pointer to the next token or NULL if no more tokens.
278   */
279 -char *fluid_strtok(char **str, char *delim)
280 +char *fluid_strtok(char **str, const char *delim)
281  {
282 -    char *s, *d, *token;
283 +    char *s,  *token;
284 +               const char *d;
285      char c;
286  
287      if(str == NULL || delim == NULL || !*delim)
288 diff --git b/libs/fluidsynth/src/fluid_sys.h a/libs/fluidsynth/src/fluid_sys.h
289 index 24df6edb5b..b747e5676a 100644
290 --- b/libs/fluidsynth/src/fluid_sys.h
291 +++ a/libs/fluidsynth/src/fluid_sys.h
292 @@ -130,8 +130,9 @@ typedef gintptr  intptr_t;
293  #endif
294  
295  #if defined(WIN32) &&  HAVE_WINDOWS_H
296 -#include <winsock2.h>
297 -#include <ws2tcpip.h>  /* Provides also socklen_t */
298 +//#include <winsock2.h>
299 +//#include <ws2tcpip.h>        /* Provides also socklen_t */
300 +#include <windows.h>
301  
302  /* WIN32 special defines */
303  #define STDIN_FILENO 0
304 @@ -193,7 +194,7 @@ typedef gintptr  intptr_t;
305  /*
306   * Utility functions
307   */
308 -char *fluid_strtok(char **str, char *delim);
309 +char *fluid_strtok(char **str, const char *delim);
310  
311  
312  #if defined(__OS2__)