From the original SynthMaker forum (2004–2014), with its members’ names and dates.
exonerate ·
Ok so this is the project from Here.
I'm moving it to this fresh thread to get this thing finished, it's been going on to long now. 😝
So I would appreciated any bug reports, or if you know how to fix a certain issue and have the time, just upload the fix 😀
The most current version will always be at the bottom of this first post.....
exonerate ·
changes in 1.9.7.7:
fixed beat fraction times to work with different time sigs
rewrote the background grid, now works with different time sigs
Made the env view a bit longer
Added a button in properties to set the current shape to the default shape
when sustain is off and hold is on the env now plays all the way through
Cheers 😉
Exo
stw ·
exonerate wrote:
changes in 1.9.7.7:
fixed beat fraction times to work with different time sigs
rewrote the background grid, now works with different time sigs
Made the env view a bit longer
Added a button in properties to set the current shape to the default shape
when sustain is off and hold is on the env now plays all the way through
Cheers 😉
Exo
Well done exo. Thanks for your efforts! The sync seems to work perfectly well now!
Was that "only" a hop issue? That would worry me a bit because that should not happen.
I'll try to contribute if i can.
Large ·
Thanks for the update 😉
However:
In the "Voices" module in FLSM, when setting "Use a new voice when triggering an old note that is already playing" is set to TRUE, there are loud pops, when playing fast notes.
I attached an example.
exonerate ·
stw wrote: Well done exo. Thanks for your efforts! The sync seems to work perfectly well now!
Was that "only" a hop issue? That would worry me a bit because that should not happen.
I'll try to contribute if i can.
This issue with the hop was that the section number could not increase until 128 samples had passed. With no sustain loop it wasn't a noticeable problem because it was a 128 sample latency overall, each and every section started 128 samples late.
With the sustain loop this latency was accumulating, so with each and every loop it goes an extra 128 samples out of sync.
The reason for the latency was simply because when a section has finished a trigger is sent back to the section manager to increase the section number for the next sample, with the hop the next sample was actually 128 samples in the future. So therefore the section number could not increase until 128 samples had passed.
I do think there is something weird going on in this env though, for instance I've had to set the minimum section length to two samples, where as before it was set to one. This was because if two points are at the exact same area on the X axis the section cannot progress to the next, so it's seems to need two samples to increase the section number in this case. Not sure if that would cause any sync issues but it doesn't seem to from the simple tests I've done.
Cheers 😉
Exo
exonerate ·
Large wrote: Thanks for the update 😉
However:
In the "Voices" module in FLSM, when setting "Use a new voice when triggering an old note that is already playing" is set to TRUE, there are loud pops, when playing fast notes.
I attached an example.
Yep this is the next big issue I'm going to attempt to fix, be playing around with solutions but I've not come up with anything "proper" as of yet.
Cheers 😉
Exo
exonerate ·
Ok so I think I've pretty much got the fastRelease thing (popping) solved.
changes in 1.9.7.8:
Fixed a graphical glitch when setting sustain to zero through the point menu.
Rewrote the fastRelease, works now without popping clicking ect-
Needs good testing though to make sure it is ok.
I was testing with a sine wave as this is the best one to use because the pops show up much clearer. Seems to be fine now. 🙂
Cheers 😉
Exo
Large ·
The popping is a little more muffled, but still there. Did you test it in the previous OSM I posted?
I'm suspecting FL Studio may have something to do with this, as I couldn't play your OSM unless I reloaded the envelope into the default FL Studio template.
But a lot of other things were fixed, which is good 🙂
exonerate ·
Ok here we go...
changes in 1.9.7.8b:
Rewrote the fastRelease again, sounds much better to my ears 🙂
The "unlock/lock sustain points" option from the point menu now only shows up
when the sustain loop is on.
In the last version there was still a noticeable popping but muffled. I guess I didn't have my speakers loud enough to hear it properly.
This version *should* be much better.....
Cheers 😉
Exo
Large ·
It must be my computer or FL Studio, as there is still muffled click-popping.
But I tested MyCo's envelope and it also does that.
If you say you don't hear any click-popping then it has to be my computer or FL Studio.
Thanks for your work on this though 🙂
We need more testers. Does anyone else hear the click-popping?
aliasant ·
I tested it earlier today and couldnt ear any strange popping.
Im using a good quality Firewire ASIO soundcard. Are you using real ASIO?
Internal or external soundcard?
What Latency are you running?
Have you tried using maybe 512 or even 1024 and see if that removes the popping?
If I go to low ( say under 128) on my card I get some weird clicks but they are related to sync problems I guess.
That is only on a PC and not using a Mac.
What Im trying to say is that there might be other things in your setup causing this.
Maybe give us a soundbite with the clicks using Exos osm?
Large ·
Not sure what my exact config is, I'll have to check. All other programs work fine though.
Exo, I noticed you fixed other bugs also... the disappering points on reload, and the resetting of envelope shape after copying... Arrrgh! Good job killing those bugs.
However I found another. There's that "hanging note" thing happening again. You'll be playing some notes and then one or two will keep playing non-stop until you cut the poly stream.
This happens on average every 15 minutes or so of playing notes.
Large ·
Not to be confused with "CPU Hanging". It doesn't do that. Just notes that won't turn off.
exonerate ·
Large wrote: Not to be confused with "CPU Hanging". It doesn't do that. Just notes that won't turn off.
I'll be able to take a proper look at this on the weekend. Is this a new problem with the lastest releases? if so which version did it start with?
Cheers 😉
Exo
Large ·
It always has been the case. It happens more so on CPU-demaning schematics, so test it on the biggest baddest schematic you might have 🙂
infuzion ·
Not sure how far you got exo, but I tweaked your last posted version:
experimental: Central preference Heartbeat screen Redraw added to GUI elements, so refresh rate is ~12FPS. Looks a bit choppy, but seems to reduce CPU% by ~25% on my desktop when that GUI element is moved.
changed: Envelope Points/Scale X/Limiter is now cut in half to save CPU & extraneous parts removed.
experimental: automatic Env number for main Preset name
improved: Some modules renamed to help read on the top-bar.
Also, I think in the Audio Code/Section Manager/2 Float Array to Mem + Wave Read can all be replaced by Float Array to Poly. If not, I'm thinking that the 25Hz Limiter can also drive the MemCreate's "Create New Buffer" trigger with some minor rearranging.
Audio Code/Finish Gate/Retrigger's streamboolin finished input is a dead link; that & the "&(finished&1==0)" can be removed?
cheers
exonerate ·
@Infuzion I've not got much done on this since the last release been too busy with other stuff.
Thanks for the update, some nice ideas. 🙂 Not sure about the heartbeat thing but I guess if that could be tweaked some more so the animation is much smoother and still have a CPU reduction that would be good.
The automatic Preset name is a good one, although I think making the new name show in the properties panel would be ideal.
Also, I think in the Audio Code/Section Manager/2 Float Array to Mem + Wave Read can all be replaced by Float Array to Poly. If not, I'm thinking that the 25Hz Limiter can also drive the MemCreate's "Create New Buffer" trigger with some minor rearranging.
The 2 float array to stereo mem is to reduce CPU use. With that I only need one wave read component to read from two float arrays 😀 . The buffer is created only once when the osm/vst loads so no need to do anything there.
Audio Code/Finish Gate/Retrigger's streamboolin finished input is a dead link; that & the "&(finished&1==0)" can be removed?
That's a bug on my part, that link does need deleting. But then the "Finished" input on the module needs to be connected to the "Finished" input on the code component or else the voice might not be killed when using a manual gate.
Cheers 😉
Exo
Large ·
1.) Yes you definitely need to add whatever is necessary to kill voices at the end. Currently, some voices stay on long after they are played, and the only way to kill them is to cut a poly stream. Very annoying.
2.) Why 12 FPS? Wouldn’t more CPU be saved by 0 FPS, by using a trigger switch to turn on the previous FPS (25 FPS?) when actually drawing or modifying the envelope?
Then once finished, automatically switch back to 0 FPS?
Or disconnect the redraw completely using a switch or selector?
There’s no reason for it to be redrawing at all, unless tweaks are being made to the envelope.
stw ·
Large wrote: 2.) Why 12 FPS? Wouldn’t more CPU be saved by 0 FPS, by using a trigger switch to turn on the previous FPS (25 FPS?) when actually drawing or modifying the envelope?
That's already done.
infuzion ·
Large wrote: 2.) Why 12 FPS? Wouldn’t more CPU be saved by 0 FPS, by using a trigger switch to turn on the previous FPS (25 FPS?) when actually drawing or modifying the envelope?
Then once finished, automatically switch back to 0 FPS?
I think you're mistaken on how SM's Redraw primitive works? ALL SM's GUIs are 0FPS, unless you trigger the Redraw. I lowered exo's trigger-gate from a Redraw-trigger maximum of ~24FPS to ~12FPS. It does look choppy; ~16FPS really does look smoother. One can alter that number to their preference.
I'm a bit confused exo about what needs to be done in the gate. Looking forward to your updates!
infuzion ·
I figured out how to improve the 2 Float Array to Mem inside Section Manager. Should work 100% the same; if not let me know please.
Exo, think once everything is bug-proof then we can put a hop() back into the Section Player, or merge all the Code? I was comparing MyCo's Selfmade Exponential Envelope CPU%. I know ASM will reduce a big %, but I wonder if the hop() causes too many issues?
cheers
exonerate ·
infuzion wrote: I figured out how to improve the 2 Float Array to Mem inside Section Manager. Should work 100% the same; if not let me know please.
Exo, think once everything is bug-proof then we can put a hop() back into the Section Player, or merge all the Code? I was comparing MyCo's Selfmade Exponential Envelope CPU%. I know ASM will reduce a big %, but I wonder if the hop() causes too many issues?
cheers
Thanks, yeah the 2 float array to mem, will be fine like that. It more efficient. The reason before that I had a trigger going from the float arrays was so that if the float arrays size changed the buffer size would be updated. A trigger would only have been sent if the size changed. Of course this is highly unlikely to happen so it's ok to remove all that I think.
The hop cannot go back. This was what was causing the sync issues with sustain looping. There is no way round it I'm afraid except from not having a hop. As for merging the code this is not worth trying really, I've tried before but SM just doesn't like it and the env doesn't work correctly in one code component. Cannot remember the exact issues. But I think the problem came from having to send streams out into the wave reads and then back into the code component, I think it messes up the execution order of the code.
The very last thing to do on this is optimize to ASM, we should be there soon. Can't wait for that myself can imagine we can shave a lot of this in ASM 🙂
Cheers 😉
Exo
exonerate ·
Large wrote: However I found another. There's that "hanging note" thing happening again. You'll be playing some notes and then one or two will keep playing non-stop until you cut the poly stream.
This happens on average every 15 minutes or so of playing notes.
Large I've not been able to reproduce this one, have you tested with the standard ADSR and other envs you might have?
Just want to make sure it's my bug and not SMs.
Thanks 😉
Exo
infuzion ·
exonerate wrote: The very last thing to do on this is optimize to ASM, we should be there soon. Can't wait for that myself can imagine we can shave a lot of this in ASM 🙂
That's the easy part for me! 😉
Are there any more issues though before we begin?
exonerate ·
infuzion wrote:
exonerate wrote: The very last thing to do on this is optimize to ASM, we should be there soon. Can't wait for that myself can imagine we can shave a lot of this in ASM 🙂
That's the easy part for me! 😉
Are there any more issues though before we begin?
Just the one reported by large which I have quoted in my last post. I think when that gets sorted we should be ok to go for the ASM optimizing. 🙂
Cheers 😉
Exo
Large ·
exonerate wrote:
Large wrote: However I found another. There's that "hanging note" thing happening again. You'll be playing some notes and then one or two will keep playing non-stop until you cut the poly stream.
This happens on average every 15 minutes or so of playing notes.
Large I've not been able to reproduce this one, have you tested with the standard ADSR and other envs you might have?
Just want to make sure it's my bug and not SMs.
Thanks 😉
Exo
Correct.
The "note hanging" only occurs with yours. Not to be confused with "CPU Hanging".
To get it to happen, you have to have a big schematic, eating up lots of CPU. Then play a bunch of notes fast until it happens. One (or two sometimes) note(s) will keep playing forever, even if you hands are off the keyboard.
This is what happened to me when I was playing with my cello emulation (which I can't post). So I replaced yours with Myco's curved ASDR envelopes, and there's no more "note hanging".
Ask Myco how he managed to kill the "note hanging".
Thanks.
infuzion ·
Large wrote: The "note hanging" only occurs with yours.
This is what happened to me when I was playing with my cello emulation (which I can't post). So I replaced yours with Myco's curved ASDR envelopes, and there's no more "note hanging".
edit: oh, that gate-finished link is still broken, might be the issue 🙂
Large ·
infuzion wrote: Are you playing fast, many notes at once, etc?
Yes, with "Use a new voice when triggering a note that is already playing" set to "TRUE".
This problem ONLY exists with this envelope. Not with any other softsynth, and I use a lot 🙂
Like I said before, Myco's ASDR envelope doesn't have that problem.
Let's get him in this discussion, please.
infuzion ·
edit: removed broken version
Large ·
Geez, that didn't take long. After about 7 notes, one of them hung. And kept hanging.
Seriously guys talk to MyCo. His envelopes never do this. What is he doing right?
Also talk to Malc, as he is in charge of FLSM, which I am using. Perhaps there's a difference between
FLSM and SM.
Please talk to them! You guys are so close, and I await the ASM-FU speed increase!
Thanks.
infuzion ·
Large wrote: Geez, that didn't take long. After about 7 notes, one of them hung. And kept hanging.
Maybe they are hanging in your synth, but with out an OSM I have no real way to isolate the issue. It seems no one else has this issue?
aliasant ·
I think I have said it before but yes. It sounds as if this problem is outside SM. The Synth keyboard itself or the cable/midi interface.
I had similar with a bad driver for my Motu. I kept getting hanged notes but once they fixed the drivers all was good.
I have tested this and had no problems at all but I didnt test it for more then a few minutes.
exonerate ·
I fixed the issue with the possible voice not being killed when using manual gate.
I think this must be the cause of your problem, Large.
Test the new one in my first post. I uploaded that yesterday by the way, had a few issues with my PC and then forgot to mention the update!
Cheers 😉
Exo
infuzion ·
exonerate wrote: Test the new one in my first post. I uploaded that yesterday by the way, had a few issues with my PC and then forgot to mention the update!
Doh! Just spend a few hours de-bugging & reducing the GUI portion!
right clicking the curve control was not redrawing the straightened link.
Exactly how did you do this please?
exonerate ·
infuzion wrote:
exonerate wrote: Test the new one in my first post. I uploaded that yesterday by the way, had a few issues with my PC and then forgot to mention the update!
Doh! Just spend a few hours de-bugging & reducing the GUI portion!
right clicking the curve control was not redrawing the straightened link.
Exactly how did you do this please?
No worries my changes were minor so they can be worked into yours rather than the other way round. 🙂
For the curve not redrawing, do this....go into the Rightclick module. You see the module called "if not, Click on Curve?" take the "pass" output from that and connect it to the "Redraw" wireless Out .
Cheers 😉
Exo
Large ·
This time it took 2 minutes to "get the hang of it". I played a little manually, then hit play to play a complex melody via the Piano Roll (FL's Midi). No hanging.
Then went back to manually playing keyboard in random ways. And it happened.
Seems when two or more notes hit at the same time, or nearly at the same time causes the note hang... 🙁
stefan ·
Large wrote: This time it took 2 minutes to "get the hang of it". I played a little manually, then hit play to play a complex melody via the Piano Roll (FL's Midi). No hanging.
Then went back to manually playing keyboard in random ways. And it happened.
Seems when two or more notes hit at the same time, or nearly at the same time causes the note hang... 🙁
But ONLY when played live on a midi keyboard?
BTW, AWESOME that you guys are still working on this to get it really perfect. I love it 🙂
Acrobat ·
Large wrote: This time it took 2 minutes to "get the hang of it". I played a little manually, then hit play to play a complex melody via the Piano Roll (FL's Midi). No hanging.
Then went back to manually playing keyboard in random ways. And it happened.
Seems when two or more notes hit at the same time, or nearly at the same time causes the note hang... 🙁
I wonder if the hang happens playing an oscillator or a sample...?
I think you should always specify that, and the MIDI to voices input settings too.
infuzion ·
stefan wrote:
Large wrote: This time it took 2 minutes to "get the hang of it". I played a little manually, then hit play to play a complex melody via the Piano Roll (FL's Midi). No hanging.
Then went back to manually playing keyboard in random ways. And it happened.
Seems when two or more notes hit at the same time, or nearly at the same time causes the note hang... 🙁
But ONLY when played live on a midi keyboard?
I'm 20% certain that is it his OSM causing the hanging, 30% certain that it is his setup (drivers etc), but with out an OSM to test or bug reports from others there is no way I am even going to try to isolate or de-bug. The MSE could be bugged, but there is no way to tell.
Edit: Please do not think I am making fun of you Large. But I really have no way to isolate the problem. It would be like calling a mechanic to fix your automobile, only to say, "My car does not work sometimes!" without giving the car to the mechanic to look at to figure it out.
Large ·
stefan wrote: But ONLY when played live on a midi keyboard?
I gonna say yes on this. I don't think it ever had problems when the sequencer was playing it.
Acrobat wrote: I wonder if the hang happens playing an oscillator or a sample...?
My OSM (cello emulation, can't post it) has 2 different tuned delay lines. Perhaps the feedback affects the envelope.
There are also about 30 ASM RBJ BP filters. A saw oscillator, and ASM white noise code.
infuzion wrote: I'm 20% certain that is it his OSM causing the hanging, 30% certain that it is his setup (drivers etc), but with out an OSM to test or bug reports from others there is no way I am even going to try to isolate or de-bug. The MSE could be bugged, but there is no way to tell.
But I really have no way to isolate the problem. It would be like calling a mechanic to fix your automobile, only to say, "My car does not work sometimes!" without giving the car to the mechanic to look at to figure it out.
1.) If you look above, you'll see "Aliasant" also had problems with hanging. So there are at least two.
2.) One could assume the problem is on my end, but keep in mind I use a ton of other soft synths, half of which use multipoint envelopes, and there are zero problems.
3.) Re: mechanic analogy... you have that half right. You do have the car (multipoint envelope) to work on. It just doesn't handle the road (my OSM), everytime. 🙂
I'll try to post a different OSM, that has the same problem.
infuzion ·
Large wrote: [3.) Re: mechanic analogy... you have that half right. You do have the car (multipoint envelope) to work on. It just doesn't handle the road (my OSM), everytime.
No, I have the transmission, that works in my car just fine. 😉
Large wrote: I'll try to post a different OSM, that has the same problem.
That would be great & help all of us alot. TIA
aliasant ·
Large wrote: 1.) If you look above, you'll see "Aliasant" also had problems with hanging. So there are at least two.
Nono.
I had hanging notes caused by BAD MIDI DRIVERS from Motu.
Once they updated it and I reinstalled it all works just fine. More then fine actually.
Large ·
Okay here is a "working" example of the hanging note.
I got it to hang with five fingers hitting five different notes almost at once.
I'm thinking the MSE either doesn't like the tuned delays or the "Voices" module in FL Synthmaker.
Or there's a bug in the MSE, as MyCo's envelope never has this issue.
BTW, if anyone wants to ASM-FU the tuned delays, that would be great 🙂
I've ASM'd them down by about 100 cycles, but my abilities in that dept. are limited.
aliasant ·
First a little warning especially to Sunnyboy if hes testing this.
MIND YOUR SPEAKERS. This osm will blast all it has.....
Now 🙂
Tested that Large and I can confirm getting hangups when hitting 4 keys on my pc keyboard at the same time 3 times in a row. Thats a total of 12 voices perhaps?
I used these keys: W,E,R,T
Hit them at the same time 3 times in a row as fast as possible. Thats at least what did it for me BUT.... !
When I switched to ASIO (real. Not any fake direct X version or ASIO4all) I could not get the hangups at all at any tested latency. Everything worked as it should.
I then switched the asio to ASIO Direct X Driver and that gives the hangups again.
I also tried to remove the SVF filters and one of the delay modules with the exact same result.
I then removed as much as I could and I still get the hangs using the direct X driver.
Here is a slimmed down osm with a additional amp at the end for your ears and speakers...
Large ·
aliasant wrote: When I switched to ASIO (real. Not any fake direct X version or ASIO4all) I could not get the hangups at all at any tested latency. Everything worked as it should.
Where do I find "real" ASIO drivers? (for my own personal use).
Also, the problem with this is, I plan to sell the plugin. What happens if customers have drivers that this MSE doesn't like? Lost profits, that's what happens. There are a LOT of people who use ASIO4all.
That's why we should focus on fixing the MSE itself and not worry about drivers.
Thanks for testing my OSM though 🙂
BTW Aliasant, could you please delete your OSM? I fear there may be confusion as to which one to download. There are volume knobs on the tuned delays; one can simply turn them down.
Infuzion, have you downloaded the OSM that I posted?
Jay ·
Large wrote: Where do I find "real" ASIO drivers? (for my own personal use).
well that depends on what audio hardware you are using!
here is a couple for onboard sound.these may help is asio4all ain't no good for you. But other than that
http://sobrenitro.free.fr/--programme-- ... .8beta.rar << Direct download
other than that afaik you would need to purchase a third party driver,there are a couple 🙂
hope that helps
Best Regards
MichaelBenjamin ·
if you do process audio you really should have a proper asio card. the ds drivers are only a notlösung and perform very badly. a good and cheap card, if you got a pci slot, is the emu 0404 that costs 49€. other cards are good aswell. if you dont got a pci slot usb also works good. i would stay away from firewire, since its more problematic on pc, and only usable with macs.
infuzion ·
MichaelBenjamin wrote: i would stay away from firewire, since its more problematic on pc, and only usable with macs.
+1
I bought a Firebox, & presonus is not a bad company. The laptop I once used had the worst firewire port, & would not even work with a FW HD. It took 2 FW PCI cards until I could use my Firebox. It is not the Firewire spec, it is the FW chip-makers & the companies that use those chips. 😠
Large: Try connecting the Gate between the Voices to Poly & the MSE. It is our mistake that we did not connect this in our demo.
If that does not work, I'd like to hear about the results when you switch on & off all the boolian ins for the MIDI to Voices please.
BTW, aliasant is correct; always multiply audio by 0.2 or something just before (or sometime in between) the final output. Four notes = 400% volume with out it; bad for speakers, bad for ears, bad for neighbor relations.
TIA
infuzion ·
aliasant wrote: I then removed as much as I could and I still get the hangs using the direct X driver.
Here is a slimmed down osm with a additional amp at the end for your ears and speakers...
I forgot to mention that the best OSC to test envelopes or most other things is a Sawtooth, with the phase ensured to have the first output value to be near +1. Sine is bad to test with often since it is so basic-sounding (only 1 fundamental), it is harder to hear changes.
MichaelBenjamin ·
really? from my experience its quite the opposite. if you set the phase of a sine to 0.25 it also starts at 1, and you can hear clicks much better, since it is so basic sounding and every other high frequency content stands out. with a saw possible high frequency content could get masked. to test the sound of a filter the sine doesnt make much sense, but for everything else i prefer it over other waveforms.
infuzion ·
MichaelBenjamin wrote: really? from my experience its quite the opposite. if you set the phase of a sine to 0.25 it also starts at 1, and you can hear clicks much better
Oh Sine is good for click, but I think the issue at hand is that the sound doesn't start/stop correctly for the envelope.
Large ·
infuzion wrote:
Large: Try connecting the Gate between the Voices to Poly & the MSE. It is our mistake that we did not connect this in our demo.
If that does not work, I'd like to hear about the results when you switch on & off all the boolian ins for the MIDI to Voices please.
The gate did nothing. Still hangs.
The changing of booleans also did nothing.
Please get MyCo and Malc in this thread. They may have some insights that would solve this problem.
infuzion ·
Large wrote:
infuzion wrote: The gate did nothing. Still hangs. The changing of booleans also did nothing.
Please get MyCo and Malc in this thread. They may have some insights that would solve this problem.
Thanks for the testing!
I still find it strange that you are the only one having these issues, although I think only about 5 others really tested it.
aliasant ·
infuzion wrote:
Large wrote:
infuzion wrote: The gate did nothing. Still hangs. The changing of booleans also did nothing.
Please get MyCo and Malc in this thread. They may have some insights that would solve this problem.
Thanks for the testing!
I still find it strange that you are the only one having these issues, although I think only about 5 others really tested it.
I do get the hanging but never with my real sound card.
Also I havnt tested the same scenario with another envelope like the stock ones.
infuzion ·
aliasant wrote:
infuzion wrote:
Large wrote: The gate did nothing. Still hangs. The changing of booleans also did nothing. Please get MyCo and Malc in this thread. They may have some insights that would solve this problem.
Thanks for the testing! I still find it strange that you are the only one having these issues, although I think only about 5 others really tested it.
I do get the hanging but never with my real sound card.
Also I haven't tested the same scenario with another envelope like the stock ones.
This then is likely an SM bug &/or driver issue, not an MSE bug. If you &/or Large can get the same hanging with the MSE that ships with SM or other SM Code envelopes or ADSR4, please report the bug with soundcard details in the bug forum.
exonerate ·
@Large if this is an issue with the MSE I WILL be able to fix it. I've not been able to test it just yet, not at my SM machine and won't be for a couple of days. But it seem's strange that aliasant has reported it is ok with his real asio drivers.
So what i'm getting is that Mycos env doesn't do it but MSME does but it only happens with a fake asio driver.
So it seems there is something specific to the MSME that causes the issue to show up. But because of the fact it only happens with a fake asio driver tells me there is actually a bug in SM but this bug is only showing up in the MSME.
I'll do some testing as soon as I'm at home and have the time. I'll report to Malc went/if I can determine it's a SM issue.
Cheers 😉
Exo
infuzion ·
In the meanwhile, I've been working the reducing & improving the GUI coding. Every single module has been sifted though 3+ times. Some look somewhat messier inside, some are more clear due to fewer parts & more seen at once. A few places I've reduced the math & Switch flow, so should use slightly less CPU when adjusting. Some unused code was removed I've tested it constantly, but that does not mean I have not made mistakes.
before/after
OSM in bytes: 263,532 / 223,465
Primitives: 4295 / 3550
Modules: 394 / 275
Links: 5276 / 4543
Existing bugs:
- Points' Time & Measure display can overlap, making both unreadable
- Wireless Links "sus start" & "sus end" seem not to be needed?
- Finish:Gate's "Finish" Code has an unused "streamin section"
- "Value to 0" broken; not sending triggers properly, related new bug?
- something else I missed?
Suggestions:
? Move Load/Save/Flip shape menu to right-click menu, replacing "Reset to Default", which will become a file to be loaded (will reduce parts & CPU ever slightly due to reduced Array Switches).
? Move Free/Snap button into right-click menu.
? Add icons to show status of Free Move, Snap, & if shape has been saved/altered.
? Bi-Polar shape fill
? Point-Right-click menu display seconds & measure info
MyCo ·
@exo: The only difference between real and virtual ASIO Drivers are the buffersizes. Real Asio-Drivers have a very small buffer (low latency)... virtual Asio-Drivers use bigger, to avoid software interruption.
So, the clicks can come from a hops or wrong calculating section length. I use Asio4All and DirectSound, and when I enable "use a new voice when retriggering a note that is already playing", and play very fast I can confirm there is a voice hanging in the sustain loop... the envelope state of this voice is 4 (releasing), but it plays in the sustain loop, you can check that by changing the points while the voice is hanging.
Large ·
exonerate wrote: So what i'm getting is that Mycos env doesn't do it but MSME does but it only happens with a fake asio driver.
So it seems there is something specific to the MSME that causes the issue to show up. But because of the fact it only happens with a fake asio driver tells me there is actually a bug in SM but this bug is only showing up in the MSME.
Yes, I believe this might be the case.
exonerate wrote: I'll do some testing as soon as I'm at home and have the time. I'll report to Malc went/if I can determine it's a SM issue.
I'm pretty sure Malc will add it to the toolkit, once the bugs are sorted out. I can't wait to see that old MSE ditched and replaced 🙂
infuzion wrote: In the meanwhile, I've been working the reducing & improving the GUI coding. Every single module has been sifted though 3+ times.
I definitely like the optimizations you are doing here.
MyCo wrote: So, the clicks can come from a hops or wrong calculating section length. I use Asio4All and DirectSound, and when I enable "use a new voice when retriggering a note that is already playing", and play very fast I can confirm there is a voice hanging in the sustain loop... the envelope state of this voice is 4 (releasing), but it plays in the sustain loop, you can check that by changing the points while the voice is hanging.
You've noticed the clicks also? They sound like muffled clicks, right? So we have two people reporting clicks.
Also, you point out the chance that the hanging bug could be between SM and the MSE's sustain code.
infuzion ·
Large wrote: I'm pretty sure Malc will add it [MSME] to the toolkit, once the bugs are sorted out. I can't wait to see that old MSE ditched and replaced
I doubt that. On rare occasion Malc does add something (POW math module), but other improvements (ASM versions) are not.
Large wrote:
infuzion wrote: In the meanwhile, I've been working the reducing & improving the GUI coding. Every single module has been sifted though 3+ times.
I definitely like the optimizations you are doing here.
Thank you 🙂
Large wrote: You've noticed the clicks also? They sound like muffled clicks, right? So we have two people reporting clicks. Also, you point out the chance that the hanging bug could be between SM and the MSE's sustain code.
I also think that might be the case also. Do you have same issues with the toolbox MSE?
infuzion ·
infuzion wrote: Existing bugs:
- Points' Time & Measure display can overlap, making both unreadable
fixed Wireless Links "sus start" & "sus end" seem not to be needed?
- Finish:Gate's "Finish" Code has an unused "streamin section"
fixed "Value to 0" broken; not sending triggers properly, related new bug?
- something else I missed?
Suggestions:
in progress: Move Load/Save/Flip shape menu to right-click menu, replacing "Reset to Default", which will become a file to be loaded (will reduce parts & CPU ever slightly due to reduced Array Switches).
? Move Free/Snap button into right-click menu.
? Add icons to show status of Free Move, Snap, & if shape has been saved/altered.
help needed: Bi-Polar shape fill
? Point-Right-click menu display seconds & measure info
I'm working in the GUI part still.
Any news on audio issues being isolated?
exonerate ·
infuzion wrote: Any news on audio issues being isolated?
Not yet, is a weird one. I could get the notes to hang sometimes by only pressing one note when the CPU was busy ( I had my virus software doing a scan so CPU was going up to 100 percent).
I'd apreciate any efforts by others to isolate the cause, my time is very limited at the moment. 😇 😝
Cheers 😉
Exo
stw ·
exonerate wrote: I'd apreciate any efforts by others to isolate the cause, my time is very limited at the moment. 😇 😝
Cheers 😉
Exo
ok Exo, here're my testing results:
I can create hanging notes whren using a DS out. I just have to wipe over my keyboard a few times with 64 Voices enabled and i happens up to 100%.
First i couldn't get any hanging notes with using any kind of ASIO driver. No matter if soft- or hardware driver.
After playing around with buffer sizes this changed to the other way round. Now the easiest way to produce hanging notes is with big buffer sizes. I just have to set up a 2048 samples buffer and hit e.g. 8 notes simultaniously and some of them are stuck immediatly!
After returning to my usual settings 512 or 256 samples buffer i had some hanging notes too, however that comes.
I verified the new MSE to the stock ADSR and stock MSE and the new MSE is the only one which creates these errors.
So it seems as if this baby has a serious issue with finishing voices.
aliasant ·
stw wrote:
exonerate wrote: I'd apreciate any efforts by others to isolate the cause, my time is very limited at the moment. 😇 😝
Cheers 😉
Exo
ok Exo, here're my testing results:
I can create hanging notes whren using a DS out. I just have to wipe over my keyboard a few times with 64 Voices enabled and i happens up to 100%.
First i couldn't get any hanging notes with using any kind of ASIO driver. No matter if soft- or hardware driver.
After playing around with buffer sizes this changed to the other way round. Now the easiest way to produce hanging notes is with big buffer sizes. I just have to set up a 2048 samples buffer and hit e.g. 8 notes simultaniously and some of them are stuck immediatly!
After returning to my usual settings 512 or 256 samples buffer i had some hanging notes too, however that comes.
I verified the new MSE to the stock ADSR and stock MSE and the new MSE is the only one which creates these errors.
So it seems as if this baby has a serious issue with finishing voices.
Doesnt it sound like, if you manage to use more voices then the max within the buffer set on the audiocard, the "extra" voices looses their release or finish stage?
Something similar to that anyways.
That would explain why it gets harder the smaller your buffer is.
If you have max 8 voices you would have to top that within the buffer time.
Is there a hop involved here?
infuzion ·
aliasant wrote:
stw wrote: I can create hanging notes whren using a DS out. I just have to wipe over my keyboard a few times with 64 Voices enabled and i happens up to 100%. First i couldn't get any hanging notes with using any kind of ASIO driver. No matter if soft- or hardware driver.
I verified the new MSE to the stock ADSR and stock MSE and the new MSE is the only one which creates these errors.
So it seems as if this baby has a serious issue with finishing voices.
Doesnt it sound like, if you manage to use more voices then the max within the buffer set on the audiocard, the "extra" voices looses their release or finish stage?
Is there a hop involved here?
I'm thinking it is more of an buffer issue also, though something might be done to workaround this inside the MSME. I don't think the Finish:Gate system is finished yet anyway; Exo can you work on that please?
No hops are involved at all.
infuzion ·
Fixed:
> Shape copy was overridden by Shape Load, now copy/paste works like most apps
- "sus start" & "sus end" removed, receptors found (I think) & renamed
- "Value to 0" was broken
New/changed features for 1.9.8.0:
+ new points = double-click, since single-clicks are often accidental
+ Shape menu moved to general right-click menu
+ Copy/paste now included in Shape menu
+ Shape file extension standard: last=.vcs (Vectorish Controller Shape), next to last=LFO or envelope type, first name = "default" for standard shape of type. Still same text file format, so you can re-use old .txt as-is.
- removed "default" right-click; use Load default.*.vcs instead.
- moved Free/Locked Move right-click menu switch to button & renamed to make more clear. Likely will be moved to right-click point menu; need more interface room?
Known bugs:
!- Audio Code/Finish:Gate unfinished (exo?)
- Finish:Gate's "Finish" Code has an unused "streamin section"
- Points' Time & Measure display can overlap, making both unreadable
- Deleting a point sometimes changes previous curve &/or point to unwanted value; often with Sustain or Release points.
- Loading new shapes seem to cause 2 redraws, should be 1
- edit: Properties:MAX ENV POINTS is set to 64, but the load/save/copy/paste module is hard-wired to 64 points.
- something else I missed?
Suggestions:
? Move Free/Snap button into right-click point menu.
? Add display (likely text, maybe icons if someone wants to make) to show status of Free Move, Snap, & if shape has been saved/altered.
? help needed: Bi-Polar shape fill
? Point-Right-click menu &/or hover display seconds & measure info
? Move right-click time stuff into sub-menu
? Display value # of point & curve on left mouse button down
? Move zoom & scroll to main display to use RMB &/or MMB
? lock screen/points?
? shift/control+point-move for only X or Y movement
? new Multiple select points (likely with qualifier CTRL or such)
? new Select all points of sustain loop
? beat markers numbers
? set Load/Save .vcs to current folder or \shapes?
? extra module to save default .vcs if not existing
I can use some tester love here 😉
exonerate ·
Thanks for the update Infuzion 🙂
I think the double click insert point is a good idea. 🙂
I like having the sync move as a button. Although I cannot understand why you have took that out of the right click menu but put the shape menu into it? I think the shape menu should be a button, I wouldn't expect the loading of shapes to be at the bottom of a right click menu. Also the sync move button is too big but needs to be to convey enough meaning, might be best then to just put that in the point menu, the name/description for it can be as long as you want then.
Like the .vcs file extension does look more professional than the plain .txt extension.
Regarding moving free/snap button to right click menu, I like it as it is, gives easy access and doesn't really get in the way with it being right in the top corner.
Bi-Polar shape fill is a good idea, stw was the one who originally did the fills. Not sure why he didn't do a fill for bi-polar but I'm assuming it would prove quite tricky.
I think adding MMB for scrolling and zooming would be a good idea although I think the scroll and zoom bar should stay and have both ways. Some people prefer the old skool approach of just moving a scroll bar, I do in many cases. And it's just more obvious no need to read a manual to figure it out.
Sorry I cannot comment on all your points there is just too many! 🙂
I've now fixed the note hanging, well it's not happening anymore for me but obviously needs testing by others.
I've added that to the first post. I've just took your latest version infuzion and put the audio code from the toolbox env into it. Then I worked all the extra/different bits into it.
Not sure why the hanging was happening to be honest I couldn't track down the cause. 😕 But works now. 😀
Cheers 😉
Exo
infuzion ·
Thanks for the reply & comments! I'm looking for more from others.
exonerate wrote: I like having the sync move as a button. Although I cannot understand why you have took that out of the right click menu but put the shape menu into it?...Also the sync move button is too big but needs to be to convey enough meaning, might be best then to just put that in the point menu, the name/description for it can be as long as you want then....Regarding moving free/snap button to right click menu, I like it as it is, gives easy access and doesn't really get in the way with it being right in the top corner.
My reasons are here:
1) Preferences that have a state (switchable mode) need to have a way to signal what state they are in before an action that depends on that state. Before we could not tell what state the Free/Locked Move was until I either right clicked or actually moved the point. Now we can see what will happen before moving the mouse.
2) I placed the the shape menu to a right-click because:
-a- to make room for the Sync & Snap move buttons; 2 short rows of controls is more than enough & I didn't want
to eat up too much scrollbar space at the time (my thinking yesterday, which is also changing)
-b- having 3 pop-up menus is too much; 2 is pushing it
-c- Load & Save are used only occasionally; no need to have more accessible
3) A slightly bigger button is better for faster editing, important when working rapidly to make a deadline or playing live. Having the buttons say simply Single/Sync & Free/Snap with either a Label saying "Point Move" to the left of it might be a better idea? Or a mouse-over description (though isn't Mouse Over problematic, or eats up more CPU?) instead?
4) I prefer icons over right-click menus (though having both sometimes is best if it is often-used & location of mouse is more contextual). I also prefer shorter menus with cascading sub-menus; faster to travel & to read. I hate SM's right click menu; way too long & too much info at once. I also plan to add more features, so more menu items = the need to cascade menus.
5) All buttons & sliders need to be in one area; faster to edit, read, etc. I didn't even see that Free/Snap switch until a few versions & months after it was added! Also there are issues with pass-though clicks there.
exonerate wrote: Bi-Polar shape fill is a good idea, stw was the one who originally did the fills. Not sure why he didn't do a fill for bi-polar but I'm assuming it would prove quite tricky.
I have an OSC module that does a middle-to-0 fill, I've credited it to oddson but I can't find the forum post.
stw, oddson, MyCo... anyone would like to step up here please?
I could cut & paste the coding in, but I'd like the experts to work on that. 😉
exonerate wrote: I think adding MMB for scrolling and zooming would be a good idea although I think the scroll and zoom bar should stay and have both ways. Some people prefer the old skool approach of just moving a scroll bar, I do in many cases. And it's just more obvious no need to read a manual to figure it out.
I do like the scroll & zoom bars; they are a fast way to work & I'm the one who rewrote the old 1-bar version to what the 2-bar version we see today. 😀 But we do need room for more buttons & status-icons/text on bottom, so either we have to move the functionality away or make the bars even more smaller. I'm thinking about making the Load/Save/Copy/Paste into square icons again, but I do not want to make 3 rows of controls. The entire VST will be nothing but the MSMEs then. Maybe make a smaller GUI for the scroll & zoom? I like how Ableton Live does for the their scroll & zoom, but the buttons & bars are a bit too small on high dot-pitch monitors when performing live/fast. Maybe use a stubby slider that you can double-click to set %?
exonerate wrote: I've now fixed the note hanging, well it's not happening anymore for me but obviously needs testing by others.... put the audio code from the toolbox env into it. Then I worked all the extra/different bits into it.
[/quote][/quote]Cool, I hope more test it. I'm still thinking the problem was in the Finish:Gate section.
Thanks to all for their hard work!
stw ·
exonerate wrote:
Bi-Polar shape fill is a good idea, stw was the one who originally did the fills. Not sure why he didn't do a fill for bi-polar but I'm assuming it would prove quite tricky.
Yes at least to tricky to be worth the effort that time. But i'll give it another try. I can't say when i find time for it but i'll go for it as soon as possible.
exonerate wrote: I've now fixed the note hanging, well it's not happening anymore for me but obviously needs testing by others.
Can't test it right now but what was causing this?
exonerate ·
stw wrote: Can't test it right now but what was causing this?
I actually don't know. 😊 😀
This problem didn't happen in the toolbox MSE. So I just swapped the audio code over from that one, and added the changes back from the MSME.
stw ·
ok after activating some of my synapses it actually wasn't that hard.... 😉
Here's the bi polar curve fill
infuzion ·
stw wrote: ok after activating some of my synapses it actually wasn't that hard.... Here's the bi polar curve fill
Cool, ty, I knew you could do it! 😇
DigitalWhiteByte ·
Great Stuff 😀
AngularMomentum ·
Is it a bug or a feature? The sustain is only looping the end point? When I set the start to full and the end to zero it drops silent, and when I set the start to zero and the end full, it swells up as it should, but doesn't repeat and keeps sustaining at full volume.
aliasant ·
AngularMomentum wrote: Is it a bug or a feature? The sustain is only looping the end point? When I set the start to full and the end to zero it drops silent, and when I set the start to zero and the end full, it swells up as it should, but doesn't repeat and keeps sustaining at full volume.
Confimred.
Cant be a feature or?
Allthough I have always wanted all sustain points to move vertically in sync with a key pressed or similar.
eg. shift+click&drag.
infuzion ·
aliasant wrote: Allthough I have always wanted all sustain points to move vertically in sync with a key pressed or similar. eg. shift+click&drag.
There is a right-click menu to do that for the start & end points. Feel free to [CTRL]+click to select multiple points to drag all at once. 🙂
aliasant ·
infuzion wrote:
aliasant wrote: Allthough I have always wanted all sustain points to move vertically in sync with a key pressed or similar. eg. shift+click&drag.
There is a right-click menu to do that for the start & end points. Feel free to [CTRL]+click to select multiple points to drag all at once. 🙂
I will the day I actually start putting that synth together.
Estimated release date is Jan 1 2046.
infuzion ·
aliasant wrote:
infuzion wrote:
aliasant wrote: Allthough I have always wanted all sustain points to move vertically in sync with a key pressed or similar. eg. shift+click&drag.
There is a right-click menu to do that for the start & end points. Feel free to [CTRL]+click to select multiple points to drag all at once. 🙂
I will the day I actually start putting that synth together. Estimated release date is Jan 1 2046.
Most of the modules you need are already inside the OSM; Presets/* Array/Advanced Float Array/VST Param/Locked Move. And you will have to go inside LeftClick Drag, create a new array if a qualifier key is presed if "Click on Point?". I'd do it, but I'm already busy. Good idea though!
infuzion ·
I forgot to report this but before, but:
1) Properties:MAX ENV POINTS is pre-set set to 64, but could & should be changed as needs arise (most envelopes IMHO could & should be set to 16, 32 max; smaller arrays in SM, the better. However, if you want to use the MSME for song-long modulation like you find in DAWs, one can use more points)
2) Shape routines (Save,Load,Copy,Paste) are hard-coded to 64 points (see Parse and Split module), & there is no markup or "Variables" info to set how long the points-array should be as I can tell.
I would like the .VCS (saved array) file & copy/paste to hold the vector length size, so the MSME can load different sizes, & just truncate if the .VCS is too long.
Exo or whoever added the shape routines, is there a spec-sheet on all the items used in the "Variables" please?
I added in my current GUI bug-list.
infuzion ·
aliasant wrote:
AngularMomentum wrote: Is it a bug or a feature? The sustain is only looping the end point? When I set the start to full and the end to zero it drops silent, and when I set the start to zero and the end full, it swells up as it should, but doesn't repeat and keeps sustaining at full volume.
Confirmed. Can't be a feature or?
OK, I isolated the behavior: seems the sustain-loop is forgetting an end point. You can test this by having a 3 point sustain-loop (including the Start & End), playing, then deleting the middle point, play a few times, then re-adding the middle point. Happens at least to V1.9.8.0, so it happened before the MSE-MSME Code re-merge. Not sure if the bug is something in the non-audio routines (point calculations) or audio Code. Might be something I did, or not. I'll have to look into the GUI part in a day or 3.
Other changes: I've found that the Zoom had no VST Parameter (important; I've added), but the Scroll does (drop this?)? I fixed that, & have a few more changes in an internal beta.
stw ·
Though i can't confirm the sustain loop bug (seems to work as expected) i remember that i had that kind of "misleaded sustain points". However i can't reproduce right know. Maybe i've to test further.
But i found some other issues:
If two points fall to the same position the levels are corrupted. Test this with a simple saw. As soon as the 0 point and the 1 point are at the same place the level is reduced. Maybe the levels are summed or something like that. This happens to every "double".
When I added the snap function to grid the grid changed to the selected resolution if not in "auto" mode. In auto mode it worked the other way round. Snap snapped on the graphical resolution set by the zoom factor. Both functions are broken.
infuzion ·
stw wrote: Though i can't confirm the sustain loop bug (seems to work as expected) i remember that i had that kind of "misleaded sustain points". However i can't reproduce right know. Maybe i've to test further.
Sorry I should have attached an example file. I would just post some .VCS shapes, but since I've made other changes, here is the entire OSM:
The patch Loop:HighEnd is obvious; volume swells loud to the Sustain-loop End, & stays loud. Insert a new point between the Start & End & hear what happens.
If two points fall to the same position the levels are corrupted. Test this with a simple saw. As soon as the 0 point and the 1 point are at the same place the level is reduced. Maybe the levels are summed or something like that. This happens to every "double".
Can you save an .VCS file or 2 & upload to this thread please?
When I added the snap function to grid the grid changed to the selected resolution if not in "auto" mode. In auto mode it worked the other way round. Snap snapped on the graphical resolution set by the zoom factor. Both functions are broken.
Try this version. I didn't change any logic, but perhaps I fixed by accident. It is buggy though; the values are hard-coded, assuming a 4/4 measure?
infuzion wrote: I would like the .VCS (saved array) file & copy/paste to hold the vector length size, so the MSME can load different sizes, & just truncate if the .VCS is too long.
Exo or whoever added the shape routines, is there a spec-sheet on all the items used in the "Variables" please?
I still need this info. TIA
exonerate ·
Infuzion wrote: Exo or whoever added the shape routines, is there a spec-sheet on all the items used in the "Variables" please?
Will this do?
0 = sustain start
1 = sustain end
2 = number of points for arrays
3 = sustain on/off
4 = zoom
They are the only ones used.
Cheers 😉
Exo
stw ·
infuzion wrote: Can you save an .VCS file or 2 & upload to this thread please?
I will if i'm back at my DAW. But you can esay try yourself by following my description.
infuzion wrote: Try this version. I didn't change any logic, but perhaps I fixed by accident. It is buggy though; the values are hard-coded, assuming a 4/4 measure?
No! The whole thing was killed with the new background grid drawing modules. So i took these simplified and deleted a lot of modules and rewrote the Grid snap thing. I fine tuned the limits for auto grid changes a bit too.
Another side effect is that dotted and triplet measures are available again. I didn't test it but visually it seems to be fine.
infuzion ·
exonerate wrote:
Infuzion wrote: Exo or whoever added the shape routines, is there a spec-sheet on all the items used in the "Variables" please?
Will this do?
0 = sustain start
1 = sustain end
2 = number of points for arrays
3 = sustain on/off
4 = zoom
Yes, thank you.
stw wrote:
infuzion wrote: Can you save an .VCS file or 2 & upload to this thread please?
I will if I'm back at my DAW. But you can easily try yourself by following my description.
I'm half-way brain-dead due to lack of sleep; thus I need to see with eyes & not mind.
stw wrote: No! The whole thing was killed with the new background grid drawing modules. So i took these simplified and deleted a lot of modules and rewrote the Grid snap thing. I fine tuned the limits for auto grid changes a bit too.
Another side effect is that dotted and triplet measures are available again. I didn't test it but visually it seems to be fine.
Thanks for your hard work stw! Visually it seems to work well here also. We'll have to re-add the beat & maybe half/quarter markers; too hard to get lost. Or maybe make the markers dotted or dashed to be lighter. If someone can test an VST export with an weird time measure (eg 3/2), that would be helpful. But I still think that part is broken?
stw ·
infuzion wrote: I'm half-way brain-dead due to lack of sleep; thus I need to see with eyes & not mind.
It's in the actual attachment. The amps have the same levels but one is louder than the other. The louder and correct peak comes from the point (susatin end) which is preceded by a point on another position. The wrong lower value comes from the peak which is preceded by a point on the same position.
infuzion wrote: We'll have to re-add the beat & maybe half/quarter markers; too hard to get lost. Or maybe make the markers dotted or dashed to be lighter. If someone can test an VST export with an weird time measure (eg 3/2), that would be helpful. But I still think that part is broken?
Changes in .5
I added a 1/4 and a bar line module. The settings are in the property panel (which is partially a mess 😮 ). Maybe the enableing should go into the right click menue.
Added a broken recalc link for host tempo changes. (I tested the MSME in Cubase and everything seems to work fine.)
The snap window now shows the actual grid resolution when in auto mode and not just "Auto". That's how it was before.
Some minor fixes
infuzion ·
stw wrote:
infuzion wrote: I'm half-way brain-dead due to lack of sleep; thus I need to see with eyes & not mind.
It's in the actual attachment. The amps have the same levels but one is louder than the other. The louder and correct peak comes from the point (susatin end) which is preceded by a point on another position. The wrong lower value comes from the peak which is preceded by a point on the same position.
OK, this proves why I'll never chase a bug without the reporter's file. Your curve preset has the following characters:
1) The point before the End (last 0 point) is not vertically aligned; you can tell visually by the time of the points & can drag it more to the right.
2) The first curve point is not set to 0. This seems to be the real cause for some reason.
If you fix these 2 things, then each decay will sound the same. You made a good bug find though; strange that the curve makes such a big difference, but I think there may be line-sampling issue that makes the very top tip being missed (not enough resolution?), or that is how it is. Compared to other MSEs/MSMEs?
Thanks for adding the visual grid stw!
Changes in .6
+ The visual-"Grid" now has a switch
f Screen will redraw when snap & Grid are switched
+ moved the "Speed" (horizontally squishes & stretches the env) to a slider inside the MSME, so all envelope controlls are in one place & the pref/paste info is all in once place. Speed may be externally adjusted via the stream-in still.
stw ·
infuzion wrote: Changes in .6
+ The visual-"Grid" now has a switch
I can't find that 😊
Changes v.7
infuzion wrote: f Screen will redraw when snap & Grid are switched
Fixed a redraw trigger when snap is set to auto.
-included a "stretch reset" button right beside the slider (GUI could be improved 😉 ). When pushed the actual stretch value is calculated into the times array and stretch is reset to factor 1.
- "snapped stretch mode": When snap is activated the stretch also works in steps. For now i hardcoded that to a stepsize of 1/32 based on a point on the first 1/4. Which means with every step that point moves one 1/32 on the grid.
infuzion ·
stw wrote:
infuzion wrote: Changes in .6
+ The visual-"Grid" now has a switch
I can't find that 😊
I saved it to my Recovery folder, & then uploaded the last version from my SM/exonerate folder 😊
Sorry, your Stretch did not give the same values as the older version. Please merge your .7 changes into my .8, although that reset button isn't needed since I already had a right-click reset in the real .6 version.
Changes in .8
+ The visual-"Grid" now has a switch, for real this time
f Screen will redraw when snap & Grid are switched (should also redraw when snap is set to auto)
+ moved the "Speed"/Stretch (horizontally squishes & stretches the env) to a slider inside the MSME, so all envelope controls are in one place & the pref/paste info is all in once place. Speed may be externally adjusted via the stream-in still.
+ Stretch has % readout
+ right-clicking inside Stretch bar resets to 100%
aliasant ·
Guys.
A question.
Is it possible to get a trig/gate output from each point in the envelope?
As an example, that would then be used to retrigger another envelope controlling a filter.....
Or am I just to tired?
exonerate ·
aliasant wrote: Guys.
A question.
Is it possible to get a trig/gate output from each point in the envelope?
As an example, that would then be used to retrigger another envelope controlling a filter.....
Or am I just to tired?
Yes, would be quite simple to add. 🙂
aliasant ·
To answer myself..... 🙂
Yes.
The Section Number Output from the Section Manager Module sends a trigger everytime the env loops/starts and it is also a counter.
I used a "simple" get trig" code that Tom helped me with 124 years ago.... so now I have a trig signal but I need it to send that trig on each step. Steps are in integers so this should be really simple but I have totally forgot all about this it seems.
How do we get a new trigger on each integer step?
Thanx Exo. 🙂
Update my thoughts instead of a new post...
Why not have this envelope send 2 different gates?
Gate A sends a trigger every time the env sustain loop starts/ loops
Gate B sends a trig on each Section/point
That way the programmer can do some very nice things. Possibilities are endless 🙂
stw ·
infuzion wrote:
stw wrote:
infuzion wrote: Changes in .6
+ The visual-"Grid" now has a switch
I can't find that 😊
I saved it to my Recovery folder, & then uploaded the last version from my SM/exonerate folder 😊
Sorry, your Stretch did not give the same values as the older version. Please merge your .7 changes into my .8, although that reset button isn't needed since I already had a right-click reset in the real .6 version.
Hmm, these grid/snap buttons and selectors are somehow confusing to me. Every button switches something on or off. That's a bit overloaded for my personal taste. I try to unerstand what's going on there.
I knew your right click reset. But mine is an addition. It's not only a reset to 100%. It makes the actual stretch value to the new 100%. This gives the oppotunity to "store" the desired timebase. So e.g. it's possible to do multiple stretches in the slower region.
infuzion ·
exonerate wrote:
aliasant wrote: Is it possible to get a trig/gate output from each point in the envelope?
As an example, that would then be used to retrigger another envelope controlling a filter.....
Yes, would be quite simple to add. 🙂
Shouldn't the looping problem be fixed first? Here are 2 perfect examples of the issue; they don't reloop at the start:
stw wrote:
infuzion wrote: Changes in .6
+ The visual-"Grid" now has a switch
Hmm, these grid/snap buttons and selectors are somehow confusing to me. Every button switches something on or off. That's a bit overloaded for my personal taste. I try to understand what's going on there.
Well, having 2 different visual grids (one for snap & one for purely visual for measuring measures) is confusing also, so I added the switch to turn off/on. Not sure the best approach; call the visual-only-grid "ruler", or we remove the visual-only-grid & add a ruler on the edge (eg like on Photoshop/Gimp on the boarder) instead of a grid to count measures. Some sort of measure-tracking is needed though; too easy to get lost.
BTW, I'm trying to make it standard that all things that are switched on/off have a actual GUI button rather than a right-click menu. One should be able to see 100% of the current status of everything at a single glance, not have to interact to find important information.
stw wrote: I knew your right click reset. But mine is an addition. It's not only a reset to 100%. It makes the actual stretch value to the new 100%.
Too me a while to understand why, but it still seems confusing. & I think it needs more testing.... I don't see where the "reset" takes place. Might be better if we just let people hand-stretch? The Stretch value is saved with the VST-parameters now, & soon with the envelope file, so I'm not sure if this is really needed. You can only zoom so much, & SHIFT allows fine-tuning. Might be too much to add your ability? Just my thoughts though.
exonerate ·
Yes i will look at the looping issue some more, I had a look before but the cause was not obvious at all.
I have to say the grid is definitely getting confusing.
Here is how I believe it should work...
Snap to grid does nothing but snap to grid. I don't see a need to alter the grid lines depending on the snap amount. Only the zoom should affect the grid lines, the way I had coded it was that you see the smaller measures as you zoom further in. Zoom out and the smaller measure gradually don't show any more so you are left with an uncluttered grid which is only showing bars for example.
So I think before this project starts splitting off into lots of different directions due to different ideas of usability ect.
We need to make sure everyone who is working on this env is on the same page.
The grid for example really needs to change depending on the zoom amount, all multi stage envelopes I have ever used with zoom do this because you need more detail as you zoom in but less as you zoom out, it's common sense.
**Edit** Hmm...I just noticed Zooming does change the grid but only on "Auto" mode it really should be doing this regardless.
Cheers 😉
Exo
stw ·
exonerate wrote: So I think before this project starts splitting off into lots of different directions due to different ideas of usability ect.
We need to make sure everyone who is working on this env is on the same page.
word!
exonerate wrote: The grid for example really needs to change depending on the zoom amount, all multi stage envelopes I have ever used with zoom do this because you need more detail as you zoom in but less as you zoom out, it's common sense.
**Edit** Hmm...I just noticed Zooming does change the grid but only on "Auto" mode it really should be doing this regardless.
It doesn't really matter to me what goes in and what not, so just a hint here:
In terms of usability i think it's the best solution as it is. Automated grid is most common use and should be set on default. But if it comes to snap to a visual grid or call it a quantize grid it doesn't make sense if it's not possible to set the value for that manually. Especially if it comes to non binary grid measures. These can't be all covered with the zoom level and it wouldn't make sense at all!
BTW the way we have it now is the same as it was before the code rewrite. And IIRC everybody was fine with it then?
infuzion wrote:
stw wrote: I knew your right click reset. But mine is an addition. It's not only a reset to 100%. It makes the actual stretch value to the new 100%.
Too me a while to understand why, but it still seems confusing. & I think it needs more testing.... I don't see where the "reset" takes place. Might be better if we just let people hand-stretch?
Maybe just a different kind of "feeling" how it should work. My approach was half way to what i'd expect it to work finally. "Reset" seems to be confusing here. Maybe "stretch store" ore something like that describes it better
Anyway this is a minor and can easyly left out.
infuzion ·
exonerate wrote: Yes i will look at the looping issue some more, I had a look before but the cause was not obvious at all.
Thanks exo. I may have broken something in the green-GUI, but I haven't had the chance to check.
exonerate wrote: I have to say the grid is definitely getting confusing.
Here is how I believe it should work...Snap to grid does nothing but snap to grid. I don't see a need to alter the grid lines depending on the snap amount. Only the zoom should affect the grid lines, the way I had coded it was that you see the smaller measures as you zoom further in....The grid for example really needs to change depending on the zoom amount, all multi stage envelopes I have ever used with zoom do this because you need more detail as you zoom in but less as you zoom out, it's common sense.
Users need a way to set the grid lines if snap is attached to the grid.
The zoom-grid is a neat idea, but I preferred it when stw tore it out since the jumps in resolution seemed random, & I can never tell what a line meant; was it to be a measure or beat or 4 measures? Without some text explaining it, it became more of a distraction than a help IMHO. I might have been the one even to make that zoom-grid, but I'm still confused by it.
exonerate wrote: So I think before this project starts splitting off into lots of different directions due to different ideas of usability ect. We need to make sure everyone who is working on this env is on the same page.
I agree, but then again it is easier to rip parts out for a VST than to add them in.
That said, I want to freeze the code, aside from honing & perfecting & making more usable existing abilities. New abilities should go in after v2.0.0.0.0.0.0.0.
stw wrote:
infuzion wrote:
stw wrote: I knew your right click reset. But mine is an addition. It's not only a reset to 100%. It makes the actual stretch value to the new 100%.
Too me a while to understand why, but it still seems confusing. & I think it needs more testing.... I don't see where the "reset" takes place. Might be better if we just let people hand-stretch?
Maybe just a different kind of "feeling" how it should work. My approach was half way to what i'd expect it to work finally. "Reset" seems to be confusing here.... Anyway this is a minor and can easily left out.
At lunch I was thinking there should be only 1 behavior for Stretch, & that is your version stw. Stretch was used too often as a zoom, & it just needs to alter the points. Your method should be the only default.
I do think that stretch should really another version of sync-move, so instead of moving all points after the one being moved by x points, the points would be moved % of the ratio of distance from moving point & the point before.
thanks for the discussions!
infuzion ·
infuzion wrote: At lunch I was thinking there should be only 1 behavior for Stretch, & that is your version stw...
I do think that stretch should really another version of sync-move, so instead of moving all points after the one being moved by x points, the points would be moved % of the ratio of distance from moving point & the point before.
Working on that now; not too hard.
infuzion ·
infuzion wrote:
infuzion wrote: At lunch I was thinking there should be only 1 behavior for Stretch, & that is your version stw...
I do think that stretch should really another version of sync-move, so instead of moving all points after the one being moved by x points, the points would be moved % of the ratio of distance from moving point & the point before.
Working on that now; not too hard.
Noisy downstairs neighbors made me stay up & finish this part.
You can select to "Stretch", which is like "Locked Move" (which still exists in the same selector) but moves all points after the same % rather than the same literal amount.
edit: v1.9.8.9a minor update
+ Stretch from point, similar to Locked Move, but following points grow/shrink by a %, rather than slide by a fix amount
- removed Stretch slider, since that is taken over by above function
- removed "speed" wireless floats & all their connected Float Multiply Array (more speed, less filling)
+ updated Heartbeat system to Clock system; now redraws much smoother with not too much more CPU
No other changes aside from temporary drop-select.
infuzion ·
infuzion wrote:
aliasant wrote:
AngularMomentum wrote: Is it a bug or a feature? The sustain is only looping the end point? When I set the start to full and the end to zero it drops silent, and when I set the start to zero and the end full, it swells up as it should, but doesn't repeat and keeps sustaining at full volume.
Confirmed. Can't be a feature or?
OK, I isolated the behavior: seems the sustain-loop is [missing a start or early point]. You can test this by having a 3 point sustain-loop (including the Start & End), playing, then deleting the middle point, play a few times, then re-adding the middle point. Happens at least to V1.9.8.0, so it happened before the MSE-MSME Code re-merge.
infuzion wrote:
exonerate wrote: Yes i will look at the looping issue some more, I had a look before but the cause was not obvious at all.
Thanks exo. I may have broken something in the green-GUI, but I haven't had the chance to check.
I checked: inside the main audio code module there are wireless "sus start" & "sus end". Both report the correct numbers, so it is likely something inside the Section Manager.
Exo, please look into this?
Fixed:
> Clicking on a curve point now updates on mouse down
- Deleting a point sometimes changes previous curve &/or point to unwanted value; often with Sustain or Release points. (not sure how it was fixed)
New/changed features for 1.9.9.0:
+ Curves now show % when a curve point is mouse-downed/selected. Needed since curves affect loudness always even if 2 points are very close to each other.
+ Point right-click menu now shows the time in seconds & beat fraction info (I want to show the info, but maybe next to point instead of in menu?)
+ x key blocks x-movement, y key restricts y-movement
Known bugs:
!- Looping missing Sustain Start? (exo?)
- Finish:Gate's "Finish" Code has an unused "streamin section"
- Points' Time & Measure display can overlap, making both unreadable
- Loading new shapes seem to cause 2 redraws, should be 1
- in high CPU% situations, redraws seems to tear
- edit: Properties:MAX ENV POINTS is set to 64, but the load/save/copy/paste module is hard-wired to 64 points.
- something else I missed?
Suggestions:
? When moving a curve point, should use only a Redraw Area
? Add display (likely text, maybe icons if someone wants to make) to show status of Free Move, Snap, & if shape has been saved/altered.
? Move right-click time stuff into sub-menu
? postponed? Move zoom & scroll to main display to use RMB &/or MMB
? lock screen/points?
? postponed? Multiple select points (likely with qualifier CTRL or such)
? postponed? Select all points of sustain loop
? beat markers numbers
? set Load/Save .vcs to current folder or \shapes?
? extra module to save default .vcs if not existing
Only a few versions left until 2.0; need lots of feedback & testing & bugs fixed please! 🙂
BTW, I tend not to post my updates without feedback; might as well keep improvements internal then. 😉
exonerate ·
I appreciate the work you are doing infuzion but I really think you are making to many changes and moving it to far away from the original design.
I've uploaded a new version built upon your last. I've put back some old features / way of doing things.
I've tried not to remove to much of anything you have done, for instance the stretch point stuff is still there and many other things, I've just hidden them from view.
I think that at such a late stage we cannot be making too many changes as this just introduces new bugs.
About ten versions ago there was only a few bugs to fix and the audio code to optimize. Now I feel we are further from finishing the env than we was back then, because of too many changes. The end design is currently too uncertain.
So this is why I have took control and moved it to the point were the features are set.
Now we can just bug fix and optimize. Your changes can go back if you like after version 2 or you can spilt off into your own project and make the env exactly like you want it.
But I really want to get this thing stable, fast and finished. So no more features or changes to features, thanks. 🙂
Cheers 😉
Exo
infuzion ·
exonerate wrote: So this is why I have took control and moved it to the point were the features are set.
But I really want to get this thing stable, fast and finished. So no more features or changes to features, thanks.
Cool, here are the changes to 1.9.9.1 for those who want to know:
changes up to 1.9.9.1: reverted back to some old implementations, to stablize the feature set.
Percentage on curve is still there but doesn't show, the percentage is inverted when the next
point is lower than the previous. Can be put back when/if that is fixed.
-- Point stretch is still there but no interface to use it. I prefer the scroll bar, as it is more useful.
Had to revert back to single click for inserting points, double click doesn't seem to repect mouse areas!
clicking the snap on and off would add a new point.
Exactly why I moved the snap button off the point area, & added double clicking; too easy to accidentally add an extra point when messing with the Snap functions.
So I guess the only bug is for the audio code-lopping issue. My hands are off now for you to finish to 2.0 since you have the vision for it.
infuzion ·
After studying the audio section for an hour or so, I've concluded the audio Code is hard-coded to have the sustain loop end locked (the same).
exonerate ·
Update to version 1.9.9.2 🙂
Version 1.9.9.2: Fixed the sustain looping bug - the sustain wouldn't loop when there was no points between
the start and end sustain points.
Added section trigger and sustain start trigger outputs.
I think that is it for issues on the audio side?
Cheers 😉
Exo
exonerate ·
Oopps seems I haven't fixed the sustain issue.
I'll have to fix that tomorrow now, getting late.
exonerate ·
Version 1.9.9.3: Fixed an strange issue where dragging the attack point would change polarity.
The sustain would not loop correctly back to the sustain start.
Cheers 😉
Exo
infuzion ·
exonerate wrote:
Version 1.9.9.3: Fixed an strange issue where dragging the attack point would change polarity. The sustain would not loop correctly back to the sustain start.
Cool, thanks Exo!
How did you fix it, inside the green part, or strictly in the Code please?
exonerate ·
infuzion wrote:
exonerate wrote:
Version 1.9.9.3: Fixed an strange issue where dragging the attack point would change polarity. The sustain would not loop correctly back to the sustain start.
Cool, thanks Exo!
How did you fix it, inside the green part, or strictly in the Code please?
Fixed it in code.
It was a problem with the way the envelope was originally coded. The start Value for each section was always the end value for the previous section. So this meant that when the sustain looped back to the start the sustain starts value would actually be the sustain ends value. So I added code so that when the sustain loops the sustain start is set to the correct value instead of carrying on from the previous value.
Cheers 😉
Exo
infuzion ·
Very good!
Now time for the optimization part?
First the Code needs to be optimized. Then ASM.
I don't have the time right now though, though if someone presents something, I can tweak it to make it better when I can find the time. I would like the ASM to include comments of the source Code, & a few notes here & there to prevent people from becoming lost. This is how I do it:
streamin env;streamboolin finished;streamboolin gate;streamout out;streamboolout kill;float gatePrev=0;
float release=0;float gatePrev=0;
float F4=4;float F0=0;float F1=1;float FM1=-1;
movaps xmm7,env;
movaps xmm6,gate;
movaps xmm5,F1;
movaps xmm4,F4;
movaps xmm3,release;
movaps xmm2,gatePrev;
movaps xmm1,F0;
/* Check for retrigger
retrig = gate&(gatePrev<=0) */
movaps xmm0,xmm2;
cmpps xmm2,xmm1,2;
andps xmm2,xmm6; // xmm6 = gate
andps xmm2,xmm5; // xmm5 = F1
//movaps retrig,xmm2; save for later
/* Release retrig gate off
release = (release | (gatePrev>0))&(gate&1==0)&(finished&1==0); */
movaps xmm0,gatePrev;
cmpps xmm0,xmm1,6;
orps xmm3,xmm0;
movaps xmm0,xmm6; // xmm6 = gate
...
I use Notepad++ for the find/replace & better highlighting. There is a file for that somewhere around.
Large ·
I wouldn't go ASM-ing it just yet 🙂
NEW Bugs:
1.) Copying and pasting the entire envelope erases the current envelope shape.
2.) Adding envelope to toolbox, then taking it back out erases current envelope shape.
3.) In the menu, "Copy" and "Paste" current shape does not work.
exonerate ·
Hey guys sorry I''ve been away for a while and left this hanging.
Had no internet for 3 months. 😮 😕
Anyway done an update, think pretty much all issues are sorted now, not gone to Version 2 just yet but this will be the last release before that (hopefully 🙂 ) So If I've missed anything or introduced any new bugs please let me know.
Changes
1.9.9.6: Save didn't work in shape menu.
Improved speed of redraw during polarity change.
insert point has been changed back to a double click
Audio code ASM optimized.
Cheers!
Exo
Jay ·
Hi exo
Thanks for the update! Your hard work done on this is always much appreciated! its has become one of the most feature rich envs i have seen.
Best Regards
aliasant ·
Sweet Exo.
I have kind of been waiting for this one to finish 🙂
Now it would be nice to have a little sister made from this one.
An AHD or similar. This envelope is fast a and functions very nicely but I dont need all the bells it has so a small and limited version would be nice as a complement? Im sure others think the same?
I know I could give it a hack myself but I would probably fail miserably ending up never touching SM again.....
infuzion ·
exonerate wrote: Hey guys sorry I''ve been away for a while and left this hanging.
Had no internet for 3 months. 😮 😕
Ouch! I was wondering about you! Thanks for remembering us & the MSME. 😇
I notice in the ASM'd Manager you use GateAcc for BlkGate?
I did a few tweaks to your awesome ASMing. It usually takes 5+ rounds when I ASM, since a change may allow more optimizations to open, which may allow more new tweaks to open after that.
Section Manager: Though I knocked out a few movaps & used xmm0 for F1, it seems to use the same number of cycles on my C2D, but I think it may save a few cycles on single-core CPUs.
Section Player: I messed with swapping around the xmms, then interleaving around one of the divides. Saved 6 cycles on my C2D, but should be more than that on older CPUs. I don't see a CPU difference between v2 & v3, though I suspect there will be on my Athlon64.
My updates seem to null well, but I have not tested beyond that. I would like to hear results for more though testing, for both cycle differences on other CPUs (esp AMD & P4) and if they actually work the same in real tests please.
exonerate ·
aliasant wrote: Sweet Exo.
I have kind of been waiting for this one to finish 🙂
Now it would be nice to have a little sister made from this one.
An AHD or similar. This envelope is fast a and functions very nicely but I dont need all the bells it has so a small and limited version would be nice as a complement? Im sure others think the same?
I know I could give it a hack myself but I would probably fail miserably ending up never touching SM again.....
That's a good idea aliasant. This is a monster env now and would be over kill for a lot of uses. I'll make a baby version at some point. 🙂
exonerate ·
@Infuzion Thanks for the ASMing 🙂
Although on my machine which is a pentium D, my versions use less cycles, the player is 4 cycles less and the manager 2. So I think the code is optimized to such a point now that any gains are going to be specific to the processor type.
I notice in the ASM'd Manager you use GateAcc for BlkGate?
Yeah the variable blkGate wasn't needed.
Cheers 😉
Exo
infuzion ·
exonerate wrote: @Infuzion Thanks for the ASMing 🙂
Although on my machine which is a pentium D, my versions use less cycles, the player is 4 cycles less and the manager 2. So I think the code is optimized to such a point now that any gains are going to be specific to the processor type.
Welcome.
I was thinking that the improvements would be minimal; it was tight already, & newer CPUs self-optimize decently. I'm surprised the the PentD was only -4 cycles for the player though, since I did a bit more divide optimization & the D uses more cycles for divides (~18 vs 40).
MegaHurtz ·
Is there any reason why you cant yust replace the 1st (stage 0) comparrison by a constant1
aliasant ·
exonerate wrote:
aliasant wrote: Sweet Exo.
I have kind of been waiting for this one to finish 🙂
Now it would be nice to have a little sister made from this one.
An AHD or similar. This envelope is fast a and functions very nicely but I dont need all the bells it has so a small and limited version would be nice as a complement? Im sure others think the same?
I know I could give it a hack myself but I would probably fail miserably ending up never touching SM again.....
That's a good idea aliasant. This is a monster env now and would be over kill for a lot of uses. I'll make a baby version at some point. 🙂
Sweetness hallelulja ! 🙂
exonerate ·
infuzion wrote:
exonerate wrote: @Infuzion Thanks for the ASMing 🙂
Although on my machine which is a pentium D, my versions use less cycles, the player is 4 cycles less and the manager 2. So I think the code is optimized to such a point now that any gains are going to be specific to the processor type.
Welcome.
I was thinking that the improvements would be minimal; it was tight already, & newer CPUs self-optimize decently. I'm surprised the the PentD was only -4 cycles for the player though, since I did a bit more divide optimization & the D uses more cycles for divides (~18 vs 40).
Sorry, what I meant was that your version uses more! Guess I didn't word that very well. 😀
exonerate ·
MegaHurtz wrote: Is there any reason why you cant yust replace the 1st (stage 0) comparison by a constant1
Yes because all the bit's need setting to 1. There is no constant that will do this for floats.
infuzion ·
exonerate wrote: Sorry, what I meant was that your version uses more! Guess I didn't word that very well. 😀
Hmm, that is weird, I can see the Manager's optimization backfiring, but it is very very rare that a reduction of 4+ cycles in a dual-core ends up being something to makes things worse in single-core... are you sure you calibrated the CPU Cycle Analysers & turned them off & on.? There is a bug in those that the after you load they are not really running when the switch says it is on. I thought I fixed it in v1.6, but didn't. Also, sometimes you have to swap wires around also to get a better idea of a real reading also.
I'd like to hear others' CPU% test results w/CPUs models please.
edit: Attached is included with v1.7 of the fixed CPU Cycle Analyser with a fixed run on load if on.
exonerate ·
infuzion wrote:
exonerate wrote: Sorry, what I meant was that your version uses more! Guess I didn't word that very well. 😀
Hmm, that is weird, I can see the Manager's optimization backfiring, but it is very very rare that a reduction of 4+ cycles in a dual-core ends up being something to makes things worse in single-core... are you sure you calibrated the CPU Cycle Analysers & turned them off & on.? There is a bug in those that the after you load they are not really running when the switch says it is on. I thought I fixed it in v1.6, but didn't. Also, sometimes you have to swap wires around also to get a better idea of a real reading also.
I'd like to hear others' CPU% test results w/CPUs models please.
edit: Attached is included with v1.7 of the fixed CPU Cycle Analyser with a fixed run on load if on.
Yeah it's still the same.
By the way my CPU is a dual core it's an old pentium D based on the pentium 4.
MegaHurtz ·
the results on my P3 are quite good.. May I ask what changed in the newer version Analiser??
infuzion ·
MegaHurtz wrote: the results on my P3 are quite good.. May I ask what changed in the newer version Analiser??
How much faster/slower is my version compared to Exo's please?
I forgot to add a release note for the analyzer, now I have.
trogluddite ·
MegaHurtz wrote: the results on my P3
Respect - that's true dedication to beta testing 😉
Large ·
Exonerate,
I still hear popping with the envelope.
How do I fix this OSM?
infuzion ·
Large wrote: I still hear popping with the envelope.
How do I fix this OSM?
[old link]
Large ·
This is more complex than "clicks", infuzion.
There is a second popping sine wave when the HARMONIC value is RAISED.
Download the OSM and see if you can fix it.
Thanks in advance.
Large ·
Can someone fix this envelope, as long release times seem to make the pop longer as well?
infuzion ·
Large wrote: There is a second popping sine wave when the HARMONIC value is RAISED.
OUCH MY EARS!! I wasn't expecting loud test tones! 😉
I honestly can't hear the second popping. I am using cheap sound card & speakers though.
I'll need a spectrogram or whatever in the OSM to visually see the 2nd pop I guess.
Large ·
Sorry 😈
But use spectral analysis and you'll see two sines.
Shortening the release shortens the lower pitched sine (which shouldn't be there at all).
attic ·
I noticed that to and would like to see this very useful project updated. Unfortunately I don't think my SM chops are up to it
so it will have to be someone else. Any takers?
Large ·
Well, Exonerate was the lead developer. But he seems to have vanished.
We need to get him back. Clearly this envelope is not ready; see what it does to my two OSMs above.
infuzion ·
I wouldn't mind helping out real fast, but I need a quick OSM test than I can open & see what is wrong in 5 seconds. To me, I don't see any issues right now, but I may be missing something.
infuzion ·
Seems like there is a big click at the end of the envelope for some reason. Not sure if it is SM2.0, or I missed it (I had forked an earlier version when 1.9.9.6 came out, so I didn't check it too much).. Seems this version works well, so if someone has the time, the Code stuff from the older version should be rolled into the new.
infuzion ·
I found a bug in the 1.9.9.3 version, & this perhaps exists in other versions. Duplicate error procedures:
1) Use an env is bipolar
2) Zoom out so you only see part of the entire env in the window.
3) Scroll to the right, & you should see the fill for both the top & bottom cover from the top to bottom, rather than just filling the env.
Very ugly! 🙁
I won't have time to fix this for days, maybe weeks, so if anyone else wants to give a shot, please do!
It is likely in Multi-Env/Draw points/CurveFill/CurveFill bi. Might be a drawback from using 2 View areas to calc the fills...
infuzion ·
Took me a few hours, but I figured it out...
Edit: Trog's Trigger Tutorialwas somewhat helpful, but I'm sure if there was more to it he would have saved me some more time 😉
attic ·
Took me a few hours, but I figured it out...Edit: Trog's Trigger Tutorial was somewhat helpful, but I'm sure if there was more to it he would have saved me some more time
That partial tutorial helped me figure out how to fix a problem I have been wondering about for over a year. Trog when do we get part2.
trogluddite ·
attic wrote: Trog when do we get part2.
Very soon - had some catching up to do on my big schematic after Malc solved my array bugs. (and a rather stiff hangover over the weekend). I only have the evenings after work on weekdays, so might be a day or two.
MegaHurtz ·
^^ gifted writings
infuzion ·
infuzion wrote: I found a bug in the 1.9.9.3 version, & this perhaps exists in other versions. Duplicate error procedures:
1) Use an env is bipolar
2) Zoom out so you only see part of the entire env in the window.
3) Scroll to the right, & you should see the fill for both the top & bottom cover from the top to bottom, rather than just filling the env.
I fixed this bug, but found another trigger issue with SM.
Merry Christmas!
Nubeat7 ·
hi - is there a way to use 2 envelopes and save both in the main presetmanager? i have the problem that it only saves 1 envelope its the same when i use the preset stuff what is inside for more than one env ... i already tried to rename every possible "presetname" i could find inside the modules but it always rename the names of the other env too? ther must be a way to use these envelopes individual or? i had the same prob with the sm original multistageenv.. please some help would be great...
Warmonger ·
Should work if you desync the envelopes in firts place and then rename them.
I'll try this toy in my next synth.
stw ·
Nubeat7 wrote: hi - is there a way to use 2 envelopes and save both in the main presetmanager? i have the problem that it only saves 1 envelope its the same when i use the preset stuff what is inside for more than one env ... i already tried to rename every possible "presetname" i could find inside the modules but it always rename the names of the other env too? ther must be a way to use these envelopes individual or? i had the same prob with the sm original multistageenv.. please some help would be great...
You don't have to rename all preset parameters in the whole module! If you open the preference pane (small "p" right/lower corner) on the main window you'll find a "preset" edit box. Just type in a unique name for every envelope you use and it will be stored and recalled by the preset manager.
Depending on which version you actually downloaded it maybe that the preference pane is somewhat clumsy and eventually the edit box is partially covered by other items.
Nubeat7 ·
oh yes it was the sync! thanx it works well now !
Warmonger ·
I'm trying to use these in my second synth. Is there a way to change modulaton range from (-1, 1) to (0,1)?
infuzion ·
stw wrote:
Nubeat7 wrote: hi - is there a way to use 2 envelopes and save both in the main presetmanager? i have the problem that it only saves 1 envelope its the same when i use the preset stuff what is inside for more than one env ... i already tried to rename every possible "presetname"...
You don't have to rename all preset parameters in the whole module! If you open the preference pane (small "p" right/lower corner) on the main window you'll find a "preset" edit box. Just type in a unique name for every envelope you use and it will be stored and recalled by the preset manager.
Depending on which version you actually downloaded it maybe that the preference pane is somewhat clumsy and eventually the edit box is partially covered by other items.
Yes, sorry I left my last edit's preference pane such a pain to work with.
Warmonger wrote: I'm trying to use these in my second synth. Is there a way to change modulaton range from (-1, 1) to (0,1)?
Right-click menu over the envelope GUI, "Polarity". I broke the click-on-scale to switch it also, sorry! 430+ modules alone in this thing...
Warmonger ·
I somehow manage to change it. Set a "3" value to '2", whatever that means.
Warmonger ·
Oh man, problems started when I tried to rename all items for automation. Now for one preset envelope shows good range (-1,1) and for the other (0, 1). And I don't know how to fix that! :O
EDIT: the issue is that when I take wrong preset file, edit it manually, load into synth and save again... all changes are gone, like synth itself enforced that state :?
infuzion ·
You have to delete the ones you don't want, or edit each one manually. If you look inside the "RightClick" module that has the right-click menu choices, you can see inside each sub-module that most of the menu choices are saved as Parameters.
I'd revert to the last-posted version; it should work OK. If not,just change the "Preset" name (now is "Multi Env"), & delete the Int input's connections.
I do have an improved version, PM me if you want to talk about it.
Warmonger ·
I edited them manually. In fact, OO Calc changed a bit format of preset, so synth couldn't read it. It doesn't report an error, though. Now it works again 🙂
Wrote something here? To have a post removed or your name hidden, write to [email protected].