L ~ N ~ D ~ F

About  Blog  Projects  Knowledge  Downloads  Links  ImageWebring

24 - 23 - 22


Here is a bunch of sounds that I took with my phone, do what you want with it. complexifications inutiles nées de l'ennui
pourquoi s'arrêter là, si après tout l'ascii me suit


Finally took a VPS (OVHcloud), and migrated my website to it ! You can read all the stuff I learned on setuping a VPS on this knowledge page.
The next step is probably to have my own server, we'll see how things goes.
I also learned how to setup a php test environment and made a little guestbook whose working is explained on this project page.

I'm making more musi-c/ng that I used to these days, here are some of the last tracks I made :
(I recommend using headphones, I use a lot of phase tricks that might sound ugly on speakers) I wrote lyrics without to much thinking, it's often the moment everything slows down and I keep getting stucked. So these time I just took words that rhyme and made phrases around them, was fun.
The first one is heavily inspired by Souvent Parfois of UTO. The second one is really weird tho', in a quirky kind of way.
Still an heavy use of compression everywhere.
Using more and more the polybrute, learning to use the morphing in interesting manner, for exemple, even if a parameter doesn't change the sound of preset A, it might create new movement while morphing to preset B.
Lots of things to try.

Explorer les alternatives - .

Recently I've read the house of leaves, cannot recommend it enough.
It's rare to read something that is that free in form, yet approchable, it does count a story in a original manner but you don't need a cork bulletin board to decipher the meaning.

Elision | a particular kind of | Synalepha

Some Music :

I have a fond memory of my time working with tape. I was using a tascam BR-20 and this kind of reel-to-reel cannot overdub (no tape can, at least in conventional usage). You have a rec button for channel 1 and a rec button for channel 2, each time you record, you erase the sound. Using small tape loop, this workflow creates tracks with choppy sampling and inserted silence. You can also vary the tape speed at recording and playing, multiple texture with different repitching colide with each others. I recreated this workflow on ableton and made new tracks, I'll maybe try and make an ep with a dozen of those.
Here are a couple of examples, with the loop played 3 times to give a sense of pattern.
Most sounds comes from me singing / blowing at my laptop microphone and from the arturia polybrute. Recently, I remembered an old thought : When I started to learn more and more about sound and all of its ramification, it opened a window on the complexity of each thing, guessing how the roots of a tree looks based on your experience with an other tree. Learning about a subject gives substance to world.

These time I'm spending a lot of time on my master thesis, I'll probably post more when my tought are ripe, it's about graphical interpolation system and audio plugin.

Some Music :

Small Rack includings
| Tides | Teletype | Pruners | Sinensis | Hellebore |
I enjoy experimentating with my module (especially the pruners prototype), don't really know what to keep and what to discard from this prototype, awesome sounds but very unpredictable.

I chose to delete some online data : I deleted all google history, which include maps, youtube, etc...
Youtube has been consuming a lot of time those last years, quitting has been hard because I also found a lot of interesting stuff on the platform, but at a certain point it was just more bad than good. I'm still watching some videos with my girlfriend, but now it's almost some kind of "film" it has it's own dedicated time zone.
Consequently, more time is dedicated to surfing the web. All in all, the experience is way more rich and positive, I'm mostly hanging on fascinating blogs and informative articles.
I'm also using spotify less and less, I downloaded my playlist using some rather shady app named Deemix. I'm using soulseek for file download, also streaming some stuff on bandcamp and soundcloud (you gotta discover stuff somehow).
Hopefully buying from artists soon.
Maybe I'll start making three music mixtape a la nnnnnnnnn.

Some Music :

I am quitting modular: I am not using the rack enough and vcv is loads of fun anyway (+ I get to use my own modules). So I'm selling everything and looking forward to buy a polybrute, back to the gool ol' keyboard.
Relaunching VCV, I got tempted to start a new module (that was predictable). The vcv SDK is back in my documents and Pruners.cpp has been added to source, I'll add a page in project soon to add detail about the process.
Pruners is gonna be something between the strymon magneto and qu-bit data bender. A sampler with additional buffer goodness.

The precipitation installation is going well, the vernissage is in two weeks, we'll be moving to the exhibition place monday with all our works.

