View Single Post
Old 04-04-2019, 10:16 PM   #445
mrelwood
Human being with feelings
 
mrelwood's Avatar
 
Join Date: Nov 2006
Location: Finland
Posts: 1,528
Default

Quote:
Originally Posted by danerius View Post
Hi and thanks for explaining. I really have a lot to learn...
I have noticed that once the basics of coding started to feel natural, I was able to start thinking in code as well. Meaning that I was able to isolate the parts of what I want to achieve, and more importantly approach the goal through thinking how it would be best achieved in code.

Which brings me to the Averager. Pretty much ANYTHING can be done, but it’s not always simple to translate the thought process from math to code. I’m doing my best (translating back and forth to my spoken language as well), because I think the JS is an extraordinary environment, and I would love to see more beginners to jump aboard.

Quote:
The idea was to look ahead in time in order to get phase linearity.
Obviously the code can’t look into the future. But that doesn’t mean the end result is not achieveable! I don’t know how to explain how linear time can be harnessed in code, but let me try to open some analogies I use.

One is a pile of papers. You read the topmost paper and find that it has math calculations. You read the paper row by row from top to bottom, and calculate everything. Once youre done, you put the paper to outbox and start reading the next paper in the pile. It has the exact same calculations, and you calculate all of them again. That’s how the code reads every sample.

Then a running race track, each track representing a track in Reaper. Everybody runs at the same speed in a neat line. Now one of the runners tells everyone else to stay back and give him a 5 meter lead. They love to work together, so they do. Now others will see the one runner as being in the future, while actually he’s not, everybody else is just in the past.

That’s what the PDC does. It doesn’t read from the future, but it tells everyone else to give it a head start. The end result is the same though, so phase linearity is achieveable since all other runners are on the same line

In order to calculate anything that involves samples from different positions in time, all the samples must of course be measured (and stored) first.
__________________
______Announcing__mrelwood plugins______
.. MacBook Pro 16" Late '19 .. Scarlett 6i6, Saffire Pro 24 DSP (+ADA8000) .. FCA610 .. EVE SC207 .. Focal: Shape 65, Alpha 65, CMS 40, Listen Pro ..
mrelwood is offline   Reply With Quote