SirSickSik Contributions


#401

almost forgot to save these as they were quick custom modules for a project

NEW MODULES

DIST

"RingMod"
ringmodulates 2 inputs and mixes the outcome with the inputs
wet/dry level can be set for both inputs and ringmodulated signal
4 modes for ringmodulation:
1: A*B
2: A*A*B
3: A*B*B
4: A*A*B*B
has an input-gain saturator for the ringmodulation for when using weak signals and adding more higher harmonics/distortion

FILTER

"6dBresLP"
6dB lowpass filter with resonance.
resonance has it's own LP and HP filter in it's path, so it's frequency can be offset in respect to the cutoff frequency. Also it's width can be set.
Seperate modulation inputs and modulation-width controls allow for different responses for cutoff and resonance to the modulation inputs.
A saturation function keeps the resonance within bounds and enable screaming filter resonances.


#402

NEW MODULES

HARMONY

"rescale" and "tune"

rescale contains a list with 98 ratio's for making custom temperaments
when the selectors are set to 0 (default) the most common ratio's are used (wikipedia and stuff).
going up or down selects a higher or lower ratio outcome respectively
using the key input, you can select the different scale modes made with the chosen ratio's.

Closest to ideal equal temperament (but not exactly the same, using other primes and not "commonly used") is the following list of offsets:
C:0
cis:-1
D:-1
dis:-1
E:1
F:0
fis:-1
G:0
gis:-1
A:1
ais:-1
B:1

"tune" is a module that goes between your midi2CV pitch or a pattern generator and the pitch-input of an oscillator
it refers to the rescale module to get it's selected list of ratio's.
using multiple rescale modules and offsetting notes, allows to use different temperaments for seperate oscillators, creating close enharmonics.


#403

NEW MODULE

DIST

"pusher"
Distortion/limiting algorithm based on frequency-modulating a serial lowpass and highpass filter.
The lowpass cutoff frequency is pushed down by the peak-volume of the input signal+gain.
The highpass cutoff frequency is pushed up by the peak-volume of the output signal.
These modulations force the output signal to gradually stop moving when reaching a higher volume.


#404

NEW MODULE

OSC

"atomOsc"
Based on the planetLFO, this module does the same trick on audio-rate.
Planet/particle audio modulator
The audio inputs can be seen as the x/y positions of a planet, which influences the x/y positions of 2 moons.
the x/y positions of the moons are used as output.

The first 8 controls (x1/y1/x2/y2/x1rate/y1rate/x2rate/y2rate) are the reset positions of the moons.
The rate controls control the starting rate at which the moons will move through the map.
x1/y1/x2/y2 control where the moons will start.

centermw adjusts the volume of the incoming audio (centerx/centery)

Mass1/2/center set the mass of the planet and the moons.
The higher the frequency, the less mass the moon has and the more it is influenced by the planet/other moon and the less it influences the other moon.
The lower the frequency, the more mass the moon has and the less it is influences by the planet/other moon and the more it influences the other moon.
Centermass sets the mass of the planet. The planet x/y position isn't influenced by the moons, but it influences the moons depending on it's mass.
The lower the frequency of the planet, the "heavier" it is and the more the moons are going to be influenced by it, instead of by each other.

damp1 and damp2 dampen the change in x/y positions of the moons and force them to center position. This can also result in drasticly pitch-changing modulations.

in some way, you could see this as a high-resonance dual-filter with cross-modulation


#405

NEW MODULE

FX

"reverb"

reverberation effect based around the same idea as the multi-repeater: multiple delay-writing/summing taps are combined with multiple reading taps and the sum of the delayed signal is spread across the writing taps by the feedback-amount.
this allows a exponential growth of delay-taps and perfect use for reverberation :slight_smile:
signal is going through a lowpass filter before entering the delay
pre-delay can be set by offsetting the time between reading and writing taps

NOTE!
the internal parameters are set using the 16x slider table modules.
the volumeread and volumewrite need bipolar sliders (see native table folder)
the panning, writesize and readsize need unipolar sliders (see my own table folder)


#406

Can't wait to test your latest creations, some very tasty concepts. It seems like your github sync hasn't been working. Can't see any new objects since the last 6 days (which consists in quite a few objects with your amazing rate)
Thanks for the hard work and hope to be testing soon.
Take care and get some sleep in from time to time.


#407

it's probably because I'm still at the former version and the modules have to be merged before they can be seen.
I'm kinda having a good breath before updating to the next version. Last time I did an update, I lost everything, so, seeing my list of projects, my head is like "be very careful about what you're going to do now" haha
I'll update soon, after I back-upped everything at 5 different places haha :wink:


#408

@SirSickSik ... all you need to do is to do a sync before you upgrade, this will put everything into github.
... then tell me and I can 'instantly merge it across'

as for backing up, you just need to backup your documents folder....

also as Ive pointed out, we now support 'versioned home', so you can install 1.0.11 to test it out.
just dont make changes to your objects in both version (obviously!) , see this post

I'll do a sync now, but let me know before once you have done your final commit on 1.0.10, and then WAIT on 1.0.11 until Ive done the 'last sync'


#409

ok I'll do that, thanks man!


#410

Sync to 1.0.11 done

ok, so what I suggest is:
a) finish what your doing on 1.0.10
b) sync to commit it
c) PM me
d) I'll sync
e) you upgrade to 1.0.11 (personally Id use the versioned home, but you don't have to)

then the only thing, you need to be careful of is patches/objects that are not in the community library.
(but the upgrade process will ignore this)

honestly this is all not really necessary, the upgrade process has been refined, but given you have had issues in the past.. we'll do 'belt n braces' :wink:


#411

NEW MODULE

MATH

"divremcF"
fractional version of the divremc module.
-two fractional inputs
-fractional remainder output
-integer division output
-fractional remainder-scaled-back-to-"0-64 range" (right?)


#412

NEW MODULE

OSC

"hrmOsc" and "hrmOsc2"

sort of harmonics-selecting oscillator or something
-quant sets the amount of harmonics used in a single phase-cycle, for the normal version this is in powers of 2 (so, 2,4,8,16,32,64) to reduce cpu use. The hrmOsc2 version uses the amount of harmonics set by the quantizer (1,2,3,4,5,6,7 etc), but uses about 5% more!
-offset gives an offset to all harmonic values, selecting a different set of harmonics in a single cycle
-step sets the stepsize for selecting harmonic values
-range sets the range for the highest harmonic that may be used

the module uses it's own phase to morph/crossfade through all the selected harmonics in a single cycle. The crossfade itself is sineshaped to reduce harmonic-distortion.
But as it produces the harmonics serially (one at the time), each harmonics is actually pulsing, creating AM overtones


#413

NEW MODULE

OSC

"rndSines"

sine oscillator with randomisation of pitch and volume.
for both modes, the pitch and volume are randomised at phase-restart, but:
Mode1: values are only updated if a random value is higher then the update-control and phase restarts.
Mode2: values are always updated at each phase restart, but the update-control sets the maximum change from the former random value, creating a more or less continuous random drift.

oscillator can produce telephone-connection-like sounds, pitched noise, noisy sines, etcetera


#414

NEW MODULE

ENV

"ADSRcrv"
ADSR module with exp/inverse exp controls for attack, decay and release stages. Also outputs stage number and a gate high when it changes from stage (eg selecting different waveforms for my wavetable oscillators for each stage. you could use the autoCurve (patt-folder) to morph between settings at the different stages of the envelope.)


#415

single screen, full lead, bass and melody patch with wavetable synthesis playing evolving jazzy polyrhythmic music, going through 46 different scales, 12 keys and harmonic multiplications/divisions up to x5 and /5 for the melody oscillator

this is the "short" version, as it would keep on generating new variations for ever..


#416

NEW MODULES

MIX

"deskmix2", "deskmix3" and "deskCtrl2"

the first one is an eight-input mixer with controls for main volume and main send level (for attenuating all send-levels)
also has "unmute" and "unsolo" buttons to reset the solo/mute buttons on the control module.

the second one is almost identical to the first, though a for-loop is being used instead of all the code being written out completely. This saves quite some lines of code, BUT it also asks 1% to 2% more cpu somehow...why?!?
if you run out of memory because your patch gets too big, but you still got some CPU left, you might try to use this one.

Both mixers check how many control modules are loaded at initialisation and only calculate the channels that are "loaded".

the third one is a control module. This should be loaded 8 times if you're using 8 channels
Don't forget to enter the name of the deskmix2 module in the reference box!
controls:
-mute: channel mute
-solo: channel solo
-gain: channel level
-pan: channel panning
-sendLvl: volume of audio send to selected send-output
-select: selects which send-output the audio is send to
-all parameters (even mute and solo!) can be k-rate modulated for complex controlled mixing


#417

Sounds great. Very useful. These will be even more useful if/when Johannes get streaming audio from one Axoloti to another working over USB. How is that btw going, @johannes?

Then you could use one Axoloti for sound sources like oscillators and samplers. And then stream the audio channels, more than 2(if 2 only you might as well just use L/R) to the next Axoloti which processes effects..... and so on...... And then use this mixer to control all the audio signals :slight_smile:


#418

Surely if it does 2 you could sill use the analogs as well giving 4.


#419

Yes if streaming audio give also we would have 2 analog + 2 streaming channels... That would be great :slight_smile: But if streaming audio will work, I think we woyld probably be able to use more than 2 channels... Hoping, anyway :wink:


#420

No work is being done on USB audio (afaik)
You might be confusing this with digital audio between boards , over x3 ( spi) which there is experimental code for.