electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Clavia Nord Modular » G2 Building Blocks
SimpleSample
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [15 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Sun Jun 03, 2007 4:46 am    Post subject: SimpleSample
Subject description: most basic (non-drifting) sampling circuit
Reply with quote  Mark this post and the followings unread

Most basic sampling circuit: no bells&whistles, no tuning -but stable due to time-stamping technology.

Gate inputs for sampling and sample playback.
Audio input and output.
(highlighted modules)

See test modules for implementation.

Edit: This is an old approach that has been superceded by a vastly better technique. See below in the thread. Don't use this one.


SimpleSample TK.pch2
 Description:
most basic (non-drifting) sampling circuit

Download (listen)
 Filename:  SimpleSample TK.pch2
 Filesize:  1.92 KB
 Downloaded:  1627 Time(s)


Last edited by Tim Kleinert on Fri Jun 19, 2009 1:52 pm; edited 3 times in total
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1068
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Thu Jun 18, 2009 10:49 am    Post subject: Reply with quote  Mark this post and the followings unread

Hi tim,

Spent an hour or so looking at this tonight as I am determined to get my head around it and I think I am starting to get it now (it was the two delays that had me confused but i get that now)

Anyway a few of the modules contained within this patch didn't seem to be doing anything (attached with modules removed), as I tried taking them out to help my understanding and it had no effect (on the patch or my understanding hehe..)...

Would you mind explaining why I might need them, I presume it has something to do with time stamping!? (which I don't really get but have heard you mention before)

Cheers

Ross


simplesampleMod.pch2
 Description:

Download (listen)
 Filename:  simplesampleMod.pch2
 Filesize:  1.74 KB
 Downloaded:  1450 Time(s)


_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Fri Jun 19, 2009 1:49 pm    Post subject: Reply with quote  Mark this post and the followings unread

I haven't looked at your patch because you don't need time-stamping at all anymore. That approach has luckily gone out of the window.

The time-stamping method worked by syncing the circular readout pointer to the delay line via a LOUD max headroom spike of a few samples, in order to prevent drifting. This brought with it various drawbacks: the inputted audio had to be reduced by 12dB in order to not be mistaken for the sync spike itself (thus scaling down the audio quality from 16 to 14 bits). Also, accidentally playing back the spike wasn't healthy for ears and monitors. Smile

I have since patched a newer method that works by exactly counting out the number of samples contained in a 2.7s loop and thus provides a non-drifting readout base pointer. (Yes, this was a bitch to get right. Laughing) Result: no drift, no bit reduction, no nastily loud audio spike in the loop that has to be navigated around, and more economic too.

I extracted the basic sampling subcircuit and made it into a building block patch with documentation and demo section. See below.

cheers,
tim


SimpleSample2 TK.pch2
 Description:
Improved basic volatile sampling subcircuit. This is the one to go for.

Download (listen)
 Filename:  SimpleSample2 TK.pch2
 Filesize:  3.21 KB
 Downloaded:  1563 Time(s)


Last edited by Tim Kleinert on Fri Jun 19, 2009 3:15 pm; edited 1 time in total
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1068
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Fri Jun 19, 2009 2:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

Arggh!!! hehe just kidding, so I get what you've done here but now the block doesn't retrigger with note on like the old one.

How do I reset the counter back to zero, to restart the sample? I get the feeling it should be easy but I am not sure where to cut into the patch.

EDIT: Also in theory it should be possible to build samplers with a shorter sample time, but increasing poly mem etc.. by truncating the sample counter to a value appropriate the sample time.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Fri Jun 19, 2009 3:17 pm    Post subject: Reply with quote  Mark this post and the followings unread

iPassenger wrote:
Arggh!!! hehe just kidding, so I get what you've done here but now the block doesn't retrigger with note on like the old one. How do I reset the counter back to zero, to restart the sample? I get the feeling it should be easy but I am not sure where to cut into the patch.

Yes, it IS easy. Just replace the OscD driver sawtooth with an OscC and resync the oscillator with keyboard gate. I've patched it and replaced the attachment above. Just download it again.

iPassenger wrote:
EDIT: Also in theory it should be possible to build samplers with a shorter sample time, but increasing poly mem etc.. by truncating the sample counter to a value appropriate the sample time.

Not only in theory. Smile I did exactly that with my 32-partials additive synthesis wavetable algorithm, which uses a smaller delay line as wavetable memory, and thus delivers 14 voices. But it's a tedious fiddly affair to sample-accurately recalibrate the pointer timing. Not fun. Smile And what's even worse is to stretch the "truncated" counter to the full scanning range again. There's no way to do that systematically with this Clavia numeric system. You have to do it by ear. I hate this kind of work. Smile

cheers,
tim
Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1068
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Mon Jun 22, 2009 2:28 am    Post subject: Reply with quote  Mark this post and the followings unread

Many thanks for this tim, had loads of fun trying to mod it. Smile

I was trying to make it so I could move the start point of the sample.

Presumably the obvious answer would be to control the start phase of the OSC but I couldn't work out how to do that, so i experimented with affacting the start of the count by adding or subtracting a value.. but this just made it go weird.. but it was fun anyway.

Managed to make it go backwards though by inverting the saw wave, also managed to make it slow down whilst holding a key, almost like a scrub effect but unfortunately the counter circuit wasn't affected so the scrub zone would get smaller as you slowed it down.

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Mon Jun 22, 2009 3:46 am    Post subject: Reply with quote  Mark this post and the followings unread

Hi Ross,

Cool you're having fun with it. Smile

The circuit cannot handle position values above 64 (or below 0 for that matter). So, if you want to change the starting point by adding an offset, you have to make sure that the values wrap around 64 back to zero again. Otherwise it will start to act strangely.

A forwards/backwards-scrub-functionality amounts to having a direction control for the playback sawtooth driver. The "Dir" input in the ShapeLFO does exactly that, but unfortunately doesn't clock at audiorate. So one has to go the DIY route. I made a patch (see attachment below) that does this, and has sample start point control as well.

However, you will notice that the keyboard tracking is bad and the direction control is coarse. This is due to the fact that the values needed to drive a DIY readout pointer at such low frequencies (2.7 seconds middle base) are so minute that they truly challenge the resolution of the whole system. Shocked

Of course, there is a method to circumvent this too Laughing Wink (as I did in the PolyGranuSyn X algorithm). But we are getting more and more into, erm, weird Confused territory. Laughing

cheers,
tim


SimpleSample3 TK.pch2
 Description:

Download (listen)
 Filename:  SimpleSample3 TK.pch2
 Filesize:  3.28 KB
 Downloaded:  1556 Time(s)

Back to top
View user's profile Send private message
iPassenger



Joined: Jan 27, 2007
Posts: 1068
Location: Sheffield, UK
Audio files: 5
G2 patch files: 78

PostPosted: Tue Jun 30, 2009 3:57 am    Post subject: Reply with quote  Mark this post and the followings unread

Tim,

Just realised I hadn't said thank you for this so, thank you, it's very clever. Smile

_________________
iP (Ross)
- http://ipassenger.bandcamp.com
- http://soundcloud.com/ipassenger
Back to top
View user's profile Send private message Visit poster's website
Akum420



Joined: Jul 22, 2009
Posts: 50
Location: Québec
Audio files: 3
G2 patch files: 11

PostPosted: Thu Oct 29, 2009 12:55 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi,

I can't trigger the loop (by pressing a key) to the start point when I chose 1.0s instead of 2.7s.


Quote:
counting out the number of samples contained in a 2.7s loop


Can I have to do something like this with a 1.0s loop ? or what can I have to do exactly ?
Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Sat Oct 31, 2009 5:55 am    Post subject: Reply with quote  Mark this post and the followings unread

Akum420 wrote:
Hi,

I can't trigger the loop (by pressing a key) to the start point when I chose 1.0s instead of 2.7s.


Quote:
counting out the number of samples contained in a 2.7s loop


Can I have to do something like this with a 1.0s loop ? or what can I have to do exactly ?


Yes, it doesn't work anymore when you change the delay size, because the readout-pointer is sample-accurately locked to 2.7 seconds.

In order to make it work with a 1.0 seconds delay, you have to recalibrate the counter circuit reset boundary accordingly (96000 samples) and then stretch the counter range out to sweep the 64 Clavia units range of the delay tap. All of this isn't trivial, because you have to represent the sample counting within the fractional Clavia numerical system and the stretching (a non-fractional multiplication) then unfortunately has to be done by trial and error. (I used a mixer in expo mode and tweaked it as good as I could.)
Also, it's not guaranteed that the 1.0 seconds delay is exactly 96000 samples long. The 2.7 seconds delay wasn't exactly 259200 samples long either (a tad more) so I had to fine-tune it by trial and error too. It's very fiddly work, because it takes a long time until these things (the delay and the readout pointer) drift apart noticeably. I used a second counter circuit to measure the drift, until I got the thing locked.

It's possible with any delay size (I locked a 100ms delay for the additive wavetable synth). But all in all it's rather tiresome work every time, and when doing delay-as-sample-memory patches, it's the part that I always dread. Laughing
Back to top
View user's profile Send private message
Akum420



Joined: Jul 22, 2009
Posts: 50
Location: Québec
Audio files: 3
G2 patch files: 11

PostPosted: Sun Nov 01, 2009 4:19 am    Post subject: Reply with quote  Mark this post and the followings unread

ok thank,

I understand better. I don't have all knowledge to do this now but I understand the main idea. I'll watch it closely soon. ++
Back to top
View user's profile Send private message
Roland Kuit



Joined: Sep 29, 2003
Posts: 1090
Location: The Netherlands/Sweden
Audio files: 8
G2 patch files: 127

PostPosted: Sun Jan 17, 2010 5:33 pm    Post subject: Reply with quote  Mark this post and the followings unread

this is fun. thanks tim!


simplesamplemod tk rk.pch2
 Description:
tweak record/trig and level knob

Download (listen)
 Filename:  simplesamplemod tk rk.pch2
 Filesize:  4.22 KB
 Downloaded:  1591 Time(s)

Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Tue Jan 19, 2010 5:07 am    Post subject: Reply with quote  Mark this post and the followings unread

Oooh, looks interesting. Smile Gotta check this out when I've hooked the G2 back up. Thanks Roland. Smile
Back to top
View user's profile Send private message
Roland Kuit



Joined: Sep 29, 2003
Posts: 1090
Location: The Netherlands/Sweden
Audio files: 8
G2 patch files: 127

PostPosted: Wed Feb 03, 2010 4:47 pm    Post subject:
Subject description: totaly punked
Reply with quote  Mark this post and the followings unread

sleeples night tim:)
8 variations


simplesamplemod_tk_rk_B.pch2
 Description:
totaly punked:)

Download (listen)
 Filename:  simplesamplemod_tk_rk_B.pch2
 Filesize:  4.81 KB
 Downloaded:  1515 Time(s)

Back to top
View user's profile Send private message
Tim Kleinert



Joined: Mar 12, 2004
Posts: 1148
Location: Zürich, Switzerland
Audio files: 7
G2 patch files: 236

PostPosted: Thu Feb 04, 2010 11:55 am    Post subject: Reply with quote  Mark this post and the followings unread

Shocked sounds like a drum machine made by aliens Laughing amazing.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [15 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Clavia Nord Modular » G2 Building Blocks
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use