ohm
61
All good now, it is singing away nicely.
1 Like
Thank you for this, its awesome. BTW the link on the github for the documentation page is wrong - its Unauthorized | norns community and it should be glaciers | norns community
1 Like
dwtong
63
Thanks - Iāve fixed that. Looks like I was linking to the page editor 
1 Like
Is the latest update on maiden? I donāt seem to have a buffer page, but maiden shows that my version is up to date.
Edit: nvm, I didnāt realize I have to hold k1
Would it be possible to implement a simple āpositionā indicator on each of the four sample pages to show how far you are into the sample playback? Maybe even waveform display and a little bar across the top?
Also ā¦
Would it be possible to implement a course/fine tuning parameter?
1 Like
dwtong
66
Definitely possible to do both of those things, itās just a matter of what makes sense in terms of the script. I kinda like the fact that the position is a bit mysterious at the moment, but also can appreciate why you would want to know where it is.
In terms of a tuning parameter, are you referring to the tuning of the original sample or the harmonics?
2 Likes
Understood about the āmysteryā aspect of not knowing the position. Iāve had some entertaining anticipation waiting for some percussive drops.
Iād lust like the stretched samples to be tunable to fit into the context of another piece ⦠pushing the pitch up or down in steps or fine increments.
Iām really enjoying the script!
I do occasionally get some snapping/popping possibly due to CPU load.
1 Like
dwtong
68
Cool, that makes sense.
I still do need to do some optimisation, itās definitely pushing against limits at the moment. Is there any time in particular that you notice clicks (e.g. when changing files, when using longer files, etc)?
Iām mostly using short 5-8 second long files. Itās happened with 3-4 samples being stretched. It may be happening at longer (more than 10) stretching. It also happens with or without the main reverb engaged. SSH into the Norns and use htop to monitor performance and I think youāll see CPU spikes that coincide with the pops.
1 Like
xmacex
70
Iām a huge fan of a bit of mystery, and of course balancing with being musical (or rather: sonic) instrument to interact with.
I tried to sketch, after spending some time looking at glaciers on Google Earth, some ideas to remove numbers from the UI and replace them with more āglacialā visuals but didnāt come up with anything splendid yet. For stretch i was imagining a movement of a massive thing over a stable even more massive thing. For the voices, i was just imagining a photo of a different real glacier, maybe as background imageā¦
I am not sure what counts as a glacier scientifically, but I have been to what i naĆÆvely consider to be glaciers, jiehkki and jĆøkel (for me, jƤƤtikkƶ) in Lapland. Where i grew up there are no glaciers nearby but the iceages shaped the geography so that you can clearly see how glacier is a moving thing: loads of long lakes pointing in the same direction, and huge rocks siirtolohkare in places where you wouldnāt expect to find a rock, e.g. on top of a hill. Marks of giants now long gone.
Jaron Lanier, one of these early Virtual Reality imaginaries and developers, musician and also a vocal critic of the internet we have (rather than the internet we could have), said that his ideas for early VR was to become a piano or a mountain range. Norns can be that, in the sonic sphere.
8 Likes
What is the likelihood of record start/save being map-able to a midi note(s)?
Iām using a midi controller for all other aspects of the script, I would love to not have to touch my norns at all. Also, thank you for the time and effort you have put into this script! 
Iām immediately loving this app. Stretching is a big tool for me and I love the panning options. Thank you!
1 Like
The continuing discussion around this scrip, namely how new features may add functionality at the cost of the original scripts character and artistic quirks, makes me think of all the different granular scripts in the Norns library. A solution that makes sense to me is for other people to make other scripts implementing their idea of how Paul Stretch should be implemented in the Norns environment.
1 Like
This is really wonderful, thank you for putting it together. I am having a ball with it.
Question: what is the intended behavior with non-integer values of the stretch parameter?
In playing around with low values of stretch, I discovered that (by ear) there seems to be a very sharp difference in sound between 1.97 and 2.03. In fact, it sounds like only integer values of stretch are respected, and N.xy always produces an N-fold stretch, even if it is close to (N+1).
If Iām hearing correctly, is this the intended behavior?
I donāt think itās like a problem to only use integer stretch values, if that is the intended behavior (normally the values will be so large that you wonāt notice anyway). But it did catch me off guard, possibly because the presentation of decimal values in the UI suggests they might affect the sound.
dwtong
76
I love this idea!
This is totally doable and makes sense. The recording feature uses softcut so the code should be similar to other scripts that already have this functionality.
This makes a lot of sense to me too. I was thinking of creating a lua lib alongside the engine to make interacting with it a bit easier, similar to glut, timber, etc. That way others can use the engine without necessarily having to know supercollider.
Initially I intended it to only be integer values. However the nature of the params curve that Iām using means that non integer values are introduced at the lower range. Youāre completely right though, currently what youāre hearing is the jump from 1 to 2, with the fractional part being ignored.
Iāll fix the engine to accept floats instead of integers and that should make those low values a bit more interesting to play with. EDIT: Iāve pushed a fix for this.
6 Likes
dwtong
77
I was thinking a bit more about this, and Iām not sure yet how this will fit into my existing implementation of the script, with the different ways that Iām managing state, and my use of params for midi mapping functionality.
However, if you were keen, it wouldnāt be too difficult to implement your own mapping to some of my state functions for your own workflow.
Currently there are four different functions that control the buffer state:
record_input() - call this for "record start"
save_recording() - call this for "record stop"
clear_buffer()
load_file()
There is a really great study on using midi with the norns in the monome docs: monome/docs | monome docs
You could do something like this:
m = midi.connect()
m.event = function(data)
local d = midi.to_msg(data)
if d.type == "note_on" then
if d.note == 60 then
record_input()
elseif d.note == 62 then
save_recording()
end
end
end
(this code is untested)
60 and 62 represent C4 (middle C) and D4 - you can swap out these numbers for anything you like. https://www.inspiredacoustics.com/en/MIDI_note_numbers_and_center_frequencies
Note that this will start and stop recording for currently active voice. You can change the voice by changing the value - e.g. voice = 2
Let me know if you get stuck - happy to help.
4 Likes
Virgil
78
Kudos to @dwtong, I really like Glaciers and its inviting simplicity. Right upon the initial release in May I loaded up the first samples I came across (lowest possible effort really). Although being faintly familiar with PaulXStretch I was taken aback by some downright distressing textures that emerged within the first few minutes of dabbling. I listened for a long while, leaving it at that.
However, after weeks of being haunted by those chanting children and illusory strings I had to revisit the sketch, make some edits and, importantly, add a video to conclude.
7 Likes
dwtong
79
Beautiful and haunting, thanks for sharing!
1 Like
Hi there,
I have been on a mission to make a āall hardwareā (well non laptop) super slow-downer toolkit within my own live looping projectā¦
My own (hacky) version of this involved capturing a live loop and then re recording it to other loopers and effects with octave shifts/reverse/loads of reverb etc⦠it was a fun idea to explore but never quite got me that original ( paulstretch) sound I wanted.
So, upon finding this tool ( and being literally one day into trying to understand LUA) my mind is racingā¦
Now that you have added Live recording, is there any thoughts towards extending this utility towards having that recording instantly loop ?
Beyond that idea⦠what about leaving the recording buffer open to add even more notes to the recording whilst the playheads are doing their thing making different harmonic versions of that loop?
beyond THAT - how about haveing āfeedbackā in this overdub idea so that the amount of time the audio can be played before being removed can be varied between 1 ( just building no decay) and 0 ( only plays back once befor ebeing removed)
I can think of many ways that I would LOVE to play a simple (eno esque) piano line into a loop that would itself be getting slowed down to minutes/hours/days of changes 
anyway, just some thoughts , but what a wonderful app this is already 
8 Likes