Software synthesizer based on the SoundFont 2 specifications
Find a file
jjceresa e24a41a447 Add Polymono Support (#306)
This commit implements the polymono functionality as per MIDI spec.
closes #306
resolves #158

Squashed commit of the following:

commit b56e92b378f21b7fbc189e8c580d85e679c2ee3f
Merge: 07f4c53 30c9dda
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Mar 3 14:20:23 2018 +0100

    Merge branch 'master' into polymono

commit 07f4c53b9a0e46f511134d39d72073523fc3e202
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Mar 2 16:51:46 2018 +0100

    update API docs for polymono

commit 82c74ff07251e0fb34b15a066f501bf1e968a51c
Merge: f07e515 ba2c053
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Mar 2 10:41:43 2018 +0100

    Merge branch 'master' into polymono

commit f07e515ebdeb3d075bd9307ebf8768a6ffaae3e3
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Mar 2 10:39:44 2018 +0100

    clarify comment

commit 7635825325a168f9ee383afd8023d82d4c33c185
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Mar 1 04:13:52 2018 +0100

    Enhancement of portamento performance calculation.
    - The lost of performance is now -0.5% rather -12%.

commit 09cb1d3ec6ced215adec9faa09fac5cae6c0f8fc
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Feb 21 19:40:17 2018 +0100

    moving polymono commands among synth commands

commit 63b8c480226b15d5d5bee5de8e1722a93ff69493
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Feb 21 03:16:10 2018 +0100

    fixes comments, FLUID_INLINE, update pdf

commit 49c1ee39d2ef525ac0af22ab22a4d8f8d49ab0e9
Merge: 200c860 4a0a736
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Feb 11 17:38:31 2018 +0100

    Merge branch 'master' into polymono

commit 200c8609582560d781c0d49b99a9d02bdb7d2a2a
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Feb 8 23:27:28 2018 +0100

    Fixes typos, update /doc/polymono

commit 9f6474cee712f947a0227957acbb4d1e4f56f2d6
Merge: cb7f43f 28b1bef
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Feb 7 00:44:52 2018 +0100

    merge before updating pdf document.

commit cb7f43feb56edeed016b0b3ad7293fbd64beb7ae
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Feb 7 00:40:52 2018 +0100

    fixes typos in pdf document

commit 28b1bef97a498ea5e15fdffb57b861998642bd5a
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 23:02:05 2018 +0100

    avoid type redefinition warning

commit 551940854053ccf0ff0d4cfd21d0e6328a9e657c
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Feb 6 18:58:16 2018 +0100

    cleanup fluid_synth.c

commit 263f9badcb7f75bf8027df60abb20b3354ea67e2
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 16:36:55 2018 +0100

    cleanup fluid_synth.h

commit fd58bc0c22756b67e75c80ed8efecfed9baf2901
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 16:30:46 2018 +0100

    move synth API macros back to fluid_synth.c

commit 101ea0961a18c4724d7bd7f4d47f5a7fc27bb679
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 16:17:15 2018 +0100

    rename fluid_synth_mono.c to fluid_synth_monopoly.c

commit ec60840304fdebf4d854a0879045249e9a90af79
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 16:05:06 2018 +0100

    move fluid_synth_polymono functions back to fluid_synth.c

commit b18e99d34fcfef1444f235bed4c866985433f072
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Feb 6 15:43:18 2018 +0100

    explicitly check for default_vel2att_mod

commit ceeba2af7824c3e12f6a5302d79d4e582732141d
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Feb 4 22:30:17 2018 +0100

    Using INVALID_NOTE instead of -1
    - polishing fluid_synth_noteon_monopoly_legato().
    - Adds chapter "introducing Poly/mono basic channels API" (2.6.1) in pdf.

commit 04d1a2119ad4847797c9cfc848a4158c6b0b3ce8
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Feb 4 19:49:25 2018 +0100

    const correctness

commit 7583bc24ad21df5e01b73b685f50e8a2eef3b2f3
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Feb 4 19:45:05 2018 +0100

    fix naming convention

commit a8e109f9f1ec3a55b6e0b9bfd9163e6dd4ea9e09
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Feb 4 01:39:58 2018 +0100

    fixes comments, update pdf

commit 1f33394a6579f9ee7341246df3e110db6926abeb
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Feb 3 17:19:33 2018 +0100

    remove duplicate comments

commit e9451695aafece991af74ee2cfb9368d256c728a
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Feb 3 17:06:09 2018 +0100

    specify enum types explicitly

commit f810f1942eaf19447ed29487209e227d7c4f8bd6
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Feb 2 18:54:03 2018 +0100

    fix construction of new_mode - cleanup comment

commit 3108da38ecc877e2f7428db0a988e1f05d324743
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Feb 2 11:42:44 2018 +0100

    cleanup fluid_synth_cc_LOCAL()

commit d61eea6aeff75cfb051e4baf546ff26073c2e62b
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Feb 2 11:18:46 2018 +0100

    inline warn string

commit b7ed427470309e85c44da632f6fe9a319fc49683
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Feb 2 11:16:14 2018 +0100

    unlock API mutex

commit bc12603c993bf4af8ad260e18fd79f46e98c0785
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Feb 2 00:33:04 2018 +0100

    fix comments in fluid_synth_polymono.c

commit 34d8b73d856e3a0f664bfc816f20beff5f340627
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Feb 1 23:59:27 2018 +0100

    fixes typos in comments

commit eba067d735118077bf6bd8bb4ebb4bdab5046258
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Feb 1 23:47:58 2018 +0100

    moving fluid_synth_check_next_basic_channel()

commit 7976be599a4940ec0dc4420954ef8cfe310dd386
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Jan 31 23:26:42 2018 +0100

    fluid_synth_set_basic_channel_LOCAL cannot change an existing basic
    channels.
    - Both fluid_synth_set_basic_channel_LOCAL() and
      fluid_synth_set_basic_channel_LOCAL() behave the same way.
    - Update documentation pdf.

commit a22d1a35fac5b4f697c1d41ae3e368a61a27d653
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Jan 30 14:07:50 2018 +0100

    command setbasicchannels can change an existing basic channel.
    - fix comments.
    - update documentation pdf.

commit 4777f7b1f428935691be7d1289cb244c56137793
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Mon Jan 29 23:37:16 2018 +0100

    fluid_synth_set_basic_channel() is not allowed to change an existing basic channel

commit 5161e4cec71a5c09eed08510458544257b7a66b2
Merge: 435d062 2a4b208
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Jan 27 14:40:58 2018 +0100

    Merge branch 'master' into polymono

commit 435d062513583dea397686ec8fd442eba732f820
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Jan 27 00:09:42 2018 +0100

    Fixes typos, update pdf documentation

commit 13a8c6c6dd1a7dc861e367aed286c7f071b4e0ea
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 26 19:49:18 2018 +0100

    correct comments of fluid_synth_set_basic_channel()
    - comments compliant with MIDI spec when val is 0.
      "means all possible channels from basic channel to
       MIDI count - 1".

commit 0689257d8f1e880617a6039b677c1fe26a02d27b
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 20:03:07 2018 +0100

    remove redundant channel mode flags from public API

commit d632e30c419652cbb5e986fb35aeaf055dfc5b43
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 19:57:11 2018 +0100

    make fluid_synth_get_basic_channel() only return MIDI modes

    not fluidsynth's internal flags

commit d1aa433e4a9aa1121bfaa78e1aa33e7ea5a88bae
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 19:43:42 2018 +0100

    update API doc of fluid_synth_reset_basic_channel()

commit b96f17b0c95a43e172da876108cb50756d023f94
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 19:34:21 2018 +0100

    make val of fluid_synth_set_basic_channel() compliant to MIDI spec

commit 904fd36bc1fa7013665190d3a54469094892c0ec
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 19:25:16 2018 +0100

    rename fluid_synth_reset_basic_channels() to fluid_synth_reset_basic_channel()

commit 15a52f6bdfda37f5b25909ad566405543b4c0572
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Jan 25 19:21:00 2018 +0100

    API doc cleanup and clarification

commit 74c22da6fbfc3444cba448945579e451c28a333b
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Jan 24 13:50:45 2018 +0100

    Fixes mores comments in synth.h, fluid_cmd.c, fluid_synth_polymono.c

commit 6718cfe68e8e4209bfc396d53bdc71f27edea1ba
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Jan 23 20:19:17 2018 +0100

    fix build, fix minor comments

commit 9a4d9afc4230a3ff1ebfe8f5035ddd4aee1d4484
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Jan 23 19:53:12 2018 +0100

    Cleanup basic channels API.
    - Removing fluid_basic_channels_infos struct.
    - Removing fluid_synth_get_basic_channels() API.
    - Clarifying fluid_synth_reset_basic_channels() API and fluid_synth_set_basic_channel() APIs.
    - Changes commands resetbasicchannels , setbasicchannels accordling to API changes.
    - Replace fluid_synth_get_channel_mode() API by fluid_synth_get_basic_channel() API.

commit a2ec80ded11f95fcbde842c69b69efd8023c0e44
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 19 13:35:32 2018 +0100

    update examples in /doc/polymono, fix comments

commit 1f283c49551d546db2394ba376291f716f8f3bbc
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 18 18:15:47 2018 +0100

    remame SIZE_MONOLIST to FLUID_CHANNEL_SIZE_MONOLIST

commit 06093a23e42379ba05ba888937bc9351208583c0
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 18 16:08:43 2018 +0100

    Adding comments compliant with MIDI specs.
    - Adding comments compliant with MIDI spec. for val parameters.
    - Cleanup comments.
    - Cleanup pdf document.

commit 87e1dbda569b91f5f585232e4ca9086ac579b350
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Mon Jan 15 10:23:43 2018 +0100

    Adding fluid_synth_get_previous_basic_channel()

commit 82fa1702643a506667c6d997962ac63381ce81ce
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Jan 14 11:28:37 2018 +0100

    adding fluid_channel_update_legato_staccato_state()

commit 3309b6f172c56e9cb7c95fbeb09f6ebfe88351da
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 12 22:49:22 2018 +0100

    integrates fluid_channel_keep_lastnote_monolist()

commit 92f1e9230d065c8153baf64b77222891de417c99
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 11 02:24:53 2018 +0100

    adds comments

commit f4241272d8fdd70da268fbdf04458055f084c446
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 11 01:32:53 2018 +0100

    Removing prev field in mononote struct
    - this is replaced by adding i_prev parameter in  functions
      fluid_channel_search_monolist(),fluid_channel_remove_monolist().

commit b09da5ed213ba36279755a306c379d33e3cd3716
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 11 01:28:11 2018 +0100

    update comment API, update pdf

commit 3308ca252d1f5894be6d9c26bb1763a2efb6a5a9
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 10 11:01:45 2018 +0100

    use fluid_cb2amp rather than fluid_atten2amp

    fixes build

commit 6d648f44aeb1132e0f576521c2f35c4e30e7122f
Merge: f881a08 37218ba
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 10 11:00:41 2018 +0100

    Merge branch 'master' into polymono

commit f881a08e6b3019f07a675e3dc11972364f1e4620
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Jan 10 09:51:23 2018 +0100

    naming convention for fluid_synth_polymono

commit bfb359a3299c7c6cc3384aa11a63eac354d93b62
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Jan 9 13:16:52 2018 +0100

    apply allman braces

commit 9275d7ae677463f8354c1163d9fd5af92a669b40
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Tue Jan 9 11:23:18 2018 +0100

    adding result checking functions

commit 6e3c804ca4a43394929b6f77b6f43d486ea1db24
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Mon Jan 8 12:48:39 2018 +0100

    removing tabs mixed with spaces

commit 94c46a8b689db7ce2e214f574d061d1f61f73e4b
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Jan 7 19:29:01 2018 +0100

    fix comment

commit 1bedf8d5d4c547a7d7c9b920e7bfefa8204ed894
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Jan 7 19:05:06 2018 +0100

    rename key_sustained, cleanup, fix typos

commit 959144acad2312085ade3071c2cfa5b82ab87511
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Jan 7 04:36:27 2018 +0100

    fix typos in comments

commit c7b25cfd120f70c5b4092e5c625e903eeb40afdc
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Jan 7 04:17:15 2018 +0100

    cleanup on search/remove monolist functions

commit 756424065e67913b09a1945413cde4513f727426
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Jan 6 20:22:22 2018 +0100

    fix typo

commit da991a236fac2e273aa9d60acb89061db956e980
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Jan 6 20:20:51 2018 +0100

    use FLUID_STRCMP wrapper macro

commit 0dc6d9bcd06615f9d33dfea7beec5fa29dc7230c
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Jan 6 00:22:48 2018 +0100

    simplify arguments checking functions

commit 0103aa4ab08ab3cc8fe12906e8193f6a2a1984bd
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 5 16:57:12 2018 +0100

    fix build warning

commit 26773a567b894e2720038a26752b56b8705f4464
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 5 16:04:17 2018 +0100

    declare release_voice_on_same_note_LOCAL in fluid_synth.h

commit 693ba8d300d824674b3d3d0dea0d89eb46a83e69
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 5 15:50:39 2018 +0100

    fix global cc, update comment, update pdf

commit 9d35a509480aef4ea5be09c453fc0c5ce7e53077
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Jan 5 14:44:22 2018 +0100

    adding arguments checking functions

commit bd63cd2021bf46a78454884ba5c76a9659d3e5ee
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Jan 4 18:01:57 2018 +0100

    missing static const

commit 4d24109b457a038cfb70d7e2fbe7fbbd1e25d05c
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 20:04:38 2018 +0100

    apply naming convention to is_valid_note

commit b1b6738b982cddd4c08839f557a46a6c8b23fa02
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 20:00:46 2018 +0100

    reoder fluid_channel_* declarations

commit 56279b2622d738c1c910d7c64a30ab055670a6a1
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 19:56:40 2018 +0100

    move fluid_channel_*() functions to fluid_chan.c

commit 2e54feb3beb0b89ec2203de259fa93c5343f1dfe
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 19:30:46 2018 +0100

    more naming convention for fluid_synth_mono.c

commit cd84bf96af7b4219920b5b070fbbf606eb5a21ef
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Jan 3 18:57:13 2018 +0100

    simplify portamemto pitch calc.

commit af98b362ed0d471c46b7f1475c3c0de469d4f432
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:37:42 2018 +0100

    readd accidently removed custom_breath2att_mod

    fix build

commit 1a4d5d392bee44677ed8e633d2acf4589b3dfdf6
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:35:16 2018 +0100

    make fluid_gen_info static again

commit da4481dc278069cdc7452cd5e533613191df4830
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:35:08 2018 +0100

    fix comments

commit fa6734bcdc66c581de39ff8db56d737852111a86
Merge: 47a0718 dd2b78a
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:14:35 2018 +0100

    Merge branch 'master' into polymono

commit 47a0718175ca8bd900d8ed823d502f0ef004a7d5
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:11:36 2018 +0100

    cleanup fluid_synth_*() forward decl.

commit c730bcf296c0e5895158ef08bbee278a33e43e93
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 10:06:32 2018 +0100

    move polymono fluid_channel_* macros to fluid_chan.h

commit 228c7bca6a17c13ac5a82d8faaf3fbc1fba39162
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Jan 3 09:57:09 2018 +0100

    apply naming convention to polymono helper macros

commit 0d2e16497f93b02649041a7dd5ff0697e94b443c
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Mon Jan 1 22:36:10 2018 +0100

    move param checking, FLUID_API_ENTRY_CHAN to API, cleanup

commit 1d73cec83bc4da75b754191db0105097874c8f39
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Mon Jan 1 17:52:59 2018 +0100

    remove redundant null termination for FLUID_SNPRINTF

commit bca5472c347ef17203dfe7d37311a24b1c608b64
Merge: e64b08a 70dffe7
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Mon Jan 1 17:49:25 2018 +0100

    Merge branch 'master' into polymono

commit e64b08a800976bd5176a594f93ea4e050db5846c
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Dec 31 15:22:54 2017 +0100

    fix scope mode names

commit fba23b6a018a96c4cb3779b43de79eb1b82b0495
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Dec 31 14:53:11 2017 +0100

    fix comments, typo errors, update doc

commit 330826eb4739e8521a31d58205359a353e7fc9ef
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sun Dec 31 05:34:37 2017 +0100

    adding mode name for shell command

commit 52689198d1224540b36fc584aad0d885c9eea39a
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 22:48:37 2017 +0100

    update doc API fluid_synth_set_basic_channel()

commit 329df43f5d67a99b8dcdf2c7c6dd35bec6b3e356
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 19:18:45 2017 +0100

    fluid_synth_get_channel_mode() return basicchan

commit 29de66116b2bf7a1545818a0604adf5a0559420f
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 17:59:32 2017 +0100

    Simplfying fluid_synth_set_basic_channel signature
    - also cleanup variable declarations (static, scope, ...).
    - calling fluid_synth_set_basic_channel_LOCAL() instead of
      fluid_synth_set_basic_channel().

commit 5e9bc3977a9a3616ac4697c6b16e186656cd2baf
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 03:39:24 2017 +0100

    cleanup status variable and rename variables

commit 650ad51af9fcb1fa88ab64cfad868ce0d80fc917
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 00:55:16 2017 +0100

    remove basic channels settings
    update FluidPolyMono-0004.pdf
    - removing basic channels settings.
    - addding comment for Global channel.

commit 1bbb520ab9b5c9b5cb954f3bc3d0ecf929237369
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Sat Dec 30 00:49:31 2017 +0100

    update comments on breat flags

commit 795321aa8710c409dccd4773ccd8491f5427a7d9
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 20:28:30 2017 +0100

    reorder synth API macros

commit e1589234d01a62e304e8edf53107e5a404829367
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 20:20:52 2017 +0100

    introduce FLUID_API_RETURN_IF_CHAN_DISABLED macro for synth

    to reduce nesting

commit f8dee9b6ab02140d2104167fe7d273bfcf597abb
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 19:42:15 2017 +0100

    correct API comment of fluid_synth_cc()

commit 41083f4b970fa46e652609f92302f228dc6fe550
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 10:49:43 2017 +0100

    fix build

    forgot to commit fluid_synth.c

commit ac04f365c715615f44885445ba7666050c655525
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 10:49:03 2017 +0100

    remove redundant fluid_channel_get_cc_portamento helper macro

commit d707f5e0bc8807c4c43b51eb0503ef91f0d5c8b9
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 10:45:13 2017 +0100

    fix naming of fluid_channel helper macros

commit fa38f6a9b2c3250f9dd77e5fd94a7107790ad1f6
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Dec 29 10:44:49 2017 +0100

    handle BREATH_MSB is switch-case

commit c68c7eb40cd020f0a0b068d8497328692c8e0800
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Fri Dec 29 00:20:10 2017 +0100

    fix comment in enum fluid_basic_channel_modes

commit 56a63af296bc90f8b0e8bd075e7b4b57d2425310
Merge: c29e401 d35601a
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Dec 28 20:33:19 2017 +0100

    Merge branch 'polymono' of https://github.com/FluidSynth/fluidsynth into polymono

commit c29e40157921a2de0abe8e8d7ff467ea63bc33a7
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Dec 28 20:32:33 2017 +0100

    reorder polymono API calls

    to place them after the other synth functions

commit 6ac82ff2b7a4b4079ec5121b40fe06bd13a4d08c
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Dec 28 20:29:52 2017 +0100

    cleanup polymono API comments

commit d35601ae5a71bfbb11f2e6ea79c5a7bf766f6983
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Dec 28 19:15:10 2017 +0100

    Fix typo in FluidPolyMono-0004.pdf
    Cleanup fluid_synth.c

commit 731c59bcd64ac4e1ef06decf36774ed771c7bd41
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Thu Dec 28 16:50:03 2017 +0100

    Fix parameters checking in commands with no arguments.

commit 6d0fa0f53ed07edaf0a71bc219d807ee35a5f50d
Author: jjceresa <jjc_fluid@orange.fr>
Date:   Wed Dec 27 11:33:58 2017 +0100

    update doc/polymono/readme.txt

commit 3fa932e9188e27241be4acb4c4d3360ba630eda7
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Dec 24 22:20:05 2017 +0100

    - Fix typos errors.

commit 59e2ed3cc52c782dbad17847f083b96fff004165
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Dec 24 00:03:57 2017 +0100

    Comments additions.

commit 88f11588750b1e8196508c19e32e98ca540bf3f2
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Dec 23 23:42:21 2017 +0100

    Removing fluid_voice_update_release() signature.

commit 9b8cd5e5532a6f87ed516b83f728509f2ad0d890
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Dec 23 23:38:50 2017 +0100

    Removing fluid_voice_update_release().

    - removing fluid_voice_update_release().
    - adding comments.

commit 2787d150deb0c64519507f4fbfa8ef58a28d11b9
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Dec 23 23:24:55 2017 +0100

    Using fluid_voice_release() in legato mode 0.

    substitute fluid_voice_update_release() by fluid_voice_release().

commit 68f7c7778b07a384d3d1648bb34bcf705a05affb
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Dec 23 23:14:12 2017 +0100

    Add comments to poly/mono public API.

commit 51cedfdfed88883e00f08e4e9253f5bf08cb5287
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Dec 23 00:55:09 2017 +0100

    Update FluidPolyMono-0004.pdf

    -Cleanup chapter 1.
    -Update doc API.

commit 1ac23daf6dd10f1d1c0afc52bf1d7182d4d0538f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 23:12:38 2017 +0100

    Change enum in fluid_cmd.c

commit 902f603c102689b58f86dfd789c01155d26c8bd8
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 23:09:38 2017 +0100

    Change enum names in fluid_synth_polymono.c

commit df52819193c058cbce9201af647e740931889900
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 23:03:59 2017 +0100

    Change enum names in fluid_synth_mono.c

commit 8aea95e0f4276d9904f9428e9a2cc93d8188a3e3
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 22:56:29 2017 +0100

    Change enum names in fluid_chan.c

commit da0e94c2a8d8d7af8c5bbd81de7fa4cb7953372b
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 22:52:54 2017 +0100

    Change legato and portamento enum

    -Change enum LegatoMode to enum fluid__channel_legato_mode.
    -Change enum PortamentoModeto enum fluid__fluid__channel_portamento_mode

commit 75309ef3a322050b4d452144028ca909fef0977c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 19:22:30 2017 +0100

    Channel mode and Breath in commands

    Make use of enum fluid_basic_channel_mode_flags.

commit 0aca0a4e9405dc2201f7201904a0192af0f4f5d4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 19:14:12 2017 +0100

    Channel mode and breath   in fluid_synth_polymono.c

    Make use of new enum fluid_basic_channel_mode_flags

commit 4828760f45326884322d850ec50401825ded997b
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 18:52:59 2017 +0100

    Rename enum in Fluid_synth_mono.c

    Make use of new values enum fluid_basic_channel_mode_flags

commit a0246d16ed5db3d5771a9a60c13d66c628e11447
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 18:44:31 2017 +0100

    Rename enum in fluid_synth.c

    Make use of new enum  fluid_basic_channel_mode_flags

commit ba6dea233ab6667361eaefbb0e9b8cacbab6724f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 18:10:34 2017 +0100

    Change MONO name

    Change MONO to FLUID_CHANNEL_POLY_OFF

commit 091bf7f3eeab75f1d5766592da9e6a0b1b1da5f4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 18:04:48 2017 +0100

    Renaming enum fluid_basic_channel_mode_flags

    -Renaming enum fluid_basic_channel_mode_flags values.
    -Integrating Breath mode in enum fluid_basic_channel_mode_flags values.

commit de945f2bb3af2692f9268e3afb37093709d47845
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 03:56:40 2017 +0100

    Move signatures to fluid_chan.h

commit 614b74202b7c2d6aaf6b75cc524c908523549e37
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 03:54:36 2017 +0100

    Add sigature functions.

    void fluid_channel_set_onenote_monolist(fluid_channel_t* chan, unsigned char key, unsigned char vel);
    void fluid_channel_clear_monolist(fluid_channel_t* chan);
    void fluid_channel_invalid_prev_note_staccato(fluid_channel_t* chan);
    void fluid_channel_cc_legato(fluid_channel_t* chan, int value);
    void fluid_channel_cc_breath_note_on_off(fluid_channel_t* chan, int value);

commit 963a37a36f3c2b2d494deeb472efe8b4ce5365a7
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 22 01:39:25 2017 +0100

    fix incorrect cast

    fix incorrect unsigned cast.
    remove unused extern.

commit 67ff72659f4e83a0e0e24912e919071ae692f590
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 23:45:12 2017 +0100

    fix comments - fix help commands strings

commit 2c4aff8773a363fa5902f1425c302bd4da8c8c68
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 23:11:53 2017 +0100

    Fix comments.

commit 301712ac4686d2768aa6d441492a172f805c7fc4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 23:02:55 2017 +0100

    Update FluidPolyMono-0004.pdf

commit d4c4d0fc1382ee8795d3565d2373e8c2f36600a4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 22:45:07 2017 +0100

    Update FluidPolyMono-0004.pdf

commit 410b073565395ce6bc73194c99d9f8d48d632642
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 22:33:44 2017 +0100

    Add files via upload

commit 0ce5bc65a676144631a3264ef27a6602b87152ae
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:27:16 2017 +0100

    Update poly_mono_4.txt

commit 088fd806464187dc23e07c843c3a25925a94313f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:22:36 2017 +0100

    Adds files leg_port_00.txt - leg_port_01.txt

commit 9b98446a3f1c49c7bfcd51eb00a726eb918cdb70
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:13:29 2017 +0100

    Delete leg_por_4.txt

commit c832a9b123af5456bce860197786f50555111652
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:13:12 2017 +0100

    Delete leg_por_3.txt

commit 8cacbb99375b37310e30c1a681bcdcb204a9bd91
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:12:57 2017 +0100

    Delete leg_por_2.txt

commit af04826db6ca384ed1797fcedf9200db40bbe458
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:12:42 2017 +0100

    Delete leg_por_1.txt

commit 0cdf52de97779720917839f842d776eb7e1a7856
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:12:25 2017 +0100

    Delete leg_por_0.txt

commit d750fe34dbd918bf0f3e6be391befc16c962bd1d
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:10:12 2017 +0100

    Update leg_01.txt

commit 1d9541d8cddb3a761d26739556275560d43acc10
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:08:53 2017 +0100

    Update leg_00.txt

commit 237f6d500c375aea569930c675ff3463796e71b6
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:03:44 2017 +0100

    Delete Legato_demo.sf2

commit e875c02fbe8bf11fb3cb3ffc847e1d786c952a15
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 19:01:34 2017 +0100

    Update readme.txt

    Removing soundfont file

commit 07335cfdb93a6b65d595debdef7973b53adfb62e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:36:23 2017 +0100

    Add FluidPolyMono-0004.pdf

commit aa94b3fe12a1301a23c10a3f69a8212d18c36d8e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:34:36 2017 +0100

    Update readme.txt

commit 3aa942922149541102f2c46584aac1aa1341c5ab
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:33:54 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit ddd9b2de37d056a20b430f113e351ea6c786fc8e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:30:52 2017 +0100

    documentation files adding/update

         leg_00.txt
         leg_01.txt
         poly_mono_0.txt
         poly_mono_1.txt
         poly_mono_2.txt
         poly_mono_3.txt
         poly_mono_4.txt
         poly_mono_5.txt

commit 89983fb42eb54a6bab5b6045e5a31a6800ef23ba
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:26:50 2017 +0100

    Update readme.txt

    Removing legato modes 0,3,4
    Tutorials examples addition chapter 2.1
         poly_mono_0.txt
         poly_mono_1.txt
         poly_mono_2.txt
         poly_mono_3.txt
         poly_mono_4.txt
         poly_mono_5.txt

commit dcedce20d79d317c834bfd6c961a3fdf87ed1f7f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:17:56 2017 +0100

    Delete leg_2.txt

commit a9d765def0170e204027abfa42fc02acfdd47704
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:17:29 2017 +0100

    Delete leg_1.txt

commit 8e0fc533d69cb261c0cfd6a8f58fe729b758ab0e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:17:00 2017 +0100

    Delete leg_4.txt

commit ae670075e592241830ef539c9bf26c4cd84a3a47
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:16:14 2017 +0100

    Delete leg_3.txt

commit 6040f7575277f53c8803155d58fd158cb8e29a5f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Dec 20 00:15:23 2017 +0100

    Delete leg_0.txt

commit 1e8c4ad4dc7b6ecd0727a73b0ac814679b9fd4f3
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 23:34:03 2017 +0100

    fix build type conflict.

commit a0fa4debd6fc21d652edfabaaf963b31babcd045
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 23:21:10 2017 +0100

    Removing legato modes (0,3,4).

commit f53476bfc0c46b313f5b293243a3f3b6d9c3af64
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 23:01:50 2017 +0100

    Removing legato modes (0,3,4).

commit d69868bdb8179e1eb75661d6b02799de0d7a3e48
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:57:22 2017 +0100

    Removing legato modes (0,3,4).

commit ebd37fdb680e3062f0174fe7c414b3fce6b8c60f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:53:38 2017 +0100

    Removing legato modes (0,3,4).

commit 265eeb4f321a8bab54ae6aa700474d96a3c83951
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:47:25 2017 +0100

    Removing legato modes (0,3,4).

commit 601216e83e01953c58ceabd0e44cc4f361d1c4ae
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:44:18 2017 +0100

    Removing legato modes (0,3,4).

commit 16b0e65697d57d3bc653e3419d924799b37e3a01
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:39:17 2017 +0100

    Removing legato modes (0,3,4).

commit 5c4b9322e7b6f8600be9849d869233f20beb3d4c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:31:16 2017 +0100

    Two legato modes 1 and 2 (rnumbered 0 and 1).

    Removing legato modes (0,3,4).
    Legato modes 1,2 are numbered 0,1 respectively.

commit 8c4096910e9e44c896f7169345d6a262a17e522d
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:25:33 2017 +0100

    Two legato modes 0 and 1 (dfefault mode: 1).

commit fb4205b215648efc1949708073f68237eed8679a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 19 22:20:56 2017 +0100

    Two legato modes 1 and 2 (rnumbered 0 and 1).

    Removing legato modes (0,3,4).
    Legato modes 1,2 are numbered 0,1 respectively.

commit d0adfe31f4961d034483a95705ac8b86839cf11d
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Dec 16 11:42:31 2017 +0100

    refactor poly mono bit flags

commit da5ac8dd79479b6a19f5c3608be7ec3507a5b637
Merge: 13754fa 07a167c
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Dec 16 10:37:34 2017 +0100

    Merge branch 'master' into polymono

commit 13754fad6acbce51bdf5b57526a4ca243948a3ed
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Dec 15 19:38:04 2017 +0100

    Fix bug in new_fluid_preset_zone().

    Add missing initialization since moving ignoreInstrumentZone check to fluid_zone_inside_range().

commit 64dc235485a004e7b0f6e8f9afae1375321f6afa
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Dec 13 13:41:32 2017 +0100

    move ignoreInstrumentZone check to fluid_zone_inside_range()

commit 427a513e2caac645bc571a8fbe7e3a513f874fa1
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Dec 13 13:20:36 2017 +0100

    fix spelling of IGNORE_INST_ZONE

commit c9b74903f1e54976b0ed3e5d4aa5e5a2ba2f8c1c
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Dec 13 13:17:32 2017 +0100

    remove redundant NULL check

    fixes #302

commit 9c8f41be408475ebc8a16dbf468067c795ee5830
Merge: 09fcf6c 5806d9e
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Dec 10 10:03:31 2017 +0100

    Merge branch 'master' into polymono

commit 09fcf6c3fc36739a29b79008224dd0b46f827cd1
Merge: 9440884 1629f9f
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Dec 9 15:16:51 2017 +0100

    Merge branch 'master' into polymono

commit 944088440f4c91ce712909a12af1332b09b9a1c5
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Dec 5 00:51:55 2017 +0100

    fix bug GEN_VELRANGE

commit 73caf02a323776bd320d30624ebe4dd60a1c940f
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sun Dec 3 14:59:30 2017 +0100

    cleanup

commit b0f43feac5de166f5791d6203d4c78f9f4f3ab38
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sun Dec 3 14:31:45 2017 +0100

    rename fluid_inst_zone_range_t to fluid_zone_range_t

    find . -type f -exec sed -i 's/fluid_inst_zone_range_t/fluid_zone_range_t/g' {} +

commit 133b418ca5641579eb22cacb5059c48b642b8f5e
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sun Dec 3 14:28:45 2017 +0100

    make use of range struct for presets as well

    remove code duplications

commit 42e23a5e398520959bf1124439539e0f278a80fc
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sun Dec 3 13:44:33 2017 +0100

    remove zone_range from _fluid_synth_t

    prefer explicit parameter passing rather than hacky non-threadsafe param struct saving

commit 2bc061557b9aedb9a2c0f891488aeb1122272395
Merge: 6037bdb cdfe8d3
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sun Dec 3 13:31:57 2017 +0100

    Merge branch 'master' into polymono

commit 6037bdbd30f793b007c589b5f870cabea2c85c6a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 23:45:10 2017 +0100

    fix parameter flfuid_voice_init()

commit bb0da222bd420989b63b0229568b178e8da3e293
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 23:24:12 2017 +0100

    fix IGNORE_INST_Z0NE

commit d8752cc835b52eda6122dba7d6ab2354a7e83deb
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 23:16:56 2017 +0100

    fix fluid_voice_init in voice.h

commit 41e4b77fe5f6fc0766b1974d5031d516a7ff0c11
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 23:04:45 2017 +0100

    Add zone_range tp poly_mono.c

commit f3550d18e74845a09800af8aef12f5c5da21fc7b
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:51:30 2017 +0100

    Add zone_range to fluid_voice_init()

commit 2e9ebad6cb5bd44e82674e87ef4fb7b88b9b9445
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:48:13 2017 +0100

    Add zone_range to fluid_voice_t

commit d779583c490d85ea8b14481fcedbe50efda27aed
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:41:45 2017 +0100

    restore fluid_synth_alloc_voice signature

    restore fluid_synth_alloc_voice signature  to synth.h

commit 27a4e4407843cfb7c7c86b6a99c0f10d43ad4326
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:36:06 2017 +0100

    Add zone_range to fluid_synth.c

    Restore API signature luid_synth_alloc_voice()

commit f4749fc88372a32b055a6dcb6a1b00e247d15c6b
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:27:03 2017 +0100

    Add zone_range to fluid_synth.h

commit 7250f40d7aa3dc074c3ffd6dfb1e6aa2821c26f2
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:24:37 2017 +0100

    Add zone_range to ramsfont

commit a3ffce39355c7fcb86c25ae5c0254758a502b1f3
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:19:39 2017 +0100

    Adding zone_range.

commit e2f99a91e58950373f99032eb1fa752805ed8eee
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 22:03:44 2017 +0100

    type fluid_inst_zone_range_t

commit adb5e74311b6010289d7f672985cc24f9153bcfd
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 29 21:57:05 2017 +0100

    Adding fluid_inst_zone_range_t  in fluid_inst_zone_t

commit 89ed46f063301096f0ce4a3b673a8fce3b6c4cde
Merge: 45773e1 7ed5d1f
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Fri Nov 24 17:40:17 2017 +0100

    Merge branch 'master' into polymono

commit 45773e14d21a56085da7344d0168fb87a9a58607
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 23 23:44:10 2017 +0100

    Ignore voices when there is no instrument zone.

commit 156eb2f547cff9e0bca43830ed35f9bb315e48c4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sat Nov 11 00:03:29 2017 +0100

    Fix warning build

commit 1b1233014a3d8b1fdf043d1fdd4ea51cb6b0aaf9
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Nov 10 20:06:23 2017 +0100

    Fix fluid_voice_is_on(voice)

commit 88317aaaa8e33f999393a0a582110642e1726e93
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Nov 10 19:55:30 2017 +0100

    Replacement of macro _ON(voice )

    Replacement of macro _ON() by fluid_voice_is_on()
    Note : fluid_voice_is_on() isn't yet in fluid_voice.h, so to avoid a failing build
    we define fluid_voice_is_on() extern.

commit 0ba247f2c6c5b93c3354069b791b46be9d9b6235
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Nov 10 18:35:34 2017 +0100

    Fix functions naming in chapter 4.

commit aeaceefa24b03f0ff28b6fb734c56ab40d16fbf8
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Nov 10 18:34:25 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit 24f1fa56974dde407007b48f065f0779d78ddfb5
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Nov 10 18:31:25 2017 +0100

    Addition of missing comments

    Comments in fluid_synth_noteon_LOCAL(),
    fluid_synth_damp_voices_by_sustain_LOCAL(),
    fluid_synth_damp_voices_by_sostenuto_LOCAL()

commit 023a101642fc246c542e900cabdbc1dae24829f0
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 23:15:59 2017 +0100

    renaming functions

commit 87e26ff24b7f30731ff59878f444c58747dc3277
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 23:08:46 2017 +0100

    Renaming functions

commit 1b41b67e6fd9ec4ee789abc0448bec8db8923046
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 23:04:54 2017 +0100

    renaming functions

commit 486dfed111bce8e48b4bad59d0330e4593e92cbf
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 22:59:41 2017 +0100

    Renaming functions

commit 0d5269520b652114251c13f0d87b2c8ec062a60c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 22:01:24 2017 +0100

    Fix build

commit 7c0c3c2944ee15a69d7e1b6c1ae6d4c35f062156
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 21:58:46 2017 +0100

    Fix build

commit 1c7958250d48bdfa46b7df8918d087323ee9bc4c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 20:15:35 2017 +0100

    fix build

commit dd4c86a2245c76c74781fa3dfa236cd9acfd225e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 20:02:32 2017 +0100

    Fix build

commit 490d0745dc6e6338b2641f68bac8da86a83b6ed7
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 19:49:29 2017 +0100

    Add macro #define _ON(voice) to fix build

commit 553a1dc13b87ea0158c7dd2cab8aa7787dc60f2f
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 18:26:04 2017 +0100

    Fix build in legato_on_off()

commit e075c1e7ba695f3529422c74a77ed2571368a729
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 18:22:10 2017 +0100

    Fix comments

commit fe763339e3ac3872afcb7bbf557884d31306868a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 18:19:01 2017 +0100

    Fix comments

commit 662a3632d863fab6e9a949e4030f3018cea49660
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 16:41:37 2017 +0100

    Updating Chapter 4

commit e15a0198fe6af9c52004159933faeb7cc7bdb0fc
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 16:40:30 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit 5bec835f3aa7c4d605a04d66b7eadce9aaf2e276
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 16:01:00 2017 +0100

    Renaming fluid_synth_noteon_mono_legato()

    Renaming fluid_synth_noteon_mono_legato() to fluid_synth_noteon_monopoly_legato()

commit 1192769461366dbe496ae41d3ba24f97418013eb
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 15:56:17 2017 +0100

    Renaming fluid_synth_noteon_mono_legato()

    Renaming fluid_synth_noteon_mono_legato() to fluid_synth_noteon_monopoly_legato()

commit f76b3062f8ec32ad0cc361af3b4755db128e020e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 15:52:51 2017 +0100

    Renaming fluid_synth_noteon_mono_legato()

    Renaming fluid_synth_noteon_mono_legato() to fluid_synth_noteon_monopoly_legato()

commit b80684df57523f55f346c95e4731756715821572
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 15:47:57 2017 +0100

    Renaming fluid_synth_noteon_mono_legato()

    Renaming fluid_synth_noteon_mono_legato() to fluid_synth_noteon_monopoly_legato()

commit 181affa17f9099fb3606ee326ee819ad4736cc6b
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 15:45:51 2017 +0100

    Renaming fluid_synth_noteon_mono_legato()

    Renaming fluid_synth_noteon_mono_legato() to fluid_synth_noteon_monopoly_legato()

commit 2efbfa98c7a2f80a11a8847ff3d89cc2d545f971
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 00:11:39 2017 +0100

    Update documentation

    Addition of figures in chapter 4.
    Part 4: Appendices for understanding implementations in FluidSynth.

commit a32b12b15c37669c1c1bda9228955bacd9844400
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 00:08:26 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit ee3820fedd5024131ecbf0f6a66936792c651818
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 9 00:01:45 2017 +0100

    Comments addition

    Comment addition about the size of monolist SIZE_MONOLIST.

commit fbf496d8f7c79ed8a72ffb22a12f0ead28815084
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Nov 8 23:57:59 2017 +0100

    Comments addition

    Comments addition relative to FluidPolyMono-0003.pdf chapter 4:
    "Appendices for understanding implementations in FluidSynth"

commit af551859b7558e73915c6fefab873c0ebb46221c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Nov 7 00:29:30 2017 +0100

    Update FluidPolyMono.pdf

    Removing obsoletes chapters.
    Adding appendices for understanding implementations in FluidSynth (see chapter 4).

commit 8953f099bcfbeb58ecbf0b4ad69e97d004cef7bd
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Nov 7 00:26:36 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit d000ddac93df0c12ecbe4b2de6b3d4fee1b6b06e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Nov 7 00:23:33 2017 +0100

    Fix typos errors

commit 539c0b3c5db214765ada1ac214391bea33aa2f97
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Nov 7 00:19:06 2017 +0100

    Fix typos errors

commit 168669bb603fff83166e3c8df1aff972415dd921
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 03:11:11 2017 +0100

    correction typos erros

commit 8afb104f880660c08556f712aa804c2cb889eb2d
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 02:16:02 2017 +0100

    Adding a new chapter.

    Adding chapter :  3.11.	PART 3: APPENDICES FOR UNDERSTANDING IMPLEMENTATIONS IN FS.

commit d21a528e474e13d62ac4141d224b9d1d16ca8a29
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 02:13:16 2017 +0100

    delete FluidPolyMono-0003.pdf

commit 942d911dc886ef391cb8975b93c4380c1c4d8977
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 02:07:08 2017 +0100

    changes functions name

    invalid_prev_note_staccato(), legato_on_off(),breath_note_on_off()

commit 62c2529ae3f983797713b64cdaaa2e4c2cb2e3c9
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 02:01:03 2017 +0100

    Changes names functions

    invalid_prev_note_staccato(),legato_on_off(), breath_note_on_off()

commit 10271467d86530b16ef606ddbda964215e73690e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Nov 5 01:53:35 2017 +0100

    update functions documentation

    Documentation addition.
    Correct get_fromkey_portamento_legato() name.
    Changes names: legato_on_off(), breath_note_on_off(),invalid_prev_note_staccato()

commit decf7817706a5ade25903730d11135acfee77817
Merge: 84ee8b3 30c0a72
Author: derselbst <tom.mbrt@gmail.com>
Date:   Sat Nov 4 08:52:21 2017 +0100

    Merge branch 'master' into polymono

commit 84ee8b3304d87485cd21d802214d670183e51c17
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 20:18:03 2017 +0100

    Polishing and documenting

commit 99eaf83cef87555926c0078eb38912901a80b003
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 20:14:36 2017 +0100

    Polishing and documenting

commit 172a9b0cae9aef9a18abb31aa4c2d7543b4ea054
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 19:43:51 2017 +0100

    Polishing

commit 0d0b47181df5cea717ab848e88e5e87a2ce643e1
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 19:00:41 2017 +0100

    Polishing

commit f55273986d847e99814bd92d8fc109dea02a85f3
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 18:50:38 2017 +0100

    Polishing

commit fb6f0eac8ce50a987ff438e942d59d1c24b769c4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 18:43:54 2017 +0100

    Polishing

commit fe8e7f692d89be52a95ae2726b1b20870c7fe042
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 18:35:56 2017 +0100

    Polishing

commit 8e37f562c14141c573a13bb43e9612a3586e672e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 18:23:06 2017 +0100

    polishing

commit 8a20a766f995c3c5d9928bb46270758fc92c29a1
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Thu Nov 2 18:18:25 2017 +0100

    polishing

commit 3dab1a0edc973c0ddfa762b214a22dff4d2e9bb5
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 01:23:11 2017 +0100

    Again avoid macros

    Avoid GetPortamentoMode, GetLegatoMode macros

commit d39cfe5a199cb7179a174d11dadbfd2bcb992088
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 01:18:44 2017 +0100

    Again avoiding macros

    Avoid GetChanPortamentoMode, GetChanLegatoMode macros

commit bb519495956f5e3d0bc5264d3aea491e5de85afb
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 01:11:54 2017 +0100

    Again avoiding macros

    Avoiding GetChanLegatoMode, GetChanPortamentoMode macros

commit c31449626ad195b3fd44215f8bd51be8cfcc6a29
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:40:05 2017 +0100

    Add FluidPolyMono-0003.pdf

    Adding explanations about the legato detector (3.4.3).
    Adding example about breathmode (3.4.5).

commit 53f215e602156ecfbb8aeef81ba7a19e201313d4
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:38:15 2017 +0100

    Delete FluidPolyMono-0003.pdf

commit 7dcde051986ae8b17c0613e83f0253db647dd1ee
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:30:20 2017 +0100

    Again avoiding macros

commit 8afbb4503a98d9caa9a85f703d19740bd07ade36
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:24:57 2017 +0100

    Again avoid macros

commit 4e2a6750c15973cb2515c2f9b7971d821b04031a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:16:04 2017 +0100

    Again avoid macros

commit 21ae600907287e87f35a8f9c1cd1e0fe6e920565
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 30 00:02:41 2017 +0100

    Again avoiding macros

commit a0ec029bd886682b3d88ed8150ef90c29a75eec7
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Oct 29 23:46:53 2017 +0100

    Again avoiding macros

commit 1e583799f6690253bfcad4cbc4fb5fb0f5b9fa99
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Sun Oct 29 23:18:26 2017 +0100

    avoiding macros

commit d92445b99f0a3fd7f896bd03afca05eaa1271b9c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 27 16:37:34 2017 +0200

    Avoid nested macros

commit 71d6a180cb574a754e30a821b52b1a975bc4b2f6
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 27 16:13:30 2017 +0200

    avoid nested macros

commit e22013c37d01734c4bc535eba65e6b2cd8db0aad
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 27 15:40:47 2017 +0200

    Avoid nested macros

commit 92ba702ffca8284470f45d6568ffa6d81be3a5db
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 27 14:54:19 2017 +0200

    Cleanup macro.

commit 2a31e93320907779cd7f56d62991bcce00bedaba
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 27 14:49:52 2017 +0200

    Removing nested macros.

commit 9433f2bf2c91939fddb67ba24057225c9e1be7a7
Merge: 71f7c35 cdd9f75
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Thu Oct 26 19:56:02 2017 +0200

    Merge branch 'master' into polymono

commit 71f7c35a77e8192596f95df6894dae5e2a653dc2
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 25 10:38:05 2017 +0200

    remove static from fluid_gen_info to fix build

commit 6c70db9065f81bc323eadcd654a5d5800ca4622c
Merge: 1dbae28 e485129
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 25 09:55:15 2017 +0200

    Merge branch 'master' into polymono

commit 1dbae2874f68d1eb62db2ab34dcb4e3e1105f47d
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 24 03:02:32 2017 +0200

    Add FluidPolyMono-0003.pdf

    Correction API documentation (see 2.6.1, 2.6.4)

commit f01b955de22c4551821199aa670c713a4456e14a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 24 02:57:18 2017 +0200

    Delete FluidPolyMono-0003.pdf

commit b557289b5f6c3ccb531c6c38b45fc61e089a83bc
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 24 02:55:31 2017 +0200

    Replacing FLUID_POLYMONO_WARNING by FLUID_FAILED

commit 2d06adef8af6e8d2cef2e03ab669270a727a1742
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 24 02:52:06 2017 +0200

    Replacing  FLUID_POLYMONO_WARNING by FLUID_FAILED

commit 06108d9f7a61f8773cac02bc32749859e415794e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 24 02:38:23 2017 +0200

    Replacing FLUID_POLYMONO_WARNING by FLUID_FAILED

commit 66b85fb38ec24bb3468e5b8c205a8b15a0002272
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 16:08:46 2017 +0200

    Polymono documentation has moved to ./doc/polymono

commit 1a03ef03e1ad1043152224cf604ec2bb47756f74
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 15:41:21 2017 +0200

    Adapt functions names to follow fluidsynth conventions.

commit d40cf8798612eea9accf41aba7e325d6a69f326e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 15:33:42 2017 +0200

    Adapt functions naming to follow fluidsynth conventions.

commit 49423cb8bfb7b19b9164d6e642b4549468f003f7
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 15:28:08 2017 +0200

    Adapt functions names to fluidsynth conventions

    Avoiding  abbreviations.
    Change functions names to follow fluidsynth conventions

commit bc5345ab1c37173cf075b6572dbff5d8bd57a85a
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 14:56:41 2017 +0200

    Clarify variables spelling and bug fix

    Avoiding  abbreviations in comments and variables names.
    Bug fix.

commit 1f0a1ad3cbf1180ed242eb5997b18b79a98db6ba
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 14:48:00 2017 +0200

    Clarify variables meaning

    avoiding abbreviations in comment and variables.

commit c947686bfc8d6adde47c831a411d639938df8428
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 14:35:05 2017 +0200

    Clarify comments.

    Avoiding abbreviations on comments

commit 7e7296e276b1c9ef254788634e5e2bc565dec211
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 01:34:53 2017 +0200

    Adding others documentation files.

commit 4a6417ff8fb3afa60f6cd39f6b299759e122398c
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Fri Oct 20 01:32:02 2017 +0200

    Create readme.txt

commit 3babbed01e6fb3a264bb61d6e0be0d67e45cd853
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Wed Oct 18 16:27:48 2017 +0200

    Update and fix API parameters checking in fluid_synth_polymono.c

    Fix correction in Poly/Mono API
    fluid_synth_get_channel_mode()
    fluid_synth_set_legato_mode(), fluid_synth_get_legato_mode()
    fluid_synth_set_portamento_mode(), fluid_synth_get_portamento_mode()
    fluid_synth_set_breath_mode(),fluid_synth_get_breath_mode()

commit 98234eb7c146c75bd25cef0813b1f1b12d93ad84
Merge: bb7b483 b908c04
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 13:18:05 2017 +0200

    Merge branch 'master' into polymono

commit bb7b48340cde04ee7c8e0d19942e45de3fa5197e
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 12:51:19 2017 +0200

    fix param check for fluid_synth_set_basic_channel()

commit b2157bdc4aa614647ff0a32d46b53941999d6fed
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 12:34:14 2017 +0200

    another param check fix for fluid_synth_reset_basic_channels()

commit 2ff7dccb555099f1f508e5318aa295338638123a
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 10:52:40 2017 +0200

    correctly check parameters and enter synth API

    for fluid_synth_reset_basic_channels()

commit 55ca184b1fa1a2bfa61918d155e9b8d7a32d2c0e
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 10:29:05 2017 +0200

    move synth API entry macros to header

    so they are usable in polymono and mono synth files

commit deb1ea53a121625eaa913b9b16f4a63a8eb4183e
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Wed Oct 18 10:25:17 2017 +0200

    Revert "Update API parameter checking"

    This reverts commit 8ca4c7d16130c928580f410af9c79663fc8d069e. Crashes if synth == NULL

commit 8ca4c7d16130c928580f410af9c79663fc8d069e
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Tue Oct 17 20:50:26 2017 +0200

    Update API parameter checking

    Update Poly mono API parameters checking to be thread safe.

commit d5b95232efcc14c072d9237c26a5bd68fe647b69
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 16 18:25:48 2017 +0200

    Cleaning up the documentation

    Cleaning up the documentation, comments, typos errors.

commit 72d9cdfc99cef9da1638adfde86138444a8f6817
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 16 17:45:52 2017 +0200

    cleaning up the API documentation

    cleaning up the API documentation and comments so it is usable with doxygen.

commit bf587f4998267ebfbbc7682abdb1abec3fc12009
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 13:31:24 2017 +0200

    move polymono shell commands to fluid_cmd

    and fix build

commit 20d417e83b42ea0403f484d4c45d3723a3616c13
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 13:30:49 2017 +0200

    fix public synth portamento function decl

commit f1a9856f5f79c1fd7e9e31bdf2c1c3276545ad94
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 11:34:48 2017 +0200

    move function decl. to header

commit 4c75d038973413e97e9c52b19237cae4850e592b
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 11:12:17 2017 +0200

    fluid_synth_noteoff_monopoly(): use voice getter functions

commit fa00735fa1af49089026abf30f6763e3481bccf2
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 11:05:00 2017 +0200

    fix declaration of fluid_voice_noteoff()

commit f53c00f2e0defa91a49185919b4ea451e4b58ac9
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 11:02:18 2017 +0200

    fix broken merge of fluid_synth_program_change()

commit c18f88df9a8fd80a0ad58ad3a08ea12c6eb10681
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 11:01:58 2017 +0200

    reorder modulator decalaration

commit 12b378244be1b137dfc1e18e4e928bed8073e7c2
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 10:42:30 2017 +0200

    rename breath2att modulator

commit ba3b3c855a8dbcab1a4b8601f52577600061fd42
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sun Oct 15 10:35:42 2017 +0200

    manually resolved conflict in fluid_synth_alloc_voice()

    for polymono

commit 7b31b8605c94bea44dbacc0779ded1ef7b3eaaab
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Oct 14 11:25:49 2017 +0200

    fix indentation

commit 1d1d03cb3a27a99643e5f6a4d701b137191cd1b1
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Oct 14 11:24:52 2017 +0200

    manually merge fluid_synth_noteoff_monopoly()

commit f8fa5d6534553fbb7d617f06620fd3b746349cdd
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Oct 14 11:12:37 2017 +0200

    refactor fluid_voice_noteoff() to return void

commit 3430db0dce1ff0084da60beb157fb36ca1a23c7d
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Oct 14 10:35:45 2017 +0200

    add PDF documenting polymono functionality

commit e3818abe427a14bcd05d7c959cd6d125533b4219
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Sat Oct 14 10:34:52 2017 +0200

    manually resolve fluid_voice_calculate_pitch() conflict

commit b94d42b3923bfcab0a270903ad69bba2d3531089
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Oct 10 22:49:16 2017 +0200

    move polymono synth files to correct dir

commit 2719e03cfce460a132477080d383e5de5de70fed
Merge: badddc5 0902b26
Author: derselbst <tom.mbrt@googlemail.com>
Date:   Tue Oct 10 21:03:49 2017 +0200

    Merge branch 'master' into polymono

    a few too complex conflicts remain unresolved

commit badddc5b43e064b597c72992434a9786f1367597
Author: jjceresa <32781294+jjceresa@users.noreply.github.com>
Date:   Mon Oct 9 17:50:58 2017 +0200

    applied jjc's poly mono patch

    start of poly/mono implementation, addressing #158
2018-03-03 14:34:43 +01:00
.github Update issue_template.md 2018-02-22 20:21:24 +01:00
bindings fluid_gen_info[] made as a const object 2017-10-21 12:46:13 +02:00
cmake_admin do not add LIB_SUFFIX if LIB_INSTALL_DIR set manually 2018-02-20 17:05:42 +01:00
doc Add Polymono Support (#306) 2018-03-03 14:34:43 +01:00
include Add Polymono Support (#306) 2018-03-03 14:34:43 +01:00
src Add Polymono Support (#306) 2018-03-03 14:34:43 +01:00
.appveyor-vcpkg.yml add a vcpkg based appveyor build config 2017-12-14 19:59:50 +01:00
.appveyor.yml ensure appveyor builds all branches 2017-11-13 17:05:23 +01:00
.clang-format add config file for clang-format 2017-09-16 20:31:38 +02:00
.clang-tidy add .clang-tidy 2017-10-21 11:03:06 +02:00
.gitignore add gitignore 2017-09-23 18:17:40 +02:00
.travis.yml fix build and install 2018-02-24 14:23:59 +01:00
AUTHORS Merge branch 'poly-pressure' of https://github.com/mawe42/fluidsynth into mawe42-poly-pressure 2017-09-10 13:59:07 +02:00
ChangeLog remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
clang-format.sh add batch file for clang-format 2017-09-16 20:41:10 +02:00
CMakeLists.txt remove redundant cmake header install directives 2018-02-22 17:16:57 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2017-11-04 09:05:17 +01:00
fluidsynth.conf.in add systemd service files 2018-02-20 21:31:35 +01:00
fluidsynth.pc.in remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
fluidsynth.service.in add systemd service files 2018-02-20 21:31:35 +01:00
fluidsynth.spec.in remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
INSTALL update INSTALL 2017-09-15 11:32:37 +02:00
LICENSE move README and LICENSE to top-level dir 2017-07-27 12:11:26 +02:00
NEWS remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
README-OSX remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
README.cmake README.cmake: cleanup orphaned link 2017-12-15 19:31:42 +01:00
README.md add OHLOH badge 2018-01-27 15:12:12 +01:00
run-clang-tidy.py add py script to run clang-tidy 2017-10-21 12:16:54 +02:00
THANKS remove fop-level "fluidsynth" directory node 2017-09-03 13:30:26 +02:00
TODO Refactor Soundfont loader API (#334) 2018-02-11 16:56:53 +01:00

FluidSynth

Build Status glib < 2.30 glib >= 2.30
Linux/MacOSX n.a. Build Status Travis
Windows Build status Appveyor Build status

FluidSynth is a software real-time synthesizer based on the Soundfont 2 specifications.

OHLOH Project Stats

FluidSynth reads and handles MIDI events from the MIDI input device. It is the software analogue of a MIDI synthesizer. FluidSynth can also play midifiles using a Soundfont.

Information on the web

The place to look if you are looking for the latest information on FluidSynth is the web site at http://www.fluidsynth.org/.

Why did we do it

The synthesizer grew out of a project, started by Samuel Bianchini and Peter Hanappe, and later joined by Johnathan Lee, that aimed at developing a networked multi-user game.

Sound (and music) was considered a very important part of the game. In addition, users had to be able to extend the game with their own sounds and images. Johnathan Lee proposed to use the Soundfont standard combined with an intelligent use of midifiles. The arguments were:

  • Wave table synthesis is low on CPU usage, it is intuitive and it can produce rich sounds

  • Hardware acceleration is possible if the user owns a Soundfont compatible soundcard (important for games!)

  • MIDI files are small and Soundfont2 files can be made small thru the intelligent use of loops and wavetables. Together, they are easier to downloaded than MP3 or audio files.

  • Graphical editors are available for both file format: various Soundfont editors are available on PC and on Linux (Smurf!), and MIDI sequencers are available on all platforms.

It seemed like a good combination to use for an (online) game.

In order to make Soundfonts available on all platforms (Linux, Mac, and Windows) and for all sound cards, we needed a software Soundfont synthesizer. That is why we developed FluidSynth.

Design decisions

The synthesizer was designed to be as self-contained as possible for several reasons:

  • It had to be multi-platform (Linux, MacOS, Win32). It was therefore important that the code didn't rely on any platform specific library.

  • It had to be easy to integrate the synthesizer modules in various environements, as a plugin or as a dynamically loadable object. I wanted to make the synthesizer available as a plugin (jMax, LADSPA, 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 it's goal (a Soundfont synthesizer), stayed small (ideally one file) and didn't dependent on external code.

Home Page

Documentation

Software SoundFont Synthesizers:

Soundfont Editors

Conversion Tools

Soundfont Databases