fluidsynth 2.0.5 compiled with -Denable-readline=OFF and without portaudio
This commit is contained in:
parent
370d599f62
commit
d22c2cd4fa
Binary file not shown.
BIN
Builds/MacOSX/lib/libfluidsynth.dylib
Executable file → Normal file
BIN
Builds/MacOSX/lib/libfluidsynth.dylib
Executable file → Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Builds/MacOSX/lib/libintl.8.dylib
Executable file → Normal file
BIN
Builds/MacOSX/lib/libintl.8.dylib
Executable file → Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -2,6 +2,9 @@
|
|||
|
||||
# Example input:
|
||||
# ./make_portable.sh mycoolbinary
|
||||
# Or:
|
||||
# USE_RPATH=1 ./make_portable.sh mycoolbinary
|
||||
#
|
||||
# where mycoolbinary is a mach-o object file
|
||||
# (for example an executable binary or a .dylib)
|
||||
#
|
||||
|
@ -29,11 +32,27 @@ trap 'error ${LINENO}' ERR
|
|||
|
||||
BINARY="$1"
|
||||
BINARYDIR=$(dirname "$BINARY")
|
||||
LIBREL="lib"
|
||||
LIB="$BINARYDIR/$LIBREL"
|
||||
LIBDIRNAME=${LIBDIRNAME:-lib}
|
||||
LIBOUTPUTDIR="$BINARYDIR/$LIBDIRNAME"
|
||||
|
||||
# assume that our binary is running from:
|
||||
# CoolBinary.app/Contents/MacOS/coolbinary
|
||||
# and wants to navigate to:
|
||||
# CoolBinary.app/Contents/lib/coollibrary.dylib
|
||||
RPATH_FALLBACK="@loader_path/../$LIBDIRNAME"
|
||||
|
||||
if [ -z ${USE_RPATH+x} ]; then
|
||||
# don't use rpath
|
||||
OBJLOADREL="$RPATH_FALLBACK"
|
||||
else
|
||||
OBJLOADREL="@rpath"
|
||||
# define in our binary what it should expand the
|
||||
# runtime search path @rpath to
|
||||
install_name_tool -add_rpath "$RPATH_FALLBACK" "$BINARY"
|
||||
fi
|
||||
|
||||
# make a lib folder
|
||||
mkdir -p "$LIB"
|
||||
mkdir -p "$LIBOUTPUTDIR"
|
||||
|
||||
# find every LC_LOAD_DYLIB command in the obj file
|
||||
# filter to just loads under /usr/local
|
||||
|
@ -65,22 +84,22 @@ get_env_specific_dependencies_recursive () {
|
|||
|
||||
DEP_PATHS=$(get_env_specific_dependencies_recursive "$BINARY")
|
||||
|
||||
mkdir -p "$LIB"
|
||||
mkdir -p "$LIBOUTPUTDIR"
|
||||
# copy each distinct dylib in the dependency tree into our lib folder
|
||||
echo "$DEP_PATHS" \
|
||||
| xargs -n1 realpath \
|
||||
| sort \
|
||||
| uniq \
|
||||
| xargs -I'{}' cp {} "$LIB/"
|
||||
| xargs -I'{}' cp {} "$LIBOUTPUTDIR/"
|
||||
|
||||
chmod +w "$LIB"/*.dylib
|
||||
chmod +w "$BINARY" "$LIBOUTPUTDIR"/*.dylib
|
||||
|
||||
while read -r obj; do
|
||||
[ -z "$obj" ] && continue
|
||||
OBJ_LEAF_NAME=$(echo "$obj" | awk -F'/' '{print $NF}')
|
||||
# rewrite the install name of this obj file. completely optional.
|
||||
# provides good default for future people who link to it.
|
||||
install_name_tool -id "@rpath/$OBJ_LEAF_NAME" "$obj"
|
||||
install_name_tool -id "$OBJLOADREL/$OBJ_LEAF_NAME" "$obj"
|
||||
|
||||
# iterate over every LC_LOAD_DYLIB command in the objfile
|
||||
while read -r load; do
|
||||
|
@ -88,10 +107,6 @@ while read -r obj; do
|
|||
LOAD_LEAF_NAME=$(echo "$load" | awk -F'/' '{print $NF}')
|
||||
# rewrite a LC_LOAD_DYLIB command in this obj file
|
||||
# to point relative to @rpath
|
||||
install_name_tool -change "$load" "@rpath/$LOAD_LEAF_NAME" "$obj"
|
||||
install_name_tool -change "$load" "$OBJLOADREL/$LOAD_LEAF_NAME" "$obj"
|
||||
done < <(get_env_specific_direct_dependencies "$obj")
|
||||
done < <(cat <(echo "$BINARY") <(echo "$DEP_PATHS" | awk -F'/' -v l="$LIB" -v OFS='/' '{print l,$NF}'))
|
||||
|
||||
# define in our binary what it should expand the
|
||||
# runtime search path @rpath to
|
||||
install_name_tool -add_rpath "@loader_path/$LIBREL" "$BINARY"
|
||||
done < <(cat <(echo "$BINARY") <(echo "$DEP_PATHS" | awk -F'/' -v l="$LIBOUTPUTDIR" -v OFS='/' '{print l,$NF}'))
|
||||
|
|
|
@ -97,7 +97,6 @@ extern "C" {
|
|||
#include "fluidsynth/synth.h"
|
||||
#include "fluidsynth/shell.h"
|
||||
#include "fluidsynth/sfont.h"
|
||||
#include "fluidsynth/ramsfont.h"
|
||||
#include "fluidsynth/audio.h"
|
||||
#include "fluidsynth/event.h"
|
||||
#include "fluidsynth/midi.h"
|
||||
|
|
|
@ -35,7 +35,8 @@ extern "C" {
|
|||
/**
|
||||
* Sequencer event type enumeration.
|
||||
*/
|
||||
enum fluid_seq_event_type {
|
||||
enum fluid_seq_event_type
|
||||
{
|
||||
FLUID_SEQ_NOTE = 0, /**< Note event with duration */
|
||||
FLUID_SEQ_NOTEON, /**< Note on event */
|
||||
FLUID_SEQ_NOTEOFF, /**< Note off event */
|
||||
|
|
|
@ -33,7 +33,8 @@ extern "C" {
|
|||
/**
|
||||
* Generator (effect) numbers (Soundfont 2.01 specifications section 8.1.3)
|
||||
*/
|
||||
enum fluid_gen_type {
|
||||
enum fluid_gen_type
|
||||
{
|
||||
GEN_STARTADDROFS, /**< Sample start address offset (0-32767) */
|
||||
GEN_ENDADDROFS, /**< Sample end address offset (-32767-0) */
|
||||
GEN_STARTLOOPADDROFS, /**< Sample loop start address offset (-32767-32767) */
|
||||
|
|
|
@ -52,7 +52,8 @@ extern "C" {
|
|||
/**
|
||||
* FluidSynth log levels.
|
||||
*/
|
||||
enum fluid_log_level {
|
||||
enum fluid_log_level
|
||||
{
|
||||
FLUID_PANIC, /**< The synth can't function correctly any more */
|
||||
FLUID_ERR, /**< Serious error occurred */
|
||||
FLUID_WARN, /**< Warning */
|
||||
|
@ -69,12 +70,12 @@ enum fluid_log_level {
|
|||
* @param message Log message text
|
||||
* @param data User data pointer supplied to fluid_set_log_function().
|
||||
*/
|
||||
typedef void (*fluid_log_function_t)(int level, char* message, void* data);
|
||||
typedef void (*fluid_log_function_t)(int level, const char *message, void *data);
|
||||
|
||||
FLUIDSYNTH_API
|
||||
fluid_log_function_t fluid_set_log_function(int level, fluid_log_function_t fun, void *data);
|
||||
|
||||
FLUIDSYNTH_API void fluid_default_log_function(int level, char* message, void* data);
|
||||
FLUIDSYNTH_API void fluid_default_log_function(int level, const char *message, void *data);
|
||||
|
||||
FLUIDSYNTH_API int fluid_log(int level, const char *fmt, ...);
|
||||
|
||||
|
|
|
@ -53,8 +53,12 @@ FLUIDSYNTH_API int fluid_midi_event_set_sysex(fluid_midi_event_t* evt, void *dat
|
|||
int size, int dynamic);
|
||||
FLUIDSYNTH_API int fluid_midi_event_set_text(fluid_midi_event_t *evt,
|
||||
void *data, int size, int dynamic);
|
||||
FLUIDSYNTH_API int fluid_midi_event_get_text(fluid_midi_event_t *evt,
|
||||
void **data, int *size);
|
||||
FLUIDSYNTH_API int fluid_midi_event_set_lyrics(fluid_midi_event_t *evt,
|
||||
void *data, int size, int dynamic);
|
||||
FLUIDSYNTH_API int fluid_midi_event_get_lyrics(fluid_midi_event_t *evt,
|
||||
void **data, int *size);
|
||||
|
||||
/**
|
||||
* MIDI router rule type.
|
||||
|
|
|
@ -1,66 +0,0 @@
|
|||
/* FluidSynth - A Software Synthesizer
|
||||
*
|
||||
* Copyright (C) 2003 Peter Hanappe and others.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free
|
||||
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
* 02110-1301, USA
|
||||
*/
|
||||
|
||||
/* RAM SoundFonts: October 2002 - Antoine Schmitt */
|
||||
|
||||
#ifndef _FLUIDSYNTH_RAMSFONT_H
|
||||
#define _FLUIDSYNTH_RAMSFONT_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @file ramsfont.h
|
||||
* @brief API for creating and managing SoundFont instruments in RAM.
|
||||
*
|
||||
* RAM SoundFonts live in ram. The samples are loaded from files
|
||||
* or from RAM. A minimal API manages a soundFont structure,
|
||||
* with presets, each preset having only one preset-zone, which
|
||||
* instrument has potentially many instrument-zones. No global
|
||||
* zones, and nor generator nor modulator other than the default
|
||||
* ones are permitted. This may be extensible in the future.
|
||||
*/
|
||||
|
||||
FLUIDSYNTH_API fluid_sfont_t* fluid_ramsfont_create_sfont(void);
|
||||
FLUIDSYNTH_API int fluid_ramsfont_set_name(fluid_ramsfont_t* sfont, const char *name);
|
||||
FLUIDSYNTH_API
|
||||
int fluid_ramsfont_add_izone(fluid_ramsfont_t* sfont,
|
||||
int bank, int num, fluid_sample_t* sample,
|
||||
int lokey, int hikey);
|
||||
FLUIDSYNTH_API
|
||||
int fluid_ramsfont_remove_izone(fluid_ramsfont_t* sfont,
|
||||
int bank, int num, fluid_sample_t* sample);
|
||||
FLUIDSYNTH_API
|
||||
int fluid_ramsfont_izone_set_gen(fluid_ramsfont_t* sfont,
|
||||
int bank, int num, fluid_sample_t* sample,
|
||||
int gen_type, float value);
|
||||
FLUIDSYNTH_API
|
||||
int fluid_ramsfont_izone_set_loop(fluid_ramsfont_t* sfont,
|
||||
int bank, int num, fluid_sample_t* sample,
|
||||
int on, float loopstart, float loopend);
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _FLUIDSYNTH_RAMSFONT_H */
|
|
@ -88,7 +88,8 @@ extern "C" {
|
|||
* set of values. The type of each setting can be retrieved using the
|
||||
* function fluid_settings_get_type()
|
||||
*/
|
||||
enum fluid_types_enum {
|
||||
enum fluid_types_enum
|
||||
{
|
||||
FLUID_NO_TYPE = -1, /**< Undefined type */
|
||||
FLUID_NUM_TYPE, /**< Numeric (double) */
|
||||
FLUID_INT_TYPE, /**< Integer */
|
||||
|
|
|
@ -64,7 +64,8 @@ extern "C" {
|
|||
/**
|
||||
* Some notification enums for presets and samples.
|
||||
*/
|
||||
enum {
|
||||
enum
|
||||
{
|
||||
FLUID_PRESET_SELECTED, /**< Preset selected notify */
|
||||
FLUID_PRESET_UNSELECTED, /**< Preset unselected notify */
|
||||
FLUID_SAMPLE_DONE /**< Sample no longer needed notify */
|
||||
|
@ -183,12 +184,10 @@ typedef void (*fluid_sfont_iteration_start_t)(fluid_sfont_t* sfont);
|
|||
/**
|
||||
* Virtual SoundFont preset iteration function.
|
||||
* @param sfont Virtual SoundFont
|
||||
* @param preset Caller supplied uninitialized buffer to fill in with current preset information
|
||||
* @return NULL when no more presets are available, otherwise the a pointer to the current preset
|
||||
*
|
||||
* Should store preset information to the caller supplied \a preset structure
|
||||
* and advance the internal iteration state to the next preset for subsequent
|
||||
* calls.
|
||||
* Returns preset information to the caller. The returned buffer is only valid until a subsequent
|
||||
* call to this function.
|
||||
*/
|
||||
typedef fluid_preset_t *(*fluid_sfont_iteration_next_t)(fluid_sfont_t *sfont);
|
||||
|
||||
|
|
|
@ -143,7 +143,8 @@ FLUIDSYNTH_API double fluid_synth_get_reverb_width(fluid_synth_t* synth);
|
|||
/**
|
||||
* Chorus modulation waveform type.
|
||||
*/
|
||||
enum fluid_chorus_mod {
|
||||
enum fluid_chorus_mod
|
||||
{
|
||||
FLUID_CHORUS_MOD_SINE = 0, /**< Sine wave chorus modulation */
|
||||
FLUID_CHORUS_MOD_TRIANGLE = 1 /**< Triangle wave chorus modulation */
|
||||
};
|
||||
|
@ -170,6 +171,7 @@ FLUIDSYNTH_API int fluid_synth_count_midi_channels(fluid_synth_t* synth);
|
|||
FLUIDSYNTH_API int fluid_synth_count_audio_channels(fluid_synth_t *synth);
|
||||
FLUIDSYNTH_API int fluid_synth_count_audio_groups(fluid_synth_t *synth);
|
||||
FLUIDSYNTH_API int fluid_synth_count_effects_channels(fluid_synth_t *synth);
|
||||
FLUIDSYNTH_API int fluid_synth_count_effects_groups(fluid_synth_t *synth);
|
||||
|
||||
|
||||
/* Synthesis parameters */
|
||||
|
@ -188,7 +190,8 @@ int fluid_synth_set_interp_method(fluid_synth_t* synth, int chan, int interp_met
|
|||
/**
|
||||
* Synthesis interpolation method.
|
||||
*/
|
||||
enum fluid_interp {
|
||||
enum fluid_interp
|
||||
{
|
||||
FLUID_INTERP_NONE = 0, /**< No interpolation: Fastest, but questionable audio quality */
|
||||
FLUID_INTERP_LINEAR = 1, /**< Straight-line interpolation: A bit slower, reasonable audio quality */
|
||||
FLUID_INTERP_4THORDER = 4, /**< Fourth-order interpolation, good quality, the default */
|
||||
|
@ -230,7 +233,7 @@ FLUIDSYNTH_API int fluid_synth_tuning_dump(fluid_synth_t* synth, int bank, int p
|
|||
/* Misc */
|
||||
|
||||
FLUIDSYNTH_API double fluid_synth_get_cpu_load(fluid_synth_t *synth);
|
||||
FLUIDSYNTH_API const char* fluid_synth_error(fluid_synth_t* synth);
|
||||
FLUID_DEPRECATED FLUIDSYNTH_API const char *fluid_synth_error(fluid_synth_t *synth);
|
||||
|
||||
|
||||
/* Default modulators */
|
||||
|
@ -238,12 +241,13 @@ FLUIDSYNTH_API const char* fluid_synth_error(fluid_synth_t* synth);
|
|||
/**
|
||||
* Enum used with fluid_synth_add_default_mod() to specify how to handle duplicate modulators.
|
||||
*/
|
||||
enum fluid_synth_add_mod {
|
||||
enum fluid_synth_add_mod
|
||||
{
|
||||
FLUID_SYNTH_OVERWRITE, /**< Overwrite any existing matching modulator */
|
||||
FLUID_SYNTH_ADD, /**< Add (sum) modulator amounts */
|
||||
};
|
||||
|
||||
FLUIDSYNTH_API int fluid_synth_add_default_mod(fluid_synth_t* synth, fluid_mod_t* mod, int mode);
|
||||
FLUIDSYNTH_API int fluid_synth_add_default_mod(fluid_synth_t *synth, const fluid_mod_t *mod, int mode);
|
||||
FLUIDSYNTH_API int fluid_synth_remove_default_mod(fluid_synth_t *synth, const fluid_mod_t *mod);
|
||||
|
||||
|
||||
|
@ -261,7 +265,7 @@ FLUIDSYNTH_API int fluid_synth_write_s16(fluid_synth_t* synth, int len,
|
|||
FLUIDSYNTH_API int fluid_synth_write_float(fluid_synth_t *synth, int len,
|
||||
void *lout, int loff, int lincr,
|
||||
void *rout, int roff, int rincr);
|
||||
FLUIDSYNTH_API int fluid_synth_nwrite_float(fluid_synth_t* synth, int len,
|
||||
FLUID_DEPRECATED FLUIDSYNTH_API int fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
|
||||
float **left, float **right,
|
||||
float **fx_left, float **fx_right);
|
||||
FLUIDSYNTH_API int fluid_synth_process(fluid_synth_t *synth, int len,
|
||||
|
@ -283,7 +287,8 @@ FLUIDSYNTH_API int fluid_synth_handle_midi_event(void* data, fluid_midi_event_t*
|
|||
/**
|
||||
* Specifies the type of filter to use for the custom IIR filter
|
||||
*/
|
||||
enum fluid_iir_filter_type {
|
||||
enum fluid_iir_filter_type
|
||||
{
|
||||
FLUID_IIR_DISABLED = 0, /**< Custom IIR filter is not operating */
|
||||
FLUID_IIR_LOWPASS, /**< Custom IIR filter is operating as low-pass filter */
|
||||
FLUID_IIR_HIGHPASS, /**< Custom IIR filter is operating as high-pass filter */
|
||||
|
@ -293,7 +298,8 @@ enum fluid_iir_filter_type {
|
|||
/**
|
||||
* Specifies optional settings to use for the custom IIR filter
|
||||
*/
|
||||
enum fluid_iir_filter_flags {
|
||||
enum fluid_iir_filter_flags
|
||||
{
|
||||
FLUID_IIR_Q_LINEAR = 1 << 0, /**< The Soundfont spec requires the filter Q to be interpreted in dB. If this flag is set the filter Q is instead assumed to be in a linear range */
|
||||
FLUID_IIR_Q_ZERO_OFF = 1 << 1, /**< If this flag the filter is switched off if Q == 0 (prior to any transformation) */
|
||||
FLUID_IIR_NO_GAIN_AMP = 1 << 2 /**< The Soundfont spec requires to correct the gain of the filter depending on the filter's Q. If this flag is set the filter gain will not be corrected. */
|
||||
|
|
|
@ -31,10 +31,10 @@ extern "C" {
|
|||
* @brief Library version functions and defines
|
||||
*/
|
||||
|
||||
#define FLUIDSYNTH_VERSION "2.0.0" /**< String constant of libfluidsynth version. */
|
||||
#define FLUIDSYNTH_VERSION "2.0.5" /**< String constant of libfluidsynth version. */
|
||||
#define FLUIDSYNTH_VERSION_MAJOR 2 /**< libfluidsynth major version integer constant. */
|
||||
#define FLUIDSYNTH_VERSION_MINOR 0 /**< libfluidsynth minor version integer constant. */
|
||||
#define FLUIDSYNTH_VERSION_MICRO 0 /**< libfluidsynth micro version integer constant. */
|
||||
#define FLUIDSYNTH_VERSION_MICRO 5 /**< libfluidsynth micro version integer constant. */
|
||||
|
||||
FLUIDSYNTH_API void fluid_version(int *major, int *minor, int *micro);
|
||||
FLUIDSYNTH_API char* fluid_version_str(void);
|
||||
|
|
|
@ -39,7 +39,8 @@ extern "C" {
|
|||
/**
|
||||
* Enum used with fluid_voice_add_mod() to specify how to handle duplicate modulators.
|
||||
*/
|
||||
enum fluid_voice_add_mod {
|
||||
enum fluid_voice_add_mod
|
||||
{
|
||||
FLUID_VOICE_OVERWRITE, /**< Overwrite any existing matching modulator */
|
||||
FLUID_VOICE_ADD, /**< Add (sum) modulator amounts */
|
||||
FLUID_VOICE_DEFAULT /**< For default modulators only, no need to check for duplicates */
|
||||
|
|
Loading…
Reference in New Issue
Block a user