I'haven't use TouchDesigner to process still image yet. Just runed laying around image file throught the shader used for precipitation (dither + feedback). Here is the result.
Also made a quick Hydra patch:
setResolution(1920,1080)
osc(5, 0.02, 0.4)
//.rotate(0.1, 0.1)
//.scrollX(0, 0.1)
.modulatePixelate(voronoi(50))
 .modulatePixelate(src(o0).scale(0.99))
.contrast(0.8)
.rotate(0.001)
.scrollY(0.004)
//.modulateScale(noise(1.5, 0.1))
.scale(1)
.out(o0)


Just discovered spicetify, which let you customize your spotify GUI !
For the past few months, I've been thinking a lot about how much I dislike Spotify's interface.
I found this today by surfing webring, on this young fellow neocity.
It's a CLI app, you can install new theme by cloning their repo
Did you know that you could take a screenshot of an app on macOs using cmd+shift+4+space ?

kanaga text theme



~ O T H E R ~
I'm fascinated by the way a computer is navigated via a terminal.
This feeling is emphasized whenever the computer is in fact a faraway server responding to your ssh.
The sequencial cd and ls, touching to see.
In a way it reminds me of "The books where you are the hero", especially when you are cheating and coming back to the last page cause you don't wanna lose the game.
Giving orders to the big void is somewhat scary and soothing.



~ C O M P O S I T I O N ~
More experimentation with saturation and compression.
The intermodulation between voice layers is being hugely emphasized.



~ H Y D R A ~
The installation is going well !
We are all prototyping different form of sound and visual.
I'm working again on the poster, here is one of the last version.
The middle is still some hydra, this time made by Naoto Hieda.
See the code below.

osc(30, 0.1, 0)
    .color(0, 1, 2)
    .rotate(0.867 / 2)
    .out(o1);
osc(40, 0.01, 0)
    .color(1.1, 0.7, 1)
    .modulate(o1, 0)
    .add(o1, 1)
    .modulatePixelate(o1, 2, 20)
    .brightness(-0.2)
    .out(o0);

~ T O U C H ~ D E S I G N E R ~
I learned a lot about TouchDesigner and the many ways of using L-Systems. More Here
I still have a lot to figure out, modulating the angles of the left tree makes me drop to 3 fps.
Not so usable.
Also worked on some TOP, found a dithering patch and a fake pixel sorting.
Here are some 3D plants.

~ M E T A ~
I added a lot of info on previous projects, it will be building up in the next few month.
This follows my first attempt at joining the Webringtm.
It's really interesting to look back at previoulsy learned knowledge.
Structuring it and making it understandable for other is a fascinating (and time-consuming) work.

~ L I N K S ~



~ H Y D R A ~
I'm starting to work on a poster for an audiovisual exposition, using hydra for the textures.

noise(1000)
  .pixelate(900, 50)
  .modulate(osc(1, 0.5)
            .rotate(0.5))
  .scrollY(-0.1, -0.2)
  //.modulate(noise(5)) //funky waves
  .rotate(0.4)
  .out(o1)

src(o1).modulate(o0).scale(1).out(o0)

~ F O N T ~
I started making my own font, a really basic one with only big rectangles.
I've always been curious of the process.
To make and export it I'm using Glyph in its trial version.
You can see an example of the caps in the poster above.
I've also dicovered JetBrains Mono font.
I'm always on the lookout for some new ways of looking at my IDE and this is a nice one.
Currently I'm using Monoflow, it is very funy and familiar, perfect for long dull hours in front of the screen.

~ C O M P O S I T I O N ~
This composition uses pretty much the same tricks as the last one (warping in texture mode, reverb with loads of compression...) but in a totally different genre.
My usual smooth / chill / noisy ambient. I'm happy with the result

~ T H O U G H T S ~
I've been using notion for some times and although I love it's system, it's quite slow, and a bit to complicated for what I'm doing.
I'm thinking about going for md file (obisidian ?) losing the sync with my phone in the process, which is quite convenient... To be continued

~ L I N K S ~



~ M E T A ~
I added a download tab with some max devices I've made during a synth course.

~ C O M P O S I T I O N ~
I'm trying new genre, inspired by the incredible videos of asd on exponential rhythms and grain delay.
It's really fun to make this kind of noise.
I'm back to working on Ableton after a modular pause and really enjoying it.



