Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

Noise Generator

I really like the noise generator but i know i wanted something else out of it when looking at the code. More of a granular noise. You can change y32 to y8 and get more of an 8bit noise and playing around with the bits it shifts around can get more of a stutter tone. I am unsure on how much i can shift forward and back within the shift register on the chip to get it to stutter every once in a while? I was thinking to use random (1, 8) or something but random was moving to fast to tell. How do i slow it down a bit to get (y8 << x), (y8 >> y), (y8 << z) to change randomly every few seconds?



  • edited May 6

    I kind of want this sound but i dont want to turn a knob to get it.

  • Do you mean like the part at the end where it sounds kind of like a helicopter?

  • Everything constantly changing every few seconds.

  • edited May 9

    You might be looking for an algorithmic generator - coincidentally I've been working on one for a while, so I tidied it up and published it here.

    The generator makes sound from short lines of code combining regular and bitwise operations: for example, the recording below is the raw output of

    sample = t*(t>>14) ^ (t<<8 ^ t);

    (it's loud - careful)

    That's without touching anything -for each of the examples you have control over three parameters.

    You can get all sorts of sounds out of the module depending on the algorithm, including random noise; actually the last example in the program uses the algorithm from the Noise Generator module (but here you have control over the bit shifts). There's LOTS of room for experimentation! Give it a try and let me know what you think :smile:

    PS. I've just published the program, so all the information is here atm

  • Great i will try it out and play with it. Thank you very much.

  • But then again its still repetitive in away. What i am saying is to change.
    parameters[0] x
    parameters[1] y
    parameters[2] z
    Every switch instead of having 14,8,1 and ect presets switches. You can have each individual parameter values change randomly from 1 to 16 but not have the value freely generated while its playing. More like a sample&hold on the parameters.

  • maybe a randomizer with a delay would do the trick... but what about the delay itself? would you want it to also be random?
  • edited May 12

    Yes or controlled by the pot to control frequency of it changing.

  • edited May 14

    OK, I've uploaded a Noise Random Generator to the repository.

    By default the generator changes the noise parameters on its own, but you can still control frequency and density like in the regular noise program:

    Now, in the loop(), there's a second option you can choose -this one randomizes everything:

    If you navigate to the all random function, there's a delay that you can experiment with. It is not active by default because it doesn't get along with randomizing the grain density (it freezes the sound eventually).

    I added a function that updates the random seed on startup, so the sequences are always different.

    You'll notice that some combinations of parameters produce tones rather than noise. If this were a problem, a way of getting around it would be to have several sets of parameters that produce noise, and alternating between them at random.

    That's all in a pinch, let's see what you think :D

    PS. I didn't go into variable delays in either mode -I think it would make it really hard to control, with all the other parameters in play.

  • Exactly thank you very much!

  • cool! enjoy!
Sign In or Register to comment.