xoxos evolves practical dsp forever

DSP, Plugin and Host development discussion.
RELATED
PRODUCTS
SynthEdit

Post

thank you xoxos

:party:
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Post

xoxos wrote:
JCJR wrote:Is your version better-behaved at high freqs?
qualities of behaviour are not always clearly communicable har anyway i've been calling it "circular osc" tho i've seen it bear a fair number of titles eg. "fastsine". quadrature would be a better name but people seem to know what i mean, i'm not sure where i picked it up. "handy thing you can do things with" i use it in graphics, and cheap audio generator implementations where it's important to create "an event" without utmost precision :)

i believe it's generally stable to 1 (consider simple case of rotating (1,0)). you'll understand my uncritical laxness, for some reason i seem to remember some form of this better under pi/4, maybe not. since 4 iterations is working satisfactorily _imo_ for bins, that makes it useful for nonrecurring transformations.

i remember some presentations about the ellipse error. i've used it (or similar mass-spring) for audio countless times and i don't remember it as aliasing much at 44.1k...

as i'm casual i don't fancy analysing eg. how floating point affects it and so forth, it's securely in the "good enough" selection of methods. there's obviously a relatively linear trend in iterations and an improvement with smaller angles.

aah yes. and from my nescient perspective i wonder if the "ellipse" is because people aren't taking the cosine between samples? i'd say i've seen maybe 15-20 mentions of this method and perhaps i remember maybe one of them doing so, if that. doesn't matter.
Thanks. One of the things on the long to-do list was to experiment with inverse FT "the hard way" which may or may not have advantages for smooth fast timbre changes and such. Typical unimaginative possible uses such as Time/Pitch stretch or noise reduction.

Cheap generation of lots of sine/cos pairs seemed most likely with that IIR quadrature generator or just a bunch of interpolating lookup table oscillators possibly all reading the same big table. Some had said the quadrature osc might not be accurate enough for this purpose, but maybe your version is better. Maybe one of these days will get around to trying it out.

Post

How is this related to 2D vector rotation which also produces sin/cos pairs very quickly?

http://stackoverflow.com/questions/4780 ... -rotations

Post

naive investigation is my dsp forte (well, it's often all i work with) and it's a *true* blessing. if one only did things one reads out of books,

(we'll print the answer in hardcover next autumn) "thinking for yourself may not always lead to comfort in life, but it's better in that thingy that life is only a part of - surviving life, or something. independent thought. instead of like, letting life kill you and run you over and driving a little golf car up your bottom and going ding ding ding ding ding ding ding endquote. "don't be owned people, manifest your authority, do things without reference."

"i remember" (...) "fast sine" et c. being able to run a fair bit at 44.1k before exploding, certainly a second if not several, so typical window lengths ought to be relatively faithful (of course use the .5 for taking cosine, which is new to me, glad it's .5).


2d vector rotation, "you simply must code outside of audio dear". the oscillator is like the coefficients rotating themselves i think :)


audio coders and game coders are two different species with similar traits. it's funny eg. how gamedevs know x*x*(3-x-x) et c. and audio needs this pointed out and so forth. they don't want to know about useful audio techniques either. i guess the topology of economics dictates. must do boring horrible databases sometime.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Post

Iteration is far from practical when sqrt is all it takes to calculate sin and cos.

Post

camsr wrote:Iteration is far from practical when sqrt is all it takes to calculate sin and cos.
Well, sqrt() still costs you almost as much as a division. ;)

Post

mystran wrote:
camsr wrote:Iteration is far from practical when sqrt is all it takes to calculate sin and cos.
Well, sqrt() still costs you almost as much as a division. ;)
And it's all peanuts because it's only like 4 times slower than multiplication.

Post

camsr wrote:Iteration is far from practical when sqrt is all it takes to calculate sin and cos.
How?

Post

xoxos wrote:thank you xoxos
+1 No higher acclaim can be given than by the user itself :D

Post

Even if the performance gain obtained may be insignificant the analogy to vector rotation was a nice one for its own sake.

Following a similar idea it's trivial to derive a generic formula for FM modulation - phase (distance travelled on the unit circle) is the integral of instantenous angular speed (2*pi*f) with respect to time - think of that as the speed of rotation or as the speed of the travelling point on the unit circle ). That's another analogy that may be useful someday.
~stratum~

Post Reply

Return to “DSP and Plugin Development”