~ C O M P O S I T I O N ~
I worked for a project call,
the APNEES collects sound work on the "PAYSAGE | COMPOSEE" theme.
Not having my computer when I stumbled on it, I used the devices that I keep at my parent's house.
Mostly obsolete technology that is too heavy to take from city to city.
I recorder the garden of my childhood through the open window and then slowly wear it down.
Recorded it on the reel to reel.
From the reel to reel to the cassette deck.
From the cassette deck to the guitar amp recorded through an inverted speaker.
So on.
Here the final edit using intermediate state of the signal.
The final sound is a test made on the cassette tape.
I just felt like it belonged there.



~ S U P E R C O L L I D E R ~
For a course on digital lutherie, I've worked on a prototype called Komorebi (The sun filtering through the leafs in japanese).
The initial tought was to highlight the warm feeling of a sun beam caressing your face when walking under trees.
For this I use a headset with a light captor on it, this captor send midi info (value between 0 and 127) to Max/Msp, which treat the data and trigger SuperCollider function accordingly via local OSC.
You can find the code here (Github Link).
Here is an audio example of what you might hear :



~ p 5 . j s ~
I'll be woking soon on a A/V installation for my studies.
The idea I pursue for now is a projection of proceduraly generated visual, inspired by nature.
Those visual may be controled by some acoustic device, I was thinking horizontal guitar: something in the vein of a harp.
Depending on the frequencies, I'll use different generation algorithm.
Do to those visual I found what's called the L-Systems, a way of using Turtle Geometry.
I looks like this :

Using "FF+[+F-F-F]-[-F+F+F]"

The string of character define the basic form that is going to be repeated, F for forward, + to add angle, - to decrease angle.
Next step is to add movement and make the branches apparition more smooth.
Here is the code for p5.js, generated by chatGPT:

let axiom = "F";
let sentence = axiom;
let rules = [];

// Ajoutez vos règles de production ici
rules[0] = {
  a: "F",
  b: "FF+[+F-F-F]-[-F+F+F]"
};

let len = 100; // Longueur initiale du segment
let angle;

function generate() {
  len *= 0.5; // Réduire la longueur du segment à chaque itération
  let nextSentence = "";
  for (let i = 0; i < sentence.length; i++) {
    let current = sentence.charAt(i);
    let found = false;
    for (let j = 0; j < rules.length; j++) {
      if (current == rules[j].a) {
        found = true;
        nextSentence += rules[j].b;
        break;
      }
    }
    if (!found) {
      nextSentence += current;
    }
  }
  sentence = nextSentence;
  createP(sentence); // Afficher la chaîne de caractères correspondante
  turtle();
}

function turtle() {
  background(51);
  resetMatrix();
  translate(width / 2, height);
  stroke(255, 100);
  for (let i = 0; i < sentence.length; i++) {
    let current = sentence.charAt(i);
    if (current == "F") {
      line(0, 0, 0, -len);
      translate(0, -len);
    } else if (current == "+") {
      rotate(angle);
    } else if (current == "-") {
      rotate(-angle);
    } else if (current == "[") {
      push();
    } else if (current == "]") {
      pop();
    }
  }
}

function setup() {
  createCanvas(800, 600);
  angle = radians(25); // Angle de rotation des branches
  background(51);
  createP(axiom); // Afficher l'axiome initial
  turtle();
  
  let button = createButton("Générer");
  button.mousePressed(generate);
}



~ H Y D R A ~
I'm tinkering with Hydra, learning to properly use feedback, here is my latest work.

noise(50).layer(src(o0)).scale([0.999, 0.997, 0.998])
    .rotate([0, -0.003, 0.001])
    .luma(() => (0.45+(0.3 * Math.sin(time * 0.5))))
    .out(o0)

gradient(0)
    .color(0, 0, 0)
    .add(src(o0))
    .modulate(o3)
    .out(o1)
shape(4)
    .modulate(noise(5))
    .out(o3)

render(o1)



~ C O M P O S I T I O N ~
Frequently playing the modular with a friend of mine.
I'm learning to use the Teletype, here it play rotating chords on qu-bit chords, using the N.C operator.
N.C A B C
Where A is Root, B is Chord Type, C is degree.
Voices switch degree each chord, generating a long portamento, phasing along the way.

