• kosuke16

Whale is right, my bad. I tried it only with the numbers, no audio so while the numbers where good, the timing wasn’t. Note message not being continuous, you have to repack it so it is send at the same time than the velocity to make a coherent list of two values for noteout.

posted in technical issues read more
• kosuke16

It is doing exactly that, or there is something I do not understand in what you are trying to achieve.

posted in technical issues read more
• kosuke16

Maybe this does what you want ?

Key switch.pd

1 - Moses splits the notes at the value defined by the slider to send only the note values of your right hand to the noteout object.

2 - I pack three floats : note number, split point, all incoming velocity value.

3 - The expression looks if the note value (\$f1) is above or below the split point (\$f2) : if above (right hand notes pressed), it outputs a zero, if below (left hand) it outputs the notein velocity (\$f3).

4 - So you get : right hand : note values, left hand : velocity values.

posted in technical issues read more
• kosuke16

@seb-harmonik.ar Following your reply, I read a lua tutorial today. It seems very interesting and in a way more direct than PD itself. But I have much to learn about the existing libraries already, objects and logical thought process before going into text programming. And I also have to make music sometimes. I rediscovered my old synth with the midi/CV patch I made.

My next project is a simple sequencer based on EDO scales, I think it will bring me further into the arrays / mathematical side of PD. Lots of head scratching to be had. Then I have to learn to put everything into subpatches to build my midi/CV interface according to my needs. Then I have to tweak it and make a version for each of my other synths because tuning, gate voltage etc…

The rabbit hole is deep enough to delay the learning lua a bit for now.

posted in technical issues read more
• kosuke16

@seb-harmonik.ar Thank you ! The mono object in else library does exactly that indeed. The only downside (if one can call it a downside) is that it is working so well by itself that I didn't have to learn anything or scratch my head gazing at the voïd of my logical sense to implement it. It seems to be a fantastic library though.

posted in technical issues read more
• kosuke16

Hello,

I would like to be able to do trills on my midi keyboard like I do on an analog synth : keeping one key pressed down while only pushing the second one. Since it is an analogsynth, the ouput voltage changes when I release the trilling key, but a midi note beeing a one shot message, I can't achieve the same result. I tried to find another midi controller that would send continuous messages as long as a key is depressed but couldn't find one. Aftertouch would be good for that I suppose, but it needs some pressure not compatible with natural playing. Anyway, I tried to alternatively write on the two indexes of an array with the hope that I could somehow get the tabread object to go back to the previous note, but since there is no way of checking if a continuous message is sent, there is no way to tell PD to stop writing at say index 0 because that note is held, just write index 1 and alternate reading from 0 to 1 if that makes sense.

I tried to analyse the miniwoog patch to see if I could find a solution in there somewhere as it seems to support all kind of note priority and legato mode but couldn't find anything that I would understand.

Here is the patch :
Key input.pd

Thank you for any help.

posted in technical issues read more
• kosuke16

@alexandros Hello ! I have already found and read you tutorial. IThank you for doing that, it helped me understand some stuff.

posted in technical issues read more
• kosuke16

Yes there is a split~ object but it is more about cutting a message with several values in it.

I can manage the selection of upper/lower parts of a waveform with <~ or >~ outputting 1 and 0 as gates. It works fine amplifying them separately, but it creates an abrupt breakpoint where the two offsetted parts meet in time. I also managed to get a kind of sine-ish waveform by adding a slew in the square LFO. It is wonky, but I like the sonic result. I also thought about offsetting the CV pitch itself to account for the range threshold. The fact is, the extremes of the full LFO modulation are not so tonal anymore so the accuracy of the main pitch isn't as important as the LFO range at that point if that makes sense.

I also have to try the LFO mixing as you suggested, it should be fun.

Here is the patch so far.

MidiCV OK v2.pd

posted in technical issues read more
• kosuke16

Thank you ! I managed to do what I wanted with the square oscillator. It was quite easy though because the positive and negative amplification of the wave were obvious. The other ones are quite close of those in the tutorial I found, so I will have to investigate more, it can't be that complicated. Anyway, here is the patch.

LFO square.pd

Now I have to wrap my head around the triangle one.

About data/signal rate objects, my first attempt was with osc~, but regarding my issue with waveforme values control, vline~ was the only solution I could come up with. I like the easy flexibility of vline~ as a function generator though. In the variable LFO patch, playing with the base rate multiplicators for example gives cool results coupled with curve adjustments. It is also cool to disconnect some vline~and not others. I will keep it for that. But for basic playability a mathematical oscillator is better for sure.

posted in technical issues read more
• kosuke16

Hello,

In the context of a MIDI to CV converter, I am trying to limit independantly the lower and upper points of a waveform. The reason for that is that when I play high pitches, the LFO added to the keyboard pitch makes the final value go over 1, creating a kind of high pitched plateau that I would like to avoid. On the other hand, I would like to allow the lower part of the LFO wave to continue its course, so the waveform would be asymetrical in a way, for example going from -1 to +0.2. I achieved this with different vline~ objects, by setting two \$ for posMax and negMax and it works fine. Here is the patch.

Variable LFO.pd

Now my issue with hat solution is that it doesn't play smoothly when adjusting the LFO rate, I suppose due to the fact that the different vline~ have to update while playing and they don't like it. Anyway, I am back to square one because playability and modulation possibility for the LFO speed is a must.

My math knowledge is not enough to figure out what kind of equation I should write to mathematically create the waveforms. Or maybe there is another way ? I went through the oscillators creation tutorial by Alexandro Drymonitis but couldn't find a way to adapt his patches so I could control the positive and negative parts of the waveforme independantly.

If anyone could put me in the right direction, it would be great.

Thank you.

posted in technical issues read more

Internal error.

Oops! Looks like something went wrong!