I've attached my best attempt at recreating this effect, the attached PNG will be used as a reference.
Given the distance d1 and d2, these distances are usually identical in a traditional bitcrush or simple quantization. I would like to be able to vary the distance between points of an incoming signal such that the distance between points is a function of a given quantization value, the current Y value, AND a given quantization curve.
As a first step (and illustrated in the attached PNG), smaller values of Y will produce a more pronounced quantization given a x^2 quantization curve while larger values of Y will produce a smaller distance between steps.
Ideas?
~Brandon
On Tue, Nov 2, 2010 at 10:47 AM, Ludwig Maes ludwig.maes@gmail.com wrote:
could you give examples of idealized input and output for cases 1-4? im not sure I understand what exactly you want...
interested greetings! Ludwig
On 1 November 2010 13:09, brandon zeeb zeeb.brandon@gmail.com wrote:
Hey All,
I've been burning my brain over this issue lately and I can't seem to
come
up with an elegant solution, and stay with me here as I attempt to
explain
it best I can. For me and my needs, being able to quantize an arbitrary signal to any arbitrary series is the Holy Grail (and I'm not talking
about
simple table lookup!).
I'm looking to quantize an incoming signal (or value) given a max and min quantization value and an arbitrary curve. Think quantization of note events to a series of note lengths or your standard bitcrush algorithm,
it's
pretty much the same. The arbitrary curve should influence the degree to which the bitcrush algorithm is applied to the signal such that one could have less quantization at smaller values of the input signal, and greater quantization and larger values (or vice versa). Simple table-lookup is insufficient as it requires you to pre-define a maximum input signal amount. I'm willing to waive this requirement if an implementation is
not
possible without it.
This will be used in the following circumstances:
To quantize envelopes signals to any arbitrary series (say !, Fibonacci, x^2, 2^x, etc) To quantize signal loop length values to an arbitrary series of note
values
(say 1/16, 1/8, 1/2, 1/1) To apply non-linear bitcrushing to a signal such that higher values are expressed with less of an effect than smaller values To quantize pitch events to a pre-defined series
Is this making sense?
My attempts thus far has extended the RjDj bitcrush abstraction with mild success. I can recreate the effect but the output signal bears too many artifacts from the input signal (ie: the curve retains part of it's
original
slope from the input signal and is not flattened or held until the next value).
Thanks, ~Brandon
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list