I :
L 1 4: CV.SLEW I 10000
M 20000

M :
L 1 4: $ I
B P.NEXT
ADD X 1

1 :
CV 1 N.C A B MOD ADD 1 X 4
Same for script 2, 3, 4 with incremented degree
You can change A to Change the root



J U C E
I'm doing well on Sinensis VST version: I've refactored all the code in a clean way. implemented the odd/even high/low parameter.
Everything is working so far, but there is still a lots of works ahead.
I'm learning a lot about the juce framework and all his tools in the process.
Here is a first interface attempt to learn how to custom knobs ("juce::RotarySlider").



V C V ~ D E V E L O P M E N T
Long Time no See ! Lot of change, Wilt has been entirely re-though: no more reverb, now it's a buffer mess, reading and writing at a different speed.
I'm not entirely sure what is happening but it does sound nice. Hellebore is done, added new elements to the panel. All of this is out on the library. I'm doing a VCV pause (maybe for ever, who knows) to discover JUCE !
For now I'm really lost on which function is calling what, where are the variable, lots of obscure pointer trickery and Obviously UI is a mess. Seems really complicated for now, will seems really logic in few month (I hope).
I though a lot about Sinensis as a vst and a lot more idea comes to mind, I should keep the UI simple, but with a drawer for manual settings of band. New Param can be : ~ C O M P O S I T I O N ~
I going back to Ableton and having a lot of fun with the warp parameters, granular and glitch.
A little Aphex Twin inspired noise mess :

V C V ~ D E V E L O P M E N T
With all the git learning, shuffling code left and right, I think that I've lost Tectorum and Volubilis.
It's not that big of a fuss, Tectorum was not that a good module and Volubilis was stuck.
I will probably rebuild Volubilis from the ground up, it's what it needed anyway.
I've made a working stereo cross-feed for Hellebore, I was really surprised by the fact that it compiled and worked at the first try, especially cause it is based on multidimensional array (and that's a field I'm very prone to make error in).
Variation pan the combs 2/4/6 more and more to the opposite side.
I now have a working Msys terminal in vs code !
Swapping between app is now a thing of the past.
~ C O M P O S I T I O N ~
Tried making a sequence with 4 square oscillators modulating the shift of Tides (thus giving some kind of quantization).
Big kick from a Maths voice, channel one as oscillator, channel two as pitch envelope.


V C V ~ D E V E L O P M E N T
I've made a first attempt at a stereo reverb, for now just two separated channel each processing an input.
I created a two dimensional array containing 6 combs filter in each columns.
Using a for-each loop over a for-each loop to iterate through all the combs in parameter update and processing functions, columns then rows.
I'm searching ways to cross feed the two-channels, first I'll try swapping filters (and their buffer) from one channel to another.
I'm thinking that I should create a struct to store all the parameter and write a global function calling all parameter update functions.
Lets do a little refactoring and cleaning before going further.
Lots of work (and bugs) ahead.


~ C O M P O S I T I O N ~
In the mood for some saturated sound.
I'm using all the tools at hand : Fun stuff !
V C V ~ D E V E L O P M E N T
4 modules are finally out in the world !
here is the link to the plugin.
Hellebore is working, I'll start trying a stereo implementation.
I've also made a little manual in the readme of the noi github repo.


~ C O M P O S I T I O N ~
I'm having a lot of fun with the black hole, effects are a huge part of my musical creation and having more than one in my rack is really driving my creativity.
I will probably sell my plonk, disting and rampage that I use less and less.
Here the rampage is used solely for it's comparator, creating a grainy noise to pluck the filter.
The disting is used for the noise output of it's s&h algorithm.

V C V ~ D E V E L O P M E N T
I'm struggling to finish Hellebore, the nested function call makes it hard to debug. The reverb calls the comb filter which calls the ring buffer. Those russian dolls creates a lots of possible cracks for bugs to slips in. I've learned a bunch of things on how to declare an array of object.
It's going good but it takes all of my brain juice.

~ C O M P O S I T I O N ~
Just got a black hole dsp 2 from erica synth. I was doubtful about the interface (I almost never use my Disting mk4), but it seems well focused and 24 algorithm is memorable. Here is the first test with the pitched delay. Tides is used as a synced lfo. Sources are Dixie, Math, Plonk and a plucked Morgasmatron.