mirror of
https://github.com/ZDoom/fluidsynth.git
synced 2025-05-07 06:01:08 +00:00
Fix various typos
Found via `codespell -q 3 -L uint -S ./ChangeLog -L dur`
This commit is contained in:
parent
13c6e98936
commit
45f8e0a868
36 changed files with 97 additions and 97 deletions
2
.github/issue_template.md
vendored
2
.github/issue_template.md
vendored
|
@ -30,7 +30,7 @@ We strongly recommend to use it! Feel free to edit or remove inapplicable/unneed
|
|||
|
||||
### Other information
|
||||
<!-- If you are able to illustrate the bug or feature request with an example, please provide simple
|
||||
source code below or as attatched file. List any other information that is relevant to your issue:
|
||||
source code below or as attached file. List any other information that is relevant to your issue:
|
||||
Stack traces,
|
||||
related issues,
|
||||
build logs,
|
||||
|
|
2
AUTHORS
2
AUTHORS
|
@ -103,7 +103,7 @@ summary of contributions.
|
|||
adapted version was integrated in the source code. files:
|
||||
fluid_cmd.c, fluidsynth/synth.h, fluid_synth.c.
|
||||
|
||||
* Some interpolation algorihms were used that were found in
|
||||
* Some interpolation algorithms were used that were found in
|
||||
the music-dsp archives (http://www.smartelectronix.com/musicdsp).
|
||||
They were written by Joshua Scholar and others. file: iiwu_synth.c
|
||||
|
||||
|
|
|
@ -94,6 +94,6 @@ several reasons:
|
|||
Xmms, WinAmp, Director, ...); develop language bindings (Python,
|
||||
Java, Perl, ...); and integrate it into (game) frameworks (Crystal
|
||||
Space, SDL, ...). For these reasons I've decided it would be easiest
|
||||
if the project stayed very focussed on its goal (a Soundfont
|
||||
if the project stayed very focused on its goal (a Soundfont
|
||||
synthesizer), stayed small (ideally one file) and didn't dependent
|
||||
on external code.
|
||||
|
|
2
TODO
2
TODO
|
@ -31,7 +31,7 @@ Validation
|
|||
|
||||
Documentation
|
||||
-------------
|
||||
- Write documention on tuning
|
||||
- Write documentation on tuning
|
||||
- Add usage scenarios in the documentation
|
||||
- User and system configuration file
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ What is FluidSynth?
|
|||
|
||||
- FluidSynth is open source, in active development. For more details, take a look at http://www.fluidsynth.org
|
||||
|
||||
\section NewIn2_1_0 Whats new in 2.1.0?
|
||||
\section NewIn2_1_0 What's new in 2.1.0?
|
||||
|
||||
- <span style="color:red">refrain from using fluid_synth_set_sample_rate()</span>
|
||||
- new reverb engine
|
||||
|
@ -79,35 +79,35 @@ What is FluidSynth?
|
|||
- sdl2
|
||||
- waveout
|
||||
|
||||
\section NewIn2_0_8 Whats new in 2.0.8?
|
||||
\section NewIn2_0_8 What's new in 2.0.8?
|
||||
|
||||
- fluid_sample_set_sound_data() caused broken sound when copying sample data
|
||||
|
||||
\section NewIn2_0_7 Whats new in 2.0.7?
|
||||
\section NewIn2_0_7 What's new in 2.0.7?
|
||||
|
||||
- fluid_free() has been added to allow proper deallocation by programming languages other than C/C++
|
||||
|
||||
\section NewIn2_0_6 Whats new in 2.0.6?
|
||||
\section NewIn2_0_6 What's new in 2.0.6?
|
||||
|
||||
- the MIDI player did not emit any audio when calling fluid_player_play() after fluid_player_stop()
|
||||
|
||||
\section NewIn2_0_5 Whats new in 2.0.5?
|
||||
\section NewIn2_0_5 What's new in 2.0.5?
|
||||
|
||||
- fluid_synth_process() omitted audio samples when called with arbitrary sample counts that were not a multiple of fluid_synth_get_internal_bufsize()
|
||||
- fluid_synth_sfunload() was not releasing sample buffers of SoundFont3 files if <a href="fluidsettings.xml#synth.dynamic-sample-loading">"synth.dynamic-sample-loading"</a> was set to FALSE
|
||||
|
||||
\section NewIn2_0_3 Whats new in 2.0.3?
|
||||
\section NewIn2_0_3 What's new in 2.0.3?
|
||||
|
||||
- fix incorrect behaviour of fluid_sample_set_sound_data()
|
||||
- add missing getters for midi events:
|
||||
- fluid_midi_event_get_text()
|
||||
- fluid_midi_event_get_lyrics()
|
||||
|
||||
\section NewIn2_0_2 Whats new in 2.0.2?
|
||||
\section NewIn2_0_2 What's new in 2.0.2?
|
||||
|
||||
- fluid_synth_error() has been deprecated, use fluid_set_log_function() to interfere log messages
|
||||
|
||||
\section NewIn2_0_0 Whats new in 2.0.0?
|
||||
\section NewIn2_0_0 What's new in 2.0.0?
|
||||
|
||||
FluidSynths major version was bumped. The API was reworked, deprecated functions were removed.
|
||||
|
||||
|
@ -452,7 +452,7 @@ fluid_settings_setstr(settings, "audio.file.name", "/path/to/output.wav");
|
|||
// use number of samples processed as timing source, rather than the system timer
|
||||
fluid_settings_setstr(settings, "player.timing-source", "sample");
|
||||
|
||||
// since this is a non-realtime szenario, there is no need to pin the sample data
|
||||
// since this is a non-realtime scenario, there is no need to pin the sample data
|
||||
fluid_settings_setint(settings, "synth.lock-memory", 0);
|
||||
|
||||
synth = new_fluid_synth(settings);
|
||||
|
|
|
@ -50,7 +50,7 @@ int fx_function(void *data, int len,
|
|||
* audio output. */
|
||||
if(fluid_synth_process(fx_data->synth, len, nfx, fx, nout, out) != FLUID_OK)
|
||||
{
|
||||
/* Some error occured. Very unlikely to happen, though. */
|
||||
/* Some error occurred. Very unlikely to happen, though. */
|
||||
return FLUID_FAILED;
|
||||
}
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@ extern "C" {
|
|||
* @param fx Array of buffers to store effects audio to. Buffers may alias with buffers of \c out.
|
||||
* @param nout Count of arrays in \c out.
|
||||
* @param out Array of buffers to store (dry) audio to. Buffers may alias with buffers of \c fx.
|
||||
* @return Should return #FLUID_OK on success, #FLUID_FAILED if an error occured.
|
||||
* @return Should return #FLUID_OK on success, #FLUID_FAILED if an error occurred.
|
||||
*/
|
||||
typedef int (*fluid_audio_func_t)(void *data, int len,
|
||||
int nfx, float *fx[],
|
||||
|
|
|
@ -46,7 +46,7 @@ enum fluid_seq_event_type
|
|||
FLUID_SEQ_PROGRAMCHANGE, /**< Program change message */
|
||||
FLUID_SEQ_PROGRAMSELECT, /**< Program select message */
|
||||
FLUID_SEQ_PITCHBEND, /**< Pitch bend message */
|
||||
FLUID_SEQ_PITCHWHEELSENS, /**< Pitch wheel sensitivity set message @since 1.1.0 was mispelled previously */
|
||||
FLUID_SEQ_PITCHWHEELSENS, /**< Pitch wheel sensitivity set message @since 1.1.0 was misspelled previously */
|
||||
FLUID_SEQ_MODULATION, /**< Modulation controller event */
|
||||
FLUID_SEQ_SUSTAIN, /**< Sustain controller event */
|
||||
FLUID_SEQ_CONTROLCHANGE, /**< MIDI control change event */
|
||||
|
|
|
@ -29,7 +29,7 @@ extern "C" {
|
|||
* @file ladspa.h
|
||||
* @brief Functions for manipulating the ladspa effects unit
|
||||
*
|
||||
* This header defines useful functions for programatically manipulating the ladspa
|
||||
* This header defines useful functions for programmatically manipulating the ladspa
|
||||
* effects unit of the synth that can be retrieved via fluid_synth_get_ladspa_fx().
|
||||
*
|
||||
* Using any of those functions requires fluidsynth to be compiled with ladspa support.
|
||||
|
|
|
@ -90,7 +90,7 @@ enum fluid_sample_type
|
|||
* could be another type of string identifier that the \a loader understands).
|
||||
* @param loader SoundFont loader
|
||||
* @param filename File name or other string identifier
|
||||
* @return The loaded instrument file (SoundFont) or NULL if an error occured.
|
||||
* @return The loaded instrument file (SoundFont) or NULL if an error occurred.
|
||||
*/
|
||||
typedef fluid_sfont_t *(*fluid_sfloader_load_t)(fluid_sfloader_t *loader, const char *filename);
|
||||
|
||||
|
@ -134,7 +134,7 @@ typedef int (* fluid_sfloader_callback_read_t)(void *buf, int count, void *handl
|
|||
typedef int (* fluid_sfloader_callback_seek_t)(void *handle, long offset, int origin);
|
||||
|
||||
/**
|
||||
* Closes the handle returned by #fluid_sfloader_callback_open_t and frees used ressources.
|
||||
* Closes the handle returned by #fluid_sfloader_callback_open_t and frees used resources.
|
||||
*
|
||||
* @return returns #FLUID_OK on success, #FLUID_FAILED on error
|
||||
*/
|
||||
|
|
|
@ -330,7 +330,7 @@ enum fluid_channel_breath_flags
|
|||
{
|
||||
FLUID_CHANNEL_BREATH_POLY = 0x10, /**< when channel is poly, this flag indicates that the default velocity to initial attenuation modulator is replaced by a breath to initial attenuation modulator */
|
||||
FLUID_CHANNEL_BREATH_MONO = 0x20, /**< when channel is mono, this flag indicates that the default velocity to initial attenuation modulator is replaced by a breath modulator */
|
||||
FLUID_CHANNEL_BREATH_SYNC = 0x40, /**< when channel is mono, this flag indicates that the breath controler(MSB)triggers noteon/noteoff on the running note */
|
||||
FLUID_CHANNEL_BREATH_SYNC = 0x40, /**< when channel is mono, this flag indicates that the breath controller(MSB)triggers noteon/noteoff on the running note */
|
||||
};
|
||||
|
||||
/** Indicates the mode a basic channel is set to */
|
||||
|
|
|
@ -523,7 +523,7 @@ fluid_shell_run(void *data)
|
|||
case 1: /* empty line or comment */
|
||||
break;
|
||||
|
||||
case FLUID_FAILED: /* erronous command */
|
||||
case FLUID_FAILED: /* erroneous command */
|
||||
errors = TRUE;
|
||||
|
||||
case FLUID_OK: /* valid command */
|
||||
|
@ -1373,7 +1373,7 @@ fluid_handle_echo(void *data, int ac, char **av, fluid_ostream_t out)
|
|||
/* Purpose:
|
||||
* Sleep during a time in ms
|
||||
* The command itself is useful to insert a delay between commands.
|
||||
* It can help for exemple to build a small song using noteon/noteoff commands
|
||||
* It can help for example to build a small song using noteon/noteoff commands
|
||||
* in a command file.
|
||||
*/
|
||||
int
|
||||
|
@ -2510,7 +2510,7 @@ static int print_basic_channels(fluid_synth_t *synth, fluid_ostream_t out)
|
|||
|
||||
/*-----------------------------------------------------------------------------
|
||||
basicchannels
|
||||
Prints the list of all MIDI basic channels informations
|
||||
Prints the list of all MIDI basic channels information
|
||||
example:
|
||||
|
||||
Basic channel: 0, poly omni on (0), nbr: 3
|
||||
|
@ -2527,7 +2527,7 @@ int fluid_handle_basicchannels(void *data, int ac, char **av,
|
|||
}
|
||||
|
||||
/*
|
||||
Searchs a mode name and returns the channel mode number.
|
||||
Searches a mode name and returns the channel mode number.
|
||||
name must be: poly_omnion, mono_omnion, poly_omnioff, mono_omnioff.
|
||||
@param name to search.
|
||||
@return channel mode number (0 to 3) if name is valid, -1 otherwise.
|
||||
|
@ -3045,7 +3045,7 @@ int fluid_handle_setlegatomode(void *data, int ac, char **av,
|
|||
return -1;
|
||||
}
|
||||
|
||||
n = ac / 2; /* number of legato groups informations */
|
||||
n = ac / 2; /* number of legato groups information */
|
||||
|
||||
for(i = 0; i < n; i++)
|
||||
{
|
||||
|
@ -3135,7 +3135,7 @@ int fluid_handle_setportamentomode(void *data, int ac, char **av,
|
|||
return -1;
|
||||
}
|
||||
|
||||
n = ac / 2; /* number of portamento groups informations */
|
||||
n = ac / 2; /* number of portamento groups information */
|
||||
|
||||
for(i = 0; i < n; i++)
|
||||
{
|
||||
|
@ -3259,7 +3259,7 @@ int fluid_handle_breathmode(void *data, int ac, char **av,
|
|||
|
||||
Parameter 1 is the channel number (i.e 4).
|
||||
Parameter 2 is the " Breath modulator " enable/disable for poly mode (i.e disabled).
|
||||
Parameter 3 is the " Breath modulator " enabe/disable for mono mode (i.e enabled).
|
||||
Parameter 3 is the " Breath modulator " enable/disable for mono mode (i.e enabled).
|
||||
Parameter 4 is "breath sync noteOn/Off" enable/disable for mono mode only (i.e enabled).
|
||||
|
||||
*/
|
||||
|
@ -3281,7 +3281,7 @@ int fluid_handle_setbreathmode(void *data, int ac, char **av,
|
|||
return -1;
|
||||
}
|
||||
|
||||
n = ac / 4; /* number of breath groups informations */
|
||||
n = ac / 4; /* number of breath groups information */
|
||||
|
||||
for(i = 0; i < n; i++)
|
||||
{
|
||||
|
@ -3866,7 +3866,7 @@ static unsigned short fluid_profile_send_notes(fluid_synth_t *synth, int notes,
|
|||
* Starts n_prof measures of dur duration(ms) each.
|
||||
*
|
||||
* n_prof number of measures (default value if not specified).
|
||||
* dur: measure duration (ms) (defaut value if not specified).
|
||||
* dur: measure duration (ms) (default value if not specified).
|
||||
*
|
||||
* The result of each measure is displayed.
|
||||
*
|
||||
|
@ -3967,7 +3967,7 @@ fluid_handle_prof_start(void *data, int ac, char **av, fluid_ostream_t out)
|
|||
}
|
||||
|
||||
/* Starts - waits - prints n_prof measures */
|
||||
fluid_ostream_printf(out, "Number of measures(n_prof):%d, duration of one mesure(dur):%dms\n",
|
||||
fluid_ostream_printf(out, "Number of measures(n_prof):%d, duration of one measure(dur):%dms\n",
|
||||
n_prof, dur);
|
||||
|
||||
/* Clears any previous <ENTER> pending key */
|
||||
|
|
|
@ -136,7 +136,7 @@
|
|||
/* Define to enable network support */
|
||||
#cmakedefine NETWORK_SUPPORT @NETWORK_SUPPORT@
|
||||
|
||||
/* Defined when fluidsynth is build in an automated enviornment, where no MSVC++ Runtime Debug Assertion dialogs should pop up */
|
||||
/* Defined when fluidsynth is build in an automated environment, where no MSVC++ Runtime Debug Assertion dialogs should pop up */
|
||||
#cmakedefine NO_GUI @NO_GUI@
|
||||
|
||||
/* libinstpatch for DLS and GIG */
|
||||
|
|
|
@ -399,7 +399,7 @@ delete_fluid_audio_driver(fluid_audio_driver_t *driver)
|
|||
* By default all audio drivers fluidsynth has been compiled with are registered, so calling this function is optional.
|
||||
*
|
||||
* @warning This function may only be called if no thread is residing in fluidsynth's API and no instances of any kind
|
||||
* are alive (e.g. as it would be the case right after fluidsynth's inital creation). Else the behaviour is undefined.
|
||||
* are alive (e.g. as it would be the case right after fluidsynth's initial creation). Else the behaviour is undefined.
|
||||
* Furtermore any attempt of using audio drivers that have not been registered is undefined behaviour!
|
||||
*
|
||||
* @param adrivers NULL-terminated array of audio drivers to register. Pass NULL to register all available drivers.
|
||||
|
|
|
@ -375,7 +375,7 @@ static int fluid_alsa_handle_write_error(snd_pcm_t *pcm, int errval)
|
|||
snd_pcm_wait(pcm, 1);
|
||||
break;
|
||||
// on some BSD variants ESTRPIPE is defined as EPIPE.
|
||||
// not sure why, maybe because this version of alsa doesnt support
|
||||
// not sure why, maybe because this version of alsa doesn't support
|
||||
// suspending pcm streams. anyway, since EPIPE seems to be more
|
||||
// likely than ESTRPIPE, so ifdef it out in case.
|
||||
#if ESTRPIPE == EPIPE
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
* 21/12/01 : Add a compilation flag (MIDISHARE_DRIVER) for driver or application mode
|
||||
* 29/01/02 : Compilation on MacOSX, use a task for typeNote management
|
||||
* 03/06/03 : Adapdation for FluidSynth API
|
||||
* 18/03/04 : In appplication mode, connect MidiShare to the fluidsynth client (fluid_midishare_open_appl)
|
||||
* 18/03/04 : In application mode, connect MidiShare to the fluidsynth client (fluid_midishare_open_appl)
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
|
|
@ -313,7 +313,7 @@ void pascal fluid_sndmgr_callback(SndChannelPtr chan, SndDoubleBufferPtr double
|
|||
}
|
||||
else
|
||||
{
|
||||
/* let the synth do the convertion */
|
||||
/* let the synth do the conversion */
|
||||
fluid_synth_write_s16((fluid_synth_t *)dev->data, buffer_size, buf, 0, 2, buf, 1, 2);
|
||||
}
|
||||
|
||||
|
|
|
@ -2354,7 +2354,7 @@ delete_fluid_midi_parser(fluid_midi_parser_t *parser)
|
|||
* apps to abuse fluidsynth as midi parser, e.g. feeding it with rawmidi and pull out
|
||||
* the needed midi information using the getter functions of fluid_midi_event_t.
|
||||
* This parser however is incomplete as it e.g. only provides a limited buffer to
|
||||
* store and process SYSEX data (i.e. doesnt allow arbitrary lengths)
|
||||
* store and process SYSEX data (i.e. doesn't allow arbitrary lengths)
|
||||
*/
|
||||
fluid_midi_event_t *
|
||||
fluid_midi_parser_parse(fluid_midi_parser_t *parser, unsigned char c)
|
||||
|
|
|
@ -616,7 +616,7 @@ fluid_sequencer_get_time_scale(fluid_sequencer_t *seq)
|
|||
All queue data structure management is done in a timer
|
||||
callback: '_fluid_seq_queue_process'. The
|
||||
_fluid_seq_queue_process function first process the preQueue,
|
||||
inserting or removing event entrys from the queue, then
|
||||
inserting or removing event entries from the queue, then
|
||||
processes the queue, by sending events ready to be sent at the
|
||||
current time.
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
* The delay i is controlled by a sine or triangle modulation i ( 1 <= i <= n).
|
||||
*
|
||||
* The chorus unit process a monophonic input signal and produces stereo output
|
||||
* controled by WIDTH macro.
|
||||
* controlled by WIDTH macro.
|
||||
* Actually WIDTH is fixed to maximum value. But in the future, we could add a
|
||||
* setting (e.g "synth.chorus.width") allowing the user to get a gradually stereo
|
||||
* effect from minimum (monophonic) to maximum stereo effect.
|
||||
|
@ -79,7 +79,7 @@
|
|||
* The advantages are:
|
||||
* - Avoiding a lost of 608272 memory bytes when lfo speed is low (0.3Hz).
|
||||
* - Allows to diminish the lfo speed lower limit to 0.1Hz instead of 0.3Hz.
|
||||
* A speed of 0.1 is interresting for chorus. Using a lookuptable for 0.1Hz
|
||||
* A speed of 0.1 is interesting for chorus. Using a lookuptable for 0.1Hz
|
||||
* would require too much memory (1824816 bytes).
|
||||
* - Interpolation make use of first order all-pass interpolator instead of
|
||||
* bandlimited interpolation.
|
||||
|
@ -244,7 +244,7 @@ struct _fluid_chorus_t
|
|||
static void set_sinus_frequency(sinus_modulator *mod,
|
||||
float freq, float sample_rate, float phase)
|
||||
{
|
||||
fluid_real_t w = 2 * FLUID_M_PI * freq / sample_rate; /* intial angle */
|
||||
fluid_real_t w = 2 * FLUID_M_PI * freq / sample_rate; /* initial angle */
|
||||
fluid_real_t a;
|
||||
|
||||
mod->a1 = 2 * FLUID_COS(w);
|
||||
|
@ -313,7 +313,7 @@ static void set_triangle_frequency(triang_modulator *mod, float freq,
|
|||
mod->inc = 4 / ns_period; /* positive slope */
|
||||
|
||||
/* The initial value and the sign of the slope depend of initial phase:
|
||||
intial value = = (ns_period * frac_phase) * slope
|
||||
initial value = = (ns_period * frac_phase) * slope
|
||||
*/
|
||||
mod->val = ns_period * frac_phase * mod->inc;
|
||||
|
||||
|
@ -365,7 +365,7 @@ static FLUID_INLINE fluid_real_t get_mod_delay(fluid_chorus_t *chorus,
|
|||
fluid_real_t out; /* value to return */
|
||||
|
||||
/* Checks if the modulator must be updated (every mod_rate samples). */
|
||||
/* Important: center_pos_mod must be used immediatly for the
|
||||
/* Important: center_pos_mod must be used immediately for the
|
||||
first sample. So, mdl->index_rate must be initialized
|
||||
to mdl->mod_rate (new_mod_delay_line()) */
|
||||
|
||||
|
@ -421,7 +421,7 @@ static FLUID_INLINE fluid_real_t get_mod_delay(fluid_chorus_t *chorus,
|
|||
mod->line_out -= chorus->size;
|
||||
}
|
||||
|
||||
/* Fractional interpolation beetween next sample (at next position) and
|
||||
/* Fractional interpolation between next sample (at next position) and
|
||||
previous output added to current sample.
|
||||
*/
|
||||
out += mod->frac_pos_mod * (chorus->line[mod->line_out] - mod->buffer);
|
||||
|
@ -479,7 +479,7 @@ static void set_center_position(fluid_chorus_t *chorus)
|
|||
chorus->center_pos_mod = (fluid_real_t)center;
|
||||
|
||||
/* index rate to control when to update center_pos_mod */
|
||||
/* Important: must be set to get center_pos_mod immediatly used for the
|
||||
/* Important: must be set to get center_pos_mod immediately used for the
|
||||
reading of first sample (see get_mod_delay()) */
|
||||
chorus->index_rate = chorus->mod_rate;
|
||||
}
|
||||
|
@ -800,7 +800,7 @@ fluid_chorus_set(fluid_chorus_t *chorus, int set, int nr, fluid_real_t level,
|
|||
|
||||
fluid_real_t wet = chorus->level * SCALE_WET ;
|
||||
|
||||
/* wet1 and wet2 are used by the stereo effect controled by the width setting
|
||||
/* wet1 and wet2 are used by the stereo effect controlled by the width setting
|
||||
for producing a stereo ouptput from a monophonic chorus signal.
|
||||
Please see the note above about a side effect tendency */
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@
|
|||
* output is the same. This sounds like a monophonic signal.
|
||||
* When 100, the separation between left and right is maximum.
|
||||
*
|
||||
* - level (0 to 1), controls the ouput level reverberation.
|
||||
* - level (0 to 1), controls the output level reverberation.
|
||||
*
|
||||
* This FDN reverb produces a better quality reverberation tail than Freeverb with
|
||||
* far less ringing by using modulated delay lines that help to cancel
|
||||
|
@ -428,7 +428,7 @@ typedef struct
|
|||
static void set_mod_frequency(sinus_modulator *mod,
|
||||
float freq, float sample_rate, float phase)
|
||||
{
|
||||
fluid_real_t w = 2 * FLUID_M_PI * freq / sample_rate; /* intial angle */
|
||||
fluid_real_t w = 2 * FLUID_M_PI * freq / sample_rate; /* initial angle */
|
||||
fluid_real_t a;
|
||||
|
||||
mod->a1 = 2 * FLUID_COS(w);
|
||||
|
@ -599,7 +599,7 @@ static int set_mod_delay_line(mod_delay_line *mdl,
|
|||
mdl->center_pos_mod = (fluid_real_t) INTERP_SAMPLES_NBR + mod_depth;
|
||||
|
||||
/* index rate to control when to update center_pos_mod */
|
||||
/* Important: must be set to get center_pos_mod immediatly used for the
|
||||
/* Important: must be set to get center_pos_mod immediately used for the
|
||||
reading of first sample (see get_mod_delay()) */
|
||||
mdl->index_rate = mdl->mod_rate;
|
||||
|
||||
|
@ -631,7 +631,7 @@ static FLUID_INLINE fluid_real_t get_mod_delay(mod_delay_line *mdl)
|
|||
fluid_real_t out; /* value to return */
|
||||
|
||||
/* Checks if the modulator must be updated (every mod_rate samples). */
|
||||
/* Important: center_pos_mod must be used immediatly for the
|
||||
/* Important: center_pos_mod must be used immediately for the
|
||||
first sample. So, mdl->index_rate must be initialized
|
||||
to mdl->mod_rate (set_mod_delay_line()) */
|
||||
|
||||
|
@ -688,7 +688,7 @@ static FLUID_INLINE fluid_real_t get_mod_delay(mod_delay_line *mdl)
|
|||
mdl->dl.line_out -= mdl->dl.size;
|
||||
}
|
||||
|
||||
/* Fractional interpolation beetween next sample (at next position) and
|
||||
/* Fractional interpolation between next sample (at next position) and
|
||||
previous output added to current sample.
|
||||
*/
|
||||
out += mdl->frac_pos_mod * (mdl->dl.line[mdl->dl.line_out] - mdl->buffer);
|
||||
|
@ -932,7 +932,7 @@ static int create_mod_delay_lines(fluid_late *late, fluid_real_t sample_rate)
|
|||
|
||||
Delay line's length given by static table delay_length[] is nominal
|
||||
to get minimum modal density of 0.15 at sample rate 44100Hz.
|
||||
Here we set length_factor to 2 to mutiply this nominal modal
|
||||
Here we set length_factor to 2 to multiply this nominal modal
|
||||
density by 2. This leads to a default modal density of 0.15 * 2 = 0.3 for
|
||||
sample rate <= 44100.
|
||||
|
||||
|
@ -1055,7 +1055,7 @@ fluid_revmodel_update(fluid_revmodel_t *rev)
|
|||
fluid_real_t wet = (rev->level * SCALE_WET) /
|
||||
(1.0f + rev->width * SCALE_WET_WIDTH);
|
||||
|
||||
/* wet1 and wet2 are used by the stereo effect controled by the width setting
|
||||
/* wet1 and wet2 are used by the stereo effect controlled by the width setting
|
||||
for producing a stereo ouptput from a monophonic reverb signal.
|
||||
Please see the note above about a side effect tendency */
|
||||
|
||||
|
@ -1135,7 +1135,7 @@ delete_fluid_revmodel(fluid_revmodel_t *rev)
|
|||
*
|
||||
* Note that while the reverb is used by calling any fluid_revmodel_processXXX()
|
||||
* function, calling fluid_revmodel_set() could produce audible clics.
|
||||
* If this is a problem, optionnaly call fluid_revmodel_reset() before calling
|
||||
* If this is a problem, optionally call fluid_revmodel_reset() before calling
|
||||
* fluid_revmodel_set().
|
||||
*
|
||||
* @param rev Reverb instance.
|
||||
|
@ -1298,7 +1298,7 @@ fluid_revmodel_processreplace(fluid_revmodel_t *rev, const fluid_real_t *in,
|
|||
process_damping_filter(delay_out_s, delay_out_s, mdl);
|
||||
|
||||
/* Result in delay_out[], and matrix_factor.
|
||||
These wil be use later during input line process */
|
||||
These will be of use later during input line process */
|
||||
delay_out[i] = delay_out_s; /* result in delay_out[] */
|
||||
matrix_factor += delay_out_s; /* result in matrix_factor */
|
||||
|
||||
|
@ -1419,7 +1419,7 @@ void fluid_revmodel_processmix(fluid_revmodel_t *rev, const fluid_real_t *in,
|
|||
process_damping_filter(delay_out_s, delay_out_s, mdl);
|
||||
|
||||
/* Result in delay_out[], and matrix_factor.
|
||||
These wil be use later during input line process */
|
||||
These will be of use later during input line process */
|
||||
delay_out[i] = delay_out_s; /* result in delay_out[] */
|
||||
matrix_factor += delay_out_s; /* result in matrix_factor */
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ struct _fluid_rvoice_event_t
|
|||
|
||||
/*
|
||||
* Bridge between the renderer thread and the midi state thread.
|
||||
* fluid_rvoice_eventhandler_fetch_all() can be called in parallell
|
||||
* fluid_rvoice_eventhandler_fetch_all() can be called in parallel
|
||||
* with fluid_rvoice_eventhandler_push/flush()
|
||||
*/
|
||||
struct _fluid_rvoice_eventhandler_t
|
||||
|
|
|
@ -379,7 +379,7 @@ fluid_rvoice_buffers_mix(fluid_rvoice_buffers_t *buffers,
|
|||
int bufcount = buffers->count;
|
||||
int i, dsp_i;
|
||||
|
||||
/* if there is nothing to mix, return immediatly */
|
||||
/* if there is nothing to mix, return immediately */
|
||||
if(sample_count <= 0 || dest_bufcount <= 0)
|
||||
{
|
||||
return;
|
||||
|
@ -672,7 +672,7 @@ fluid_mixer_buffers_init(fluid_mixer_buffers_t *buffers, fluid_rvoice_mixer_t *m
|
|||
DECLARE_FLUID_RVOICE_FUNCTION(fluid_rvoice_mixer_set_samplerate)
|
||||
{
|
||||
fluid_rvoice_mixer_t *mixer = obj;
|
||||
fluid_real_t samplerate = param[1].real; // becausee fluid_synth_update_mixer() puts real into arg2
|
||||
fluid_real_t samplerate = param[1].real; // because fluid_synth_update_mixer() puts real into arg2
|
||||
|
||||
int i;
|
||||
for(i = 0; i < mixer->fx_units; i++)
|
||||
|
|
|
@ -336,7 +336,7 @@ int fluid_defsfont_load_sampledata(fluid_defsfont_t *defsfont, SFData *sfdata, f
|
|||
return FLUID_OK;
|
||||
}
|
||||
|
||||
/* Ogg Vorbis samples already have loop pointers relative to the invididual decompressed sample,
|
||||
/* Ogg Vorbis samples already have loop pointers relative to the individual decompressed sample,
|
||||
* but SF2 samples are relative to sample chunk start, so they need to be adjusted */
|
||||
if(!(sample->sampletype & FLUID_SAMPLETYPE_OGG_VORBIS))
|
||||
{
|
||||
|
@ -776,7 +776,7 @@ fluid_defpreset_noteon_add_mod_to_voice(fluid_voice_t *voice,
|
|||
/* Although local_mod and global_mod lists was limited to
|
||||
FLUID_NUM_MOD at soundfont loading time, it is possible that
|
||||
local + global modulators exceeds FLUID_NUM_MOD.
|
||||
So, checks if mod_list_count reachs the limit.
|
||||
So, checks if mod_list_count reaches the limit.
|
||||
*/
|
||||
if(mod_list_count >= FLUID_NUM_MOD)
|
||||
{
|
||||
|
@ -805,7 +805,7 @@ fluid_defpreset_noteon_add_mod_to_voice(fluid_voice_t *voice,
|
|||
*/
|
||||
|
||||
/* Restrict identity check to the actual number of voice modulators */
|
||||
/* Acual number of voice modulators : defaults + [instruments] */
|
||||
/* Actual number of voice modulators : defaults + [instruments] */
|
||||
identity_limit_count = voice->mod_count;
|
||||
|
||||
for(i = 0; i < mod_list_count; i++)
|
||||
|
@ -1413,7 +1413,7 @@ fluid_zone_gen_import_sfont(fluid_gen_t *gen, fluid_zone_range_t *range, SFZone
|
|||
* @param src, pointer on destination modulator source.
|
||||
* @param flags, pointer on destination modulator flags.
|
||||
* @param sf_source, soundfont modulator source.
|
||||
* @return return TRUE if success, FALSE if source type is unknow.
|
||||
* @return return TRUE if success, FALSE if source type is unknown.
|
||||
*/
|
||||
static int
|
||||
fluid_zone_mod_source_import_sfont(unsigned char *src, unsigned char *flags, unsigned short sf_source)
|
||||
|
|
|
@ -36,7 +36,7 @@ typedef struct _fluid_samplecache_entry_t fluid_samplecache_entry_t;
|
|||
|
||||
struct _fluid_samplecache_entry_t
|
||||
{
|
||||
/* The follwing members all form the cache key */
|
||||
/* The following members all form the cache key */
|
||||
char *filename;
|
||||
time_t modification_time;
|
||||
unsigned int sf_samplepos;
|
||||
|
|
|
@ -893,7 +893,7 @@ static int process_sdta(SFData *sf, unsigned int size)
|
|||
|
||||
if(chunk.size > size)
|
||||
{
|
||||
FLUID_LOG(FLUID_WARN, "SM24 exeeds SDTA chunk, ignoring SM24");
|
||||
FLUID_LOG(FLUID_WARN, "SM24 exceeds SDTA chunk, ignoring SM24");
|
||||
goto ret; // no error
|
||||
}
|
||||
|
||||
|
@ -2476,7 +2476,7 @@ error_exit:
|
|||
/* Ogg Vorbis loading and decompression */
|
||||
#if LIBSNDFILE_SUPPORT
|
||||
|
||||
/* Virtual file access rountines to allow loading individually compressed
|
||||
/* Virtual file access routines to allow loading individually compressed
|
||||
* samples from the Soundfont sample data chunk using the file callbacks
|
||||
* passing in during opening of the file */
|
||||
typedef struct _sfvio_data_t
|
||||
|
|
|
@ -51,7 +51,7 @@ int safe_fread(void *buf, int count, void *fd)
|
|||
{
|
||||
if(feof((FILE *)fd))
|
||||
{
|
||||
FLUID_LOG(FLUID_ERR, "EOF while attemping to read %d bytes", count);
|
||||
FLUID_LOG(FLUID_ERR, "EOF while attempting to read %d bytes", count);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -413,7 +413,7 @@ fluid_channel_update_legato_staccato_state(fluid_channel_t *chan)
|
|||
* prev_note keeps a trace of the note prior i_last note.
|
||||
* FLUID_CHANNEL_LEGATO_PLAYING bit keeps trace of legato/staccato playing state.
|
||||
*
|
||||
* More informations in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
* More information in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
*/
|
||||
void
|
||||
fluid_channel_add_monolist(fluid_channel_t *chan, unsigned char key,
|
||||
|
@ -523,7 +523,7 @@ fluid_channel_search_monolist(fluid_channel_t *chan, unsigned char key, int *i_p
|
|||
* - prev_note keeps a trace of the note removed if it is i_last.
|
||||
* - FLUID_CHANNEL_LEGATO_PLAYING bit keeps a trace of legato/staccato playing state.
|
||||
*
|
||||
* More informations in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
* More information in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
*/
|
||||
void
|
||||
fluid_channel_remove_monolist(fluid_channel_t *chan, int i, int *i_prev)
|
||||
|
|
|
@ -385,7 +385,7 @@ fluid_synth_init(void)
|
|||
);
|
||||
fluid_mod_set_source2(&default_pan_mod, 0, 0); /* No second source */
|
||||
fluid_mod_set_dest(&default_pan_mod, GEN_PAN); /* Target: pan */
|
||||
/* Amount: 500. The SF specs $8.4.6, p. 55 syas: "Amount = 1000
|
||||
/* Amount: 500. The SF specs $8.4.6, p. 55 says: "Amount = 1000
|
||||
tenths of a percent". The center value (64) corresponds to 50%,
|
||||
so it follows that amount = 50% x 1000/% = 500. */
|
||||
fluid_mod_set_amount(&default_pan_mod, 500.0);
|
||||
|
@ -4063,7 +4063,7 @@ fluid_synth_write_s16(fluid_synth_t *synth, int len,
|
|||
while(size);
|
||||
|
||||
synth->cur = cur;
|
||||
synth->dither_index = di; /* keep dither buffer continous */
|
||||
synth->dither_index = di; /* keep dither buffer continuous */
|
||||
|
||||
time = fluid_utime() - time;
|
||||
cpu_load = 0.5 * (fluid_atomic_float_get(&synth->cpu_load) + time * synth->sample_rate / len / 10000.0);
|
||||
|
@ -4114,7 +4114,7 @@ fluid_synth_dither_s16(int *dither_index, int len, const float *lin, const float
|
|||
}
|
||||
}
|
||||
|
||||
*dither_index = di; /* keep dither buffer continous */
|
||||
*dither_index = di; /* keep dither buffer continuous */
|
||||
|
||||
fluid_profile(FLUID_PROF_WRITE, prof_ref, 0, len);
|
||||
}
|
||||
|
@ -6229,7 +6229,7 @@ fluid_synth_set_gen_LOCAL(fluid_synth_t *synth, int chan, int param, float value
|
|||
}
|
||||
|
||||
/**
|
||||
* Retrive the generator NRPN offset assigned to a MIDI channel.
|
||||
* Retrieve the generator NRPN offset assigned to a MIDI channel.
|
||||
*
|
||||
* The value returned is in native units of the generator. By default, the offset is zero.
|
||||
* @param synth FluidSynth instance
|
||||
|
@ -6895,7 +6895,7 @@ fluid_synth_check_next_basic_channel(fluid_synth_t *synth, int basicchan, int mo
|
|||
{
|
||||
/* A value of 0 for val means all possible channels from basicchan to
|
||||
to the next basic channel -1 (if any).
|
||||
When i reachs the next basic channel group, real_val will be
|
||||
When i reaches the next basic channel group, real_val will be
|
||||
limited if it is possible */
|
||||
if(val == 0)
|
||||
{
|
||||
|
@ -7009,7 +7009,7 @@ fluid_synth_set_basic_channel_LOCAL(fluid_synth_t *synth, int basicchan, int mod
|
|||
}
|
||||
|
||||
/**
|
||||
* Searchs a previous basic channel starting from chan.
|
||||
* Searches a previous basic channel starting from chan.
|
||||
*
|
||||
* @param synth the synth instance.
|
||||
* @param chan starting index of the search (including chan).
|
||||
|
@ -7019,7 +7019,7 @@ static int fluid_synth_get_previous_basic_channel(fluid_synth_t *synth, int chan
|
|||
{
|
||||
for(; chan >= 0; chan--)
|
||||
{
|
||||
/* searchs previous basic channel */
|
||||
/* searches previous basic channel */
|
||||
if(synth->channel[chan]->mode & FLUID_CHANNEL_BASIC)
|
||||
{
|
||||
/* chan is the previous basic channel */
|
||||
|
@ -7067,7 +7067,7 @@ int fluid_synth_get_basic_channel(fluid_synth_t *synth, int chan,
|
|||
val = synth->channel[basic_chan]->mode_val;
|
||||
}
|
||||
|
||||
/* returns the informations if they are requested */
|
||||
/* returns the information if they are requested */
|
||||
if(basic_chan_out)
|
||||
{
|
||||
* basic_chan_out = basic_chan;
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
note 'tokey'. Portamento fromkey note choice is determined at noteOn by
|
||||
fluid_synth_get_fromkey_portamento_legato() (see below).
|
||||
|
||||
More informations in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
More information in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
******************************************************************************/
|
||||
|
||||
|
||||
|
@ -95,7 +95,7 @@
|
|||
******************************************************************************/
|
||||
|
||||
/**
|
||||
* fluid_synth_get_fromkey_portamento_legato returns two informations:
|
||||
* fluid_synth_get_fromkey_portamento_legato returns two information:
|
||||
* - fromkey note for portamento.
|
||||
* - fromkey note for legato.
|
||||
* +-----> fromkey_portamento
|
||||
|
@ -120,7 +120,7 @@
|
|||
* - default_fromkey if valid
|
||||
* - otherwise prev_note(prev_note is the note prior the most recent
|
||||
* note played).
|
||||
* Then portamento mode is applied to validate the value choosen.
|
||||
* Then portamento mode is applied to validate the value chosen.
|
||||
* Where portamento mode is:
|
||||
* - each note, a portamento occurs on each note.
|
||||
* - legato only, portamento only on notes played legato.
|
||||
|
@ -143,7 +143,7 @@
|
|||
*
|
||||
* On input
|
||||
* @param chan fluid_channel_t.
|
||||
* @param defaultFromkey, the defaut 'fromkey portamento' note or 'fromkey legato'
|
||||
* @param defaultFromkey, the default 'fromkey portamento' note or 'fromkey legato'
|
||||
* note (see description above).
|
||||
*
|
||||
* @return
|
||||
|
@ -254,7 +254,7 @@ static char fluid_synth_get_fromkey_portamento_legato(fluid_channel_t *chan,
|
|||
* polyphonic mode and legato pedal is On during the playing.
|
||||
* When a channel is in "monophonic playing" state, only one note at a time can be
|
||||
* played in a staccato or legato manner (with or without portamento).
|
||||
* More informations in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
* More information in FluidPolyMono-0004.pdf chapter 4 (Appendices).
|
||||
* _______________
|
||||
* ________________ | noteon |
|
||||
* | legato detector| O-->| mono_staccato |--*-> preset_noteon
|
||||
|
@ -521,7 +521,7 @@ fluid_synth_noteon_mono_staccato(fluid_synth_t *synth, int chan, int key, int ve
|
|||
*
|
||||
* The function has the same behaviour when the noteoff is poly of mono, except
|
||||
* that for mono noteoff, if any pedal (sustain or sostenuto ) is depressed, the
|
||||
* key is memorized. This is neccessary when the next mono note will be played
|
||||
* key is memorized. This is necessary when the next mono note will be played
|
||||
* staccato, as any current mono note currently sustained will need to be released
|
||||
* (see fluid_synth_noteon_mono_staccato()).
|
||||
* Note also that for a monophonic legato passage, the function is called only when
|
||||
|
@ -647,7 +647,7 @@ int fluid_synth_noteoff_monopoly(fluid_synth_t *synth, int chan, int key,
|
|||
* When key tokey is outside the current Instrument Zone, Preset Zone,
|
||||
* current 'fromkey' voices are released. If necessary new voices
|
||||
* are restarted when tokey enters inside new Instrument(s) Zones,Preset Zone(s).
|
||||
* More informations in FluidPolyMono-0004.pdf chapter 4.7 (Appendices).
|
||||
* More information in FluidPolyMono-0004.pdf chapter 4.7 (Appendices).
|
||||
*/
|
||||
int fluid_synth_noteon_monopoly_legato(fluid_synth_t *synth, int chan,
|
||||
int fromkey, int tokey, int vel)
|
||||
|
|
|
@ -1141,7 +1141,7 @@ fluid_voice_update_param(fluid_voice_t *voice, int gen)
|
|||
/**
|
||||
* Recalculate voice parameters for a given control.
|
||||
* @param voice the synthesis voice
|
||||
* @param cc flag to distinguish between a continous control and a channel control (pitch bend, ...)
|
||||
* @param cc flag to distinguish between a continuous control and a channel control (pitch bend, ...)
|
||||
* @param ctrl the control number:
|
||||
* when >=0, only modulators's destination having ctrl as source are updated.
|
||||
* when -1, all modulators's destination are updated (regardless of ctrl).
|
||||
|
@ -1324,7 +1324,7 @@ fluid_voice_release(fluid_voice_t *voice)
|
|||
{
|
||||
unsigned int at_tick = fluid_channel_get_min_note_length_ticks(voice->channel);
|
||||
UPDATE_RVOICE_I1(fluid_rvoice_noteoff, at_tick);
|
||||
voice->has_noteoff = 1; // voice is marked as noteoff occured
|
||||
voice->has_noteoff = 1; // voice is marked as noteoff occurred
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -1484,7 +1484,7 @@ fluid_voice_add_mod(fluid_voice_t *voice, fluid_mod_t *mod, int mode)
|
|||
* are checked for identity.
|
||||
* - When check_count_limit is below the actual number of voices modulators
|
||||
* (voice->mod_count), this will restrict identity check to this number,
|
||||
* This is usefull when we know by advance that there is no duplicate with
|
||||
* This is useful when we know by advance that there is no duplicate with
|
||||
* modulators at index above this limit. This avoid wasting cpu cycles at noteon.
|
||||
*/
|
||||
void
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
Note about usefulness of 24 bits:
|
||||
1)Even fluidsynth is a 24 bit synth, this format is only relevant if
|
||||
the sample format coming from the soundfont is 24 bits and the audio sample format
|
||||
choosen by the application (audio.sample.format) is not 16 bits.
|
||||
chosen by the application (audio.sample.format) is not 16 bits.
|
||||
|
||||
2)When the sample soundfont is 16 bits, the internal 24 bits number have
|
||||
16 bits msb and lsb to 0. Consequently, at the DAC output, the dynamic range of
|
||||
|
|
|
@ -129,7 +129,7 @@ spaced_primes_closest(unsigned int num)
|
|||
* the case that the entry is at the head of a chain, this pointer
|
||||
* will be an item in the nodes[] array. In the case that the entry
|
||||
* is not at the head of a chain, this pointer will be the ->next
|
||||
* pointer on the node that preceeds it.
|
||||
* pointer on the node that precedes it.
|
||||
*
|
||||
* In the case that no matching entry exists in the table, a pointer
|
||||
* to a %NULL pointer will be returned. To insert a item, this %NULL
|
||||
|
|
|
@ -234,7 +234,7 @@ void fluid_free(void* ptr)
|
|||
* @internal
|
||||
* @param str Pointer to a string pointer of source to tokenize. Pointer gets
|
||||
* updated on each invocation to point to beginning of next token. Note that
|
||||
* token char get's overwritten with a 0 byte. String pointer is set to NULL
|
||||
* token char gets overwritten with a 0 byte. String pointer is set to NULL
|
||||
* when final token is returned.
|
||||
* @param delim String of delimiter chars.
|
||||
* @return Pointer to the next token or NULL if no more tokens.
|
||||
|
@ -513,7 +513,7 @@ void fluid_clear_fpe_i386(void)
|
|||
*/
|
||||
|
||||
#if WITH_PROFILING
|
||||
/* Profiling interface beetween profiling command shell and audio rendering API
|
||||
/* Profiling interface between profiling command shell and audio rendering API
|
||||
(FluidProfile_0004.pdf- 3.2.2).
|
||||
Macros are in defined in fluid_sys.h.
|
||||
*/
|
||||
|
@ -692,8 +692,8 @@ static void fluid_profiling_print_load(double sample_rate, fluid_ostream_t out)
|
|||
* @param sample_rate the sample rate of audio output.
|
||||
* @param out output stream device.
|
||||
*
|
||||
* When print mode is 1, the function prints all the informations (see below).
|
||||
* When print mode is 0, the fonction prints only the cpu loads.
|
||||
* When print mode is 1, the function prints all the information (see below).
|
||||
* When print mode is 0, the function prints only the cpu loads.
|
||||
*
|
||||
* ------------------------------------------------------------------------------
|
||||
* Duration(microsecond) and cpu loads(%) (sr: 44100 Hz, sp: 22.68 microsecond)
|
||||
|
|
|
@ -464,7 +464,7 @@ typedef SOCKET fluid_socket_t;
|
|||
typedef int fluid_socket_t;
|
||||
#endif
|
||||
|
||||
/* The function should return 0 if no error occured, non-zero
|
||||
/* The function should return 0 if no error occurred, non-zero
|
||||
otherwise. If the function return non-zero, the socket will be
|
||||
closed by the server. */
|
||||
typedef int (*fluid_server_func_t)(void *data, fluid_socket_t client_socket, char *addr);
|
||||
|
@ -500,7 +500,7 @@ FILE* fluid_file_open(const char* filename, const char** errMsg);
|
|||
|
||||
/* Profiling */
|
||||
#if WITH_PROFILING
|
||||
/** profiling interface beetween Profiling command shell and Audio
|
||||
/** profiling interface between Profiling command shell and Audio
|
||||
rendering API (FluidProfile_0004.pdf- 3.2.2)
|
||||
*/
|
||||
|
||||
|
@ -733,7 +733,7 @@ void fluid_msleep(unsigned int msecs);
|
|||
* Make sure you've allocated an extra of \c alignment bytes to avoid a buffer overflow.
|
||||
*
|
||||
* @note \c alignment must be a power of two
|
||||
* @return Returned pointer is guarenteed to be aligned to \c alignment boundary and in range \f[ ptr <= returned_ptr < ptr + alignment \f].
|
||||
* @return Returned pointer is guaranteed to be aligned to \c alignment boundary and in range \f[ ptr <= returned_ptr < ptr + alignment \f].
|
||||
*/
|
||||
static FLUID_INLINE void *fluid_align_ptr(const void *ptr, unsigned int alignment)
|
||||
{
|
||||
|
|
|
@ -226,8 +226,8 @@ do { strncpy(_dst,_src,_n); \
|
|||
|
||||
#if (defined(WIN32) && _MSC_VER < 1900) || defined(MINGW32)
|
||||
/* need to make sure we use a C99 compliant implementation of (v)snprintf(),
|
||||
* i.e. not microsofts non compliant extension _snprintf() as it doesnt
|
||||
* reliably null-terminates the buffer
|
||||
* i.e. not microsofts non compliant extension _snprintf() as it doesn't
|
||||
* reliably null-terminate the buffer
|
||||
*/
|
||||
#define FLUID_SNPRINTF g_snprintf
|
||||
#else
|
||||
|
|
Loading…
Reference in a new issue