Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-03 Thread Frank Barknecht
On Tue, Nov 02, 2010 at 06:13:49PM -0400, brandon zeeb wrote: Great! Unfortunately, I'm not entirely sure how to realize this in Pd. Can you help me out with a little example? Like in the attachement maybe. The [pd roundit] doesn't do a floor, but a real rounding. Rounding or flooring is at

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread Ludwig Maes
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.bran...@gmail.com wrote: Hey All, I've been burning my brain over this issue lately and I can't seem

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread brandon zeeb
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

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread brandon zeeb
This is even better. If I could minimize the jumps around Y = 0.5 to -0.5 It'll be exactly what I'm looking for... or a start at least. Do you see what I mean now? See how the amount of quantization changes with Y and a minimum quantization value? I think I'm getting towards the answer now...

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread Ludwig Maes
So you want amplitude 'a' dependant quantization size 'q' ? take your chosen q(a); in your example it seems you want a simple line: q=q(0)-k*a; define f(a) as integral of 1/q from a=0 to a; also calculate the inverse of f(a) i.e. a(f); now for each sample do: out=a(round(f(in))) where round is

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread Ludwig Maes
The reason you use the inverse is so that the amplitude remains the same albeit quantized. The reason we use another function before flooring is to distritube the floor levels.But afterwards we need to bring the values back to their original place On 2 November 2010 19:37, Ludwig Maes

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread Ludwig Maes
And we want f' to be 1 (integer step) / (per) quantization size (for that amplitude) On 2 November 2010 19:41, Ludwig Maes ludwig.m...@gmail.com wrote: The reason you use the inverse is so that the amplitude remains the same albeit quantized. The reason we use another function before flooring

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread Ludwig Maes
Watch out in my numeric example, I was a bit careless and the q I chose continues to increase for more and more negative amplitudes! On 2 November 2010 19:44, Ludwig Maes ludwig.m...@gmail.com wrote: And we want f' to be 1 (integer step) / (per) quantization size (for that amplitude) On 2

Re: [PD] Non-Linear Quantization / Bitcrush

2010-11-02 Thread brandon zeeb
Great! Unfortunately, I'm not entirely sure how to realize this in Pd. Can you help me out with a little example? Thanks On Tue, Nov 2, 2010 at 2:37 PM, Ludwig Maes ludwig.m...@gmail.com wrote: So you want amplitude 'a' dependant quantization size 'q' ? take your chosen q(a); in your

[PD] Non-Linear Quantization / Bitcrush

2010-11-01 Thread brandon zeeb
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