Awesome work TIm! \o/

2017-02-16 21:54 GMT+01:00 Tim <[email protected]>:
> Just wanted to add, that this support may seem
>   a bit relatively clumsy to use.
>
> These plugins fall squarely under the category 'midi effects'.
> But MusE has no concept of 'midi effects' yet.
>
> What is needed is a midi effects rack on the midi strips,
>   into which these effects can be INSERTED.
> Thus the incoming events will be effected in some way
>   before they are played and recorded, similar to the
>   audio strips. All on just one track. Whether or not the
>   'direct' signal is passed can be set with a button.
>
> Werner's original Qt4 MusE-2 had such a feature.
> All strips, whether midi or audio, had an upper rack
>   (input effects) and a lower rack (output effects).
> Midi effects could be inserted. For example the
>   MusE metronome was turned into such an insert effect.
>
> Some day we'll add a proper midi effect rack here...
> Tim.
>
> On 2017-02-16 02:59 PM, Tim wrote:
>> OK Try it out, in git master now:
>>
>> * Recording from synthesizer midi output supported:
>> - All synths are now marked as both readable/writable.
>> - Synths can now be selected as a midi input route.
>> - Received events from a synth will absolutely NOT be echoed back to the
>>      SAME synth instance under any circumstances, even if 'monitor'
>> button is on.
>> - Recording: buildMidiEventList(): Added protection from duplicate events
>>       sent by certain broken plugins or malformed midi import files.
>>     (Our 'live stuck notes' mechanism already protects from playing
>> 'live' duplicate notes.)
>>
>>    Semi-related:
>>
>> - If output port's instrument has no note-off mode, do not use our 'live
>> stuck notes'
>>      mechanism. This allows for example drum trigger input devices
>> sending NO note-offs,
>>      although you must first select an instrument having no note-off mode.
>>
>> ONLY LinuxVST is supported for now.
>>
>> ---------------------
>> How to use:
>> Add a LinuxVST synth which sends midi out such as
>>    arpeggiators (HyperCyclic, ToneSpace) and sequencers (B-Step).
>> Add a midi track and select the synth as output device/port.
>>
>> At this point you must decide whether you want the generated notes
>>    to be added to THIS track, or another separate track.
>> If you choose THIS track, be aware the notes will be recorded
>>    ALONG WITH any midi input which triggered the synth.
>> ie Direct and generated notes will be recorded.
>> To use THIS track, simply choose the synth as a midi input route
>>    to this track, otherwise be sure to NOT route the synth back in.
>>
>> If you choose a separate track:
>> Add another midi track and choose the synth as an input route.
>> You will likely NOT want any other input routes here, especially
>>    any input which triggers the synth in the first place.
>> You may choose any output device/port, even another synth,
>>    to play the generated notes.
>>
>> Note that many synths allow 'playing' their sequencer without
>>    actually 'playing' MusE, so you can play along without actually
>>    being in 'play' mode.
>>
>> Mind your 'monitor' buttons. Choose them carefully as you
>>    need it 'on' for the first track, and you may want to monitor any
>>    second midi track.
>>
>>
>> So, the problem with recording everything to ONE track
>>    is that we have no button or mechanism which says:
>> "I want to pass input to the output device but NOT record
>>      that specific input."
>> Adding such a mechanism would be quite involved.
>> Thus, if you do use a single track, you'll be recording
>>    BOTH the direct input and the generated notes.
>>
>>
>> About HyperCyclic and ToneSpace:
>> As mentioned, they seem to be broken in that they send out
>>    duplicate notes, but with these protection mechanisms in place
>>    they now appear to work fine, and even appear to align the
>>    recorded notes perfectly. I contacted the author about the issues
>>    and he's quite busy but he's looking into it.
>>
>>
>> Questions? Problems? Suggestions?
>> Lemme know how it goes.
>> Tim.
>>
>>
>> On 2017-02-14 02:13 AM, Tim wrote:
>>> On 2017-02-14 12:47 AM, Tim wrote:
>>>> On 2017-02-12 10:00 PM, kit wrote:
>>>>> Hi,
>>>>>
>>>>> In 'experimenting' with plugins like tonespace and hypercyclic I
>>>>> realised there is no way in muse to patch the midi out from these
>>>>> 'synths' to a midi track. I use the arpeggiators of these plugins to
>>>>> drive other synths.
>>>>>
>>>>> Because they are loaded as synths I assume you only allow for audio
>>>>> output. To get arps to work I have to route the driving midi track out
>>>>> of muse to one of these synths hosted outside muse and then route the
>>>>> arp midi back into muse to drive the musical synth.
>>>>>
>>>>> Should muse's functionality route both audio and midi outputs (if
>>>>> available) from a synth plugin?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Chris.
>>>>>
>>>> CC'ing the list for help.
>>>> Hi, I have added this capability now but I have not pushed it yet.
>>>> There is a problem:
>>>>
>>>> Hypercyclic is delivering multiple copies of notes that should not
>>>>    be there - and it is worse the smaller the Jack audio period size.
>>>>
>>>> This happens even when Hypercyclic is simply playing the demo,
>>>>    and on the "Clean Start" preset.
>>>>
>>>> For example with Jack period = 128 I get:
>>>> VstNativeSynthIF::hostCallback audioMasterProcessEvents: numEvents:2
>>>>     kVstMidiType: midiData[0]:144 [1]:45 [2]:123
>>>>     kVstMidiType: midiData[0]:144 [1]:45 [2]:123
>>>>
>>>> With Jack period = 2048, numEvents is usually 1, and with
>>>>    Jack period = 64 I get triple copies with numEvents usually 3.
>>>> Sometimes numEvents varies (wavers between 1/2 or 2/3).
>>>>
>>>> I cannot figure out why, since I am simply dutifully responding to
>>>>    the audioMasterProcessEvents callback event, and I am returning
>>>>    '1' indicating I support the event.
>>>> Why is it giving me multiple copies of the same notes depending on
>>>>    Jack period size?
>>>>
>>>> The result is that when I record this on another track, multiple
>>>>    notes are on top of each other.
>>>> Can anyone please test this in another host?
>>>> Or pass this question on to them?
>>>>
>>>> Tim.
>>> I have now tested the B-Step Sequencer Linux VST and it
>>>     does not suffer from this problem. It works fine.
>>>
>>> So I will push soon, likely tomorrow, and explain how it all works.
>>>
>>> Tim.
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Lmuse-developer mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/lmuse-developer
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Lmuse-developer mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/lmuse-developer
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> Lmuse-developer mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/lmuse-developer

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Lmuse-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lmuse-developer

Reply via email to