SynthMaker

free verb

Archive · 2007 14 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

Adfael ·

hi

i just work on the freeverb from audio module of audio aok, i have gui it only.

- Store preset 10 blank. - Add knob.

http://gothdesvres.free.fr/revebmodule.osm

AndydeMaro ·

Adfael wrote: hi

i just work on the freeverb from audio module of audio aok, i have gui it only.

- Store preset 10 blank. - Add knob.

http://gothdesvres.free.fr/revebmodule.osm

Cool, Optimiere all CodeModules in ASM for SEE with Low CPU for Features Request.

Adfael ·

it's what i have, i got 100% cpu o_o, but i will check why it take that much.

exonerate ·

100% percent CPU! 😮

must be denormals, the schematic your using has no denormal code in the delay feedback path. feedback paths are the main culprit for denormals.

heres a bit of denormal code you could use..... http://www.box.net/shared/8hp47cime5

you need to put this in the modules with the delay component, the delay component has a feedback path, just place this module in the feedback path and hopefully it should keep denormals at bay.

really you should put denormal code anywhere you are feeding back a signal.

hope that sorts the problem.

cheers 😉

infuzion ·

That's good advice exonerate! What resolution can a de-normalizer go down to? You have 1e-008, the parm EQ has 1e-010, but TheAudiophileDutchman says 1e-010 is not enough, but 1e-009 is. I guess it would depend how long you want a reverb to go on, or how much CPU one wants to save.

Also, there is a Denormal in the toolbox, which uses an ABSMASK & optional noise generator. Yours uses less CPU than SM's, but it seems there is some kind of rounding error in SM. SM's denormal can be reduced to just a few ASM instructions if you don't add the noise. ref: [old link] [old link] [old link] [old link] [old link] & search for "denormal" in the toolbox 🙂

Pentium4s + have a flag you a program can set to have the CPU to change denormals to 0 automatically (ref: Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 1:Basic Architecture, Order Number: 253665-022US, 254665.pdf, chapter 10). Maybe SM should have the switch available to programmers?

sunsynth ·

Hi exo, hi infuzion,

we need this flag (has my PIV 3,06 HT this 2?) Exo and i fiddle many times with this De-Normal thing...

Exo please, can you 'minimize 2 the max' infuzion's Idea?

@Infuzion: congratulations 4 your >2k posts!!!

SUNsynth

exonerate ·

What resolution can a de-normalizer go down to? You have 1e-008, the parm EQ has 1e-010, but TheAudiophileDutchman says 1e-010 is not enough, but 1e-009 is.

if i remember rightly SM's float resolution is 10 decimal places so any thing over that get's rounded down, so 1e-010 would be the maximimum.

so mine is equivalent to 1e-008, which seems to be good enough for most things.

Pentium4s + have a flag you a program can set to have the CPU to change denormals to 0 automatically (ref: Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 1:Basic Architecture, Order Number: 253665-022US, 254665.pdf, chapter 10). Maybe SM should have the switch available to programmers?

yes definetey , i have a P4 and i do get a lot of denormals when making stuff in SM, i can useally get rid of it by placing denormal code in strategic places, some times a have to use noise which i don't like doing cos it adds to much to CPU. but yeah if we had this flag available then it would be a life saver some times. i take it AMD has a similar thing?

also SM'S truncation code doesn't seem to work for me, i take it basicly what it does just chops off the really low numbers. but yeah without the noise it doesn't do anything. and the noise is quite CPU heavy. i've used it before but optimized the code to ASM and put it in 1024 hop. so rather that contant noises it more of burst every 1024 samples, which seems to work Ok.

Adfael ·

i have a AMD64 and it's take 100 % when playing and around 8 % when it's connected and not playing , but when i see the schematic we saw for each combo 8xcombo left and right, on each module there a loop with a float multiplicator.

- Made the module with no loop because 16 module running in loop with too much of multiplicator 😮

exonerate ·

- Made the module with no loop because 16 module running in loop with too much of multiplicator

thoughs feedback paths are needed! feedback on a delay controls how many echos you will hear, with out a feedback you would only hear one echo. the roomsize control on the free verb controls the amount of feedback, which will make the reverb longer or shorter.

SM can handle audio feedback paths no problem, the feedback paths aren't using that much CPU, but like i said in my other post feedback paths are the main culprit for denormals.

have you tried putting the denormal code i posted, in the feedback paths?

cheers 😉

Adfael ·

Yes i try but nothing change or it's me maybe how have did something wrong 😉.

but about the code what it's better SM or ASM ?

exonerate ·

i've just tested your schematic and at first CPU was ok, about 4% with no sound and 4.9% with sound, which for a reverb is Ok.

but after a while CPU shot up to 100% so theres definetley a denormal problem.

i'm just going out for an hour but when i get back i'll have another look at the schematic and see if i can sort the problem for you. then you will be able to see exactly what i've done for future reference.

i'll post the schematic later today.

cheers 😉

exonerate ·

Ok i've added some denormal code to your schematic, you can get it here.... http://www.box.net/shared/8hp47cime5

it's the file reverbmodule.

i've only tested it for a little bit, but theres doesn't seem to be a denormal problem any more.

i've also changed the denormal code to a lower resolution, i'm adding 1e-010 which is the same as writing 0.0000000001.

i've put the code in the comb filter modules as well as the allpass, because you need to put it where ever there is a feedback path.

if denormals persist you could try using synthmakers denormal code and set it to truncate with no noise and put that in the feedback paths. or you could include the noise at the very beginning of the free verb schematic. you should only use one noise module.

cheers 😉

Adfael ·

thank Ex it's work fine ^^ i think the module he's finish or i will search what he can add in it.

infuzion ·

exonerate wrote: if i remember rightly SM's float resolution is 10 decimal places so any thing over that get's rounded down, so 1e-010 would be the maximum. so mine is equivalent to 1e-008, which seems to be good enough for most things.

I think so also. In fact it might be better to keep down CPU. Might be bad with reverbs with LONNNNgggggg tails.

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.