Add some convenient public editor methods (for lua-bindings)
[ardour.git] / tools / ardour_fluidsynth.diff
1 diff --git b/libs/fluidsynth/src/fluid_defsfont.c a/libs/fluidsynth/src/fluid_defsfont.c
2 index 3eea95c..c395218 100644
3 --- b/libs/fluidsynth/src/fluid_defsfont.c
4 +++ a/libs/fluidsynth/src/fluid_defsfont.c
5 @@ -109,11 +109,13 @@ char* fluid_defsfont_sfont_get_name(fluid_sfont_t* sfont)
6    return fluid_defsfont_get_name((fluid_defsfont_t*) sfont->data);
7  }
8  
9 +#if 0
10  fluid_sample_t* fluid_defsfont_get_sample(fluid_defsfont_t* sfont, char *s)
11  {
12    /* This function is here just to avoid an ABI/SONAME bump, see ticket #98. Should never be used. */
13    return NULL;
14  }
15 +#endif
16  
17  fluid_preset_t*
18  fluid_defsfont_sfont_get_preset(fluid_sfont_t* sfont, unsigned int bank, unsigned int prenum)
19 diff --git b/libs/fluidsynth/src/fluid_hash.c a/libs/fluidsynth/src/fluid_hash.c
20 index a063e29..9d5a920 100644
21 --- b/libs/fluidsynth/src/fluid_hash.c
22 +++ a/libs/fluidsynth/src/fluid_hash.c
23 @@ -93,7 +93,7 @@ static const guint primes[] =
24  
25  static const unsigned int nprimes = sizeof (primes) / sizeof (primes[0]);
26  
27 -unsigned int
28 +static unsigned int
29  spaced_primes_closest (unsigned int num)
30  {
31    unsigned int i;
32 @@ -984,6 +984,7 @@ fluid_hashtable_foreach_remove_or_steal (fluid_hashtable_t *hashtable,
33    return deleted;
34  }
35  
36 +#if 0
37  /**
38   * fluid_hashtable_foreach_remove:
39   * @hashtable: a #fluid_hashtable_t.
40 @@ -1001,7 +1002,7 @@ fluid_hashtable_foreach_remove_or_steal (fluid_hashtable_t *hashtable,
41   *
42   * Return value: the number of key/value pairs removed.
43   **/
44 -unsigned int
45 +static unsigned int
46  fluid_hashtable_foreach_remove (fluid_hashtable_t *hashtable,
47                                  fluid_hr_func_t func, void *user_data)
48  {
49 @@ -1010,6 +1011,7 @@ fluid_hashtable_foreach_remove (fluid_hashtable_t *hashtable,
50  
51    return fluid_hashtable_foreach_remove_or_steal (hashtable, func, user_data, TRUE);
52  }
53 +#endif
54  
55  /**
56   * fluid_hashtable_foreach_steal:
57 diff --git b/libs/fluidsynth/src/fluid_midi.c a/libs/fluidsynth/src/fluid_midi.c
58 index 5ceab01..171952f 100644
59 --- b/libs/fluidsynth/src/fluid_midi.c
60 +++ a/libs/fluidsynth/src/fluid_midi.c
61 @@ -34,7 +34,7 @@ static int fluid_midi_event_length(unsigned char event);
62  static char* fluid_file_read_full(fluid_file fp, size_t* length);
63  #define READ_FULL_INITIAL_BUFLEN 1024
64  
65 -
66 +#if 0 // disable file I/O with Ardour
67  /***************************************************************
68   *
69   *                      MIDIFILE
70 @@ -760,6 +760,7 @@ fluid_midi_file_get_division(fluid_midi_file *midifile)
71  {
72      return midifile->division;
73  }
74 +#endif
75  
76  /******************************************************
77   *
78 @@ -1030,7 +1031,7 @@ fluid_midi_event_set_sysex(fluid_midi_event_t *evt, void *data, int size, int dy
79   *
80   *     fluid_track_t
81   */
82 -
83 +#if 0 // disable fluid file player in Ardour
84  /*
85   * new_fluid_track
86   */
87 @@ -1118,7 +1119,7 @@ fluid_track_get_duration(fluid_track_t *track)
88  /*
89   * fluid_track_count_events
90   */
91 -int
92 +static int
93  fluid_track_count_events(fluid_track_t *track, int *on, int *off)
94  {
95      fluid_midi_event_t *evt = track->first;
96 @@ -1533,7 +1534,7 @@ fluid_player_load(fluid_player_t *player, fluid_playlist_item *item)
97      return FLUID_OK;
98  }
99  
100 -void
101 +static void
102  fluid_player_advancefile(fluid_player_t *player)
103  {
104      if (player->playlist == NULL) {
105 @@ -1553,7 +1554,7 @@ fluid_player_advancefile(fluid_player_t *player)
106      }
107  }
108  
109 -void
110 +static void
111  fluid_player_playlist_load(fluid_player_t *player, unsigned int msec)
112  {
113      fluid_playlist_item* current_playitem;
114 @@ -1938,3 +1939,4 @@ fluid_midi_event_length(unsigned char event)
115      }
116      return 1;
117  }
118 +#endif
119 diff --git b/libs/fluidsynth/src/fluid_rev.c a/libs/fluidsynth/src/fluid_rev.c
120 index 51b0e79..166007d 100644
121 --- b/libs/fluidsynth/src/fluid_rev.c
122 +++ a/libs/fluidsynth/src/fluid_rev.c
123 @@ -75,7 +75,7 @@ void fluid_allpass_init(fluid_allpass* allpass);
124  void fluid_allpass_setfeedback(fluid_allpass* allpass, fluid_real_t val);
125  fluid_real_t fluid_allpass_getfeedback(fluid_allpass* allpass);
126  
127 -void
128 +static void
129  fluid_allpass_setbuffer(fluid_allpass* allpass, int size)
130  {
131    allpass->bufidx = 0;
132 @@ -83,7 +83,7 @@ fluid_allpass_setbuffer(fluid_allpass* allpass, int size)
133    allpass->bufsize = size;
134  }
135  
136 -void
137 +static void
138  fluid_allpass_release(fluid_allpass* allpass)
139  {
140    FLUID_FREE(allpass->buffer);
141 diff --git b/libs/fluidsynth/src/fluid_rvoice_mixer.c a/libs/fluidsynth/src/fluid_rvoice_mixer.c
142 index 4672cb8..d5369aa 100644
143 --- b/libs/fluidsynth/src/fluid_rvoice_mixer.c
144 +++ a/libs/fluidsynth/src/fluid_rvoice_mixer.c
145 @@ -24,12 +24,12 @@
146  #include "fluid_rev.h"
147  #include "fluid_chorus.h"
148  #include "fluidsynth_priv.h"
149 -#include "fluid_ladspa.h"
150 +//#include "fluid_ladspa.h"
151  
152  #define SYNTH_REVERB_CHANNEL 0
153  #define SYNTH_CHORUS_CHANNEL 1
154  
155 -#define ENABLE_MIXER_THREADS 1
156 +#undef ENABLE_MIXER_THREADS // Ardour does the multithreading -- synth.cpu-cores defaults to 1
157  
158  // If less than x voices, the thread overhead is larger than the gain,
159  // so don't activate the thread(s).
160 diff --git b/libs/fluidsynth/src/fluid_rvoice_mixer.h a/libs/fluidsynth/src/fluid_rvoice_mixer.h
161 index eeb49ec..d4e41ca 100644
162 --- b/libs/fluidsynth/src/fluid_rvoice_mixer.h
163 +++ a/libs/fluidsynth/src/fluid_rvoice_mixer.h
164 @@ -24,7 +24,7 @@
165  
166  #include "fluidsynth_priv.h"
167  #include "fluid_rvoice.h"
168 -#include "fluid_ladspa.h"
169 +//#include "fluid_ladspa.h"
170  
171  typedef struct _fluid_rvoice_mixer_t fluid_rvoice_mixer_t;
172  
173 diff --git b/libs/fluidsynth/src/fluid_settings.c a/libs/fluidsynth/src/fluid_settings.c
174 index 78725fb..56de8c7 100644
175 --- b/libs/fluidsynth/src/fluid_settings.c
176 +++ a/libs/fluidsynth/src/fluid_settings.c
177 @@ -22,9 +22,9 @@
178  #include "fluid_sys.h"
179  #include "fluid_hash.h"
180  #include "fluid_synth.h"
181 -#include "fluid_cmd.h"
182 -#include "fluid_adriver.h"
183 -#include "fluid_mdriver.h"
184 +//#include "fluid_cmd.h"
185 +//#include "fluid_adriver.h"
186 +//#include "fluid_mdriver.h"
187  #include "fluid_settings.h"
188  #include "fluid_midi.h"
189  
190 @@ -294,11 +294,13 @@ fluid_settings_init(fluid_settings_t* settings)
191    fluid_return_if_fail (settings != NULL);
192  
193    fluid_synth_settings(settings);
194 +#if 0
195    fluid_shell_settings(settings);
196    fluid_player_settings(settings);
197    fluid_file_renderer_settings(settings);
198    fluid_audio_driver_settings(settings);
199    fluid_midi_driver_settings(settings);
200 +#endif
201  }
202  
203  static int
204 diff --git b/libs/fluidsynth/src/fluid_synth.c a/libs/fluidsynth/src/fluid_synth.c
205 index 84ee289..a12260c 100644
206 --- b/libs/fluidsynth/src/fluid_synth.c
207 +++ a/libs/fluidsynth/src/fluid_synth.c
208 @@ -471,7 +471,7 @@ struct _fluid_sample_timer_t
209  /*
210   * fluid_sample_timer_process - called when synth->ticks is updated
211   */
212 -void fluid_sample_timer_process(fluid_synth_t* synth)
213 +static void fluid_sample_timer_process(fluid_synth_t* synth)
214  {
215         fluid_sample_timer_t* st;
216         long msec;
217 diff --git b/libs/fluidsynth/src/fluid_synth.h a/libs/fluidsynth/src/fluid_synth.h
218 index 3af336d..019a8e0 100644
219 --- b/libs/fluidsynth/src/fluid_synth.h
220 +++ a/libs/fluidsynth/src/fluid_synth.h
221 @@ -37,8 +37,8 @@
222  #include "fluid_rev.h"
223  #include "fluid_voice.h"
224  #include "fluid_chorus.h"
225 -#include "fluid_ladspa.h"
226 -#include "fluid_midi_router.h"
227 +//#include "fluid_ladspa.h"
228 +//#include "fluid_midi_router.h"
229  #include "fluid_sys.h"
230  #include "fluid_rvoice_event.h"
231  
232 diff --git b/libs/fluidsynth/src/fluid_sys.c a/libs/fluidsynth/src/fluid_sys.c
233 index ee7d8d9..328f255 100644
234 --- b/libs/fluidsynth/src/fluid_sys.c
235 +++ a/libs/fluidsynth/src/fluid_sys.c
236 @@ -686,7 +686,7 @@ fluid_thread_join(fluid_thread_t* thread)
237  }
238  
239  
240 -void
241 +static void
242  fluid_timer_run (void *data)
243  {
244    fluid_timer_t *timer;
245 @@ -950,6 +950,7 @@ fluid_ostream_printf (fluid_ostream_t out, char* format, ...)
246  #endif
247  }
248  
249 +#if 0 // Ardour says: no, thanks
250  int fluid_server_socket_join(fluid_server_socket_t *server_socket)
251  {
252    return fluid_thread_join (server_socket->thread);
253 @@ -1294,3 +1295,4 @@ int delete_fluid_server_socket(fluid_server_socket_t *server_socket)
254  }
255  
256  #endif
257 +#endif
258 diff --git b/libs/fluidsynth/src/fluid_tuning.c a/libs/fluidsynth/src/fluid_tuning.c
259 index cc440aa..8977ed6 100644
260 --- b/libs/fluidsynth/src/fluid_tuning.c
261 +++ a/libs/fluidsynth/src/fluid_tuning.c
262 @@ -143,7 +143,7 @@ char* fluid_tuning_get_name(fluid_tuning_t* tuning)
263    return tuning->name;
264  }
265  
266 -void fluid_tuning_set_key(fluid_tuning_t* tuning, int key, double pitch)
267 +static void fluid_tuning_set_key(fluid_tuning_t* tuning, int key, double pitch)
268  {
269    tuning->pitch[key] = pitch;
270  }
271 diff --git b/libs/fluidsynth/src/fluidsynth_priv.h a/libs/fluidsynth/src/fluidsynth_priv.h
272 index faf2772..b01618d 100644
273 --- b/libs/fluidsynth/src/fluidsynth_priv.h
274 +++ a/libs/fluidsynth/src/fluidsynth_priv.h
275 @@ -28,14 +28,6 @@
276  #include "config.h"
277  #endif
278  
279 -#if defined(__POWERPC__) && !(defined(__APPLE__) && defined(__MACH__))
280 -#include "config_maxmsp43.h"
281 -#endif
282 -
283 -#if defined(WIN32) && !defined(MINGW32)
284 -#include "config_win32.h"
285 -#endif
286 -
287  #if HAVE_STRING_H
288  #include <string.h>
289  #endif
290 @@ -113,8 +105,6 @@
291  #endif
292  
293  #if HAVE_WINDOWS_H
294 -#include <winsock2.h>
295 -#include <ws2tcpip.h>
296  #include <windows.h>
297  #endif
298  
299 @@ -131,6 +121,12 @@
300  #define STDOUT_FILENO 1
301  #define STDERR_FILENO 2
302  
303 +#elif defined _MSC_VER
304 +
305 +#define STDIN_FILENO  _fileno(stdin)
306 +#define STDOUT_FILENO _fileno(stdout)
307 +#define STDERR_FILENO _fileno(stderr)
308 +
309  #endif
310  
311  /* Darwin special defines (taken from config_macosx.h) */