Hi Ben, Apart grammar and others spelling errors there are 2 typos error in my last post.
1) Please replace"Mode 0 is perceived less legato then mode 0" by "Mode 0 is perceived less legato then mode 3" 2) Please replace "channel 5 to 16 (11 channels)" by "channel 5 to 15 (11 channels). jjc Le 30/06/16, "jean-jacques.ceresa" <jean-jacques.cer...@enac.fr> a écrit : > Hi Ben, > > >the legato commands. For a EWI, I think legato should be on all the > time if you are playing wind instruments. If you want to imitate a > guitar, then probably you would want it off. Correct? > > Well, it is necessary to be not confused by the terms. > > >For a EWI, I think legato should be on all the time....? > a) Are you talking about the ewi capability to be enabled(or not) for > sending MIDI CC legato On/Off ? . > Or > b) Are you talking about the ewi internal capability to disable a legato > manner playing from the musician ? > For both questions (a,b) the response should be in the manual of your EWI. > > Please what is the model/builder of your EWI ? > > Anyway, i insist that at the synthesizer receiver side (e.g fluidsynth + > polymono patch), the MIDI channel ignore CC legato On/Off > if this channel is set monophonic (by CC Poly/mono, Omni On/Off, or > fluidsynth shell commands, or fluidsynth API call). > Please read. There is a misspelling in the terms used by MIDI > specifications about CC legato On/Off. > This CC doesn't mean that the synthesiser must react legato/staccato. > The MIDI specs. (MIDI_MMA specifications.pdf version 4.2 1995) says that : > -on CC legato On the synthesiser MIDI channel must switch to > monophonic (regardless of the actual mode poly/mono of this channel). > -on CC legato Off the synthesiser MIDI channel must return to the > state it was (poly/mono) prior receiving CC legato On. > So, simply switching CC legato On/Off allows a musician to switch a > polyphonic Channel temporarily in monophonic in real time performance. > So, if the channel was already monophonic on CC legato On/Off the > synthesizer becomes neutral (i.e it does nothing). > > During the time the musician plays this 'monophonic channel' the fact > that the synthesizer reacts to the 'staccato/legato' musician playing is > entirely upon the synthesizer responsibility and is outside the scope of > MIDI specifications. > If the musician plays staccato , fluidsynth (+ polymono patch) will > react staccato. > If the musician plays legato , fluidsynth (+ polymono patch) will react > legato (in one of four mode called 'legato mode'). > > Now a complement about legato mode which is not clearly documented in > the patch pdf: > Mode 3: is straigtforward (i.e the synthesizer reacts to legato without > additionnal processing). > Mode 3 to 0: This mode from 2 to 0 are perceived less legato from one to > one. > Mode 0 is perceived less legato then mode 0 (for the same musician > playing manner). > To get this differents results, the synthetiser makes use of different > ways of triggering/retriggering of adsr generator. > > If i was a EWI player i will choose legato mode 3 (default is 0), > because as explained this mode is neutral. > In other word in legato mode 3 the result depends of the musician > playing manner and hightly of soundfont ADSR preset > (apart of breathToInitialAttenuation modulator presence). > > What can do an EWI player or a Keyboardist to try this patch ?: > 1) Apply this path to the current source file (v 1.1.6) and build the > library executable (only the library is concerned). > 2) Run the console application: fluidsynth with usual options and the > right soundfont file. > In this state the synthesizer is polyphonic on each of 16 channel. > Assuming your EWI is sending CC legato On/Off you don't need to skip to > steps (3,4). > 2.1) Send a CC program change > 2.2) And play on the ewi. If you play legato fluidsynth reacts legato > (in mode 0 ). > 2.3) To display current legato mode type the following command: > >legatomode > This display the current legato mode of each MIDI channel. > 2.4) to change channel 5 (zero based !) (assuming EWI playing on channel > 5) to legato mode 3 , type the following command: > >setlegatomode 5 3 > Then verify your choice by the command: > >legatomode > You can iterate steps 2.1 to 2.4 any time by changing the preset or > legato mode or the playing manner (legato/staccato) > > The following steps are only necessary if your MIDI controler (Ewi, > Keyboard) don't send CC legato On/Off (I don't think that an Ewi is > unable to do that). > 3) To put channel 5 in monophonic mode 1 (mono, omniOn), type the command: > >setbasicchannels 5 1 0 > 3.1) Then verify using the followings command > >basicchannels > 3.2) or verify using command > >channelsmode > These commands shows that channel 0 to 4 (5 channels) are still > polyphonic, and channel 5 to 16 (11 channels) are set monophonic > Your channel 5 will react monophonic, it is ready , you can go to steps > 2.1 to 2.4 > > Note: While you play on channel 5, if you feel a little alone, don't > hesitate to put an other EWI player on channel 6 or > a Keyboardist on channel 0 to get a live accompaniment and don't be > affraid if your heard that the keyboardist is able > to play polyphonic because is this setting you and your EWI friend are > the only one able to play real legato. But anyway > things can be reversed if you put channel 0 (Keyboard) in monophonic > mode and give a separe breath controler to the keyboardist. > > Thanks for responding to my questions above. > jjc. > > Le 29/06/2016 23:23, Ben Gonzales a écrit : > > Hi Jean-Jacques. > > > > Thanks for that info. I will try it. > > > > Re:the legato commands. For a EWI, I think legato should be on all the > > time if you are playing wind instruments. If you want to imitate a > > guitar, then probably you would want it off. Correct? > > > > Ben > > > > On 29/06/16 22:53, jean-jacques.ceresa wrote: > >> Hi, Ben > >> 1)After a quick search on the Web, the command to apply a patch is > >> simply 'patch'. > >> You need to apply this command on each original source file concerned > >> (the list is given in the pdf). > >> > >> 2)For the 2 news file (fluid_synth_mono.c, fluid_synth_polymono.c) , > >> i assume that it sufficient to put them > >> in the source directory fluid_synth-1.1.6/src/synth to get them > >> compiled but i am not sure as it depends on the > >> make command. > >> > >> 3) may be after doing step 1 and 2, it will be necessary to do a > >> cmake. I don't know the real dependency. > >> > >> 4) if step is done without errors, the last steps is a make to build > >> the library only (Only the library is concerned). > >> When steps 4 is finished, verify that the library has been build > >> without errors, if it is the case your are ready > >> to do somes try with the console application. > >> > >> type > >> >help polymono > >> > >> This the list of new shell commands for poly/mono functionality > >> explained in the pdf. > >> > >> jjc > >> > >> > >> > >> Le 28/06/2016 05:22, Ben Gonzales a écrit : > >>> Could someone provide instructions re how to load the patch please? > >>> I've compiled before, but not installed patches. I'd like to try > >>> this with my EWI and RPi2 running Jessie. > >>> > >>> Ben > >>> > >>> On 25/06/16 19:31, Ben Gonzales wrote: > >>>> Hi Jean-Jacques. > >>>> > >>>> I haven't participated in this sort of development before, so I > >>>> don't know the protocols. I re-read a lot of the PDF and I think > >>>> there are some errors/typos. How are they normally handled? > >>>> Feedback on the forum? Private e-mail? > >>>> > >>>> One item immediately: In section 3.1.3, "Playing Legato", you > >>>> mention that the EWI detects legato playing and sends a "CC Legato > >>>> On" message. In my work with the EWI I had not seen these messages, > >>>> so I tested for them today, and my EWI-USB does not send them. It > >>>> may be that only the more sophisticated models send those CC > >>>> messages, or my instrument has not been configured to do so - I > >>>> don't know. Can you comment please? > >>>> > >>>> Ben > >>>> > >>>> On 24/06/16 23:04, CERESA Jean-Jacques ENAC/ENAC wrote: > >>>>> Hi Ben > >>>>> > >>>>> >I've read the pdf doc and understand a lot of it, but I don't > >>>>> understand the need for the "base" channels. > >>>>> 1)"Basic channels" is a MIDI specification.In short this allows > >>>>> to split the whole set of synthesizer channels in distinct MIDI > >>>>> channels groups. > >>>>> Each group is composed of continus MIDI channels starting from the > >>>>> first called "Basic Channel". > >>>>> Each group can be set in different mode via MIDI CCs > >>>>> (Polyphonic,Mono, OmniOn,OmniOff) that have to be send to the > >>>>> Basic Channel. > >>>>> > >>>>> >Does it mean you need less cpu to run Fluidsynth?.No, assuming no > >>>>> reverb, no chorus, cpu usage is hightly related to the number of > >>>>> a voice a simple note need. > >>>>> For example on RPi2 Fluidsynth (using the 4 cores) can plays 180 > >>>>> voices maximum.(note that a "voice" in FluidSynth spelling is what > >>>>> is called an "Instrument Zone" in SF2.1) > >>>>> > >>>>> Assuming the patch applied, by default a FluidSynth instance have > >>>>> a default Basic Channel number 0, Poly, Omni On. That mean that > >>>>> this instance is ready to play on 16 MIDI channels (the default > >>>>> channel settings), in Polyphonic. > >>>>> > >>>>> 2) So in this state the FluidSynth instance plays polyphonically > >>>>> on each channels. > >>>>> If a CC legato On is send to a channel, this one switchs from > >>>>> polyphonic to monophonic and behave monophonically. > >>>>> This is a MIDI behavior specifications. This is a real-time > >>>>> Poly/mono control of a MIDI channels. > >>>>> > >>>>> On a MIDI channel in the monophonic state, the "legato playing" > >>>>> manner works , but with serious limitations (discuted in the pdf). > >>>>> > >>>>> 3)>How do I test this patch? Download the latest git and > >>>>> re-compile? Add the patch somehow? > >>>>> You cannot download the latest git until the patch will be > >>>>> accepted and committed . > >>>>> You need to apply this patch by your own on your actual source > >>>>> version (1.1.6). The manner depends on the platform you works. > >>>>> I am not an expert in patch, i don't know how to do but, i wish > >>>>> that it isn't complicated to do. > >>>>> I hope this post will be read by a developer who practice the > >>>>> procedure and can describe it. > >>>>> Note that apart the patch file that adds functionality to existing > >>>>> file (fluid_synth.c, ...), there are 2 > >>>>> new files (fluid_synth_polymono.c, fluid_synth_mono.c) that must > >>>>> be added to the make steps. > >>>>> May be Pedro Lopez-Cabanillas can help on this matter ? > >>>>> > >>>> > >>>> > >>>> _______________________________________________ > >>>> fluid-dev mailing list > >>>> fluid-dev@nongnu.org > >>>> https://lists.nongnu.org/mailman/listinfo/fluid-dev > >>> > >>> > >>> _______________________________________________ > >>> fluid-dev mailing list > >>> fluid-dev@nongnu.org > >>> https://lists.nongnu.org/mailman/listinfo/fluid-dev > >> > >> > >> _______________________________________________ > >> fluid-dev mailing list > >> fluid-dev@nongnu.org > >> https://lists.nongnu.org/mailman/listinfo/fluid-dev > > > > > > _______________________________________________ > > fluid-dev mailing list > > fluid-dev@nongnu.org > > https://lists.nongnu.org/mailman/listinfo/fluid-dev > > > _______________________________________________ > fluid-dev mailing list > fluid-dev@nongnu.org > https://lists.nongnu.org/mailman/listinfo/fluid-dev > >
_______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev