AFAIK lunch does the manuals and documentation, not the coding.jackle&hyde wrote:You are no expert?Lunch Money wrote:I'm no expert, but I don't know how this automatic interpolation with MIDI or GUI control is supposed to work. The host or the plug-in have no way of knowing how quickly you're moving the knob or plan to move a knob, so how can steps be smoothly interpolated?
I'm not saying it can't be done-- I know that J&H has a heap more knowledge than I do, and Sascha Franck as well. I'm just curious about how it's supposed to be accomplished effectively or how other developers have already accomplished it.
In the meantime, I just use automation (or in the case of the Classic Auto Filter, 'automatic' modes, which do not step).
Greg
Ah, yes... I know. You merely create "beta bugs"...![]()
What's the matter with you?
You are developer! So can't you see a solution?
Of course, the host has no information about the speed, you twak the controls. It's not the host's job. But your plugin actually has. Because it "knows", how many sampleframes are inside a block. And it also knows probably, how a rapidly moved control should be handeled to not to produce any digital artifarkts...
Decent Filters?
-
- KVRAF
- 1617 posts since 2 Dec, 2003

-
- KVRian
- 1325 posts since 1 Sep, 2004
Then I am sorry again. (Did drink too much coffee today...)
-
- KVRAF
- 12977 posts since 29 Sep, 2003 from Ottawa, Canada
Yup, just docs. 
Of course, I can see how it would be possible with a fixed block size, but that's going to add latency. I was wondering how "smoothing" would work in realtime. I don't see how it could, effectively. Sure, there's got to be SOME sort of way of doing it (there's evidence out there!) I just don't know how to do it without a fixed block size and lookahead.
Greg
Of course, I can see how it would be possible with a fixed block size, but that's going to add latency. I was wondering how "smoothing" would work in realtime. I don't see how it could, effectively. Sure, there's got to be SOME sort of way of doing it (there's evidence out there!) I just don't know how to do it without a fixed block size and lookahead.
Greg
- KVRAF
- 25034 posts since 12 Jul, 2003 from West Caprazumia
indeed! - check out Digilogue's very old BlueFilter!Lunch Money wrote:there's evidence out there!
-
- KVRian
- 1325 posts since 1 Sep, 2004
Fixed blocksize? look ahead? latency?Lunch Money wrote:Yup, just docs.
Of course, I can see how it would be possible with a fixed block size, but that's going to add latency. I was wondering how "smoothing" would work in realtime. I don't see how it could, effectively. Sure, there's got to be SOME sort of way of doing it (there's evidence out there!) I just don't know how to do it without a fixed block size and lookahead.
Greg
What about are you talking here?
We talk about parameter smoothing. Simple possibility to smooth the values on any automation.
Interpolation of a floating point parameter, if you want. That's done inside the plugin easiely.
Otherwise it would'nt be possible to do a realtime fading pan or volume potentiometer without any audible clicks ...
Hopefully the many developers on BetaBugs know how it works (or at least one of them) ...
-
- KVRAF
- 2460 posts since 3 Oct, 2002 from SF CA USA NA Earth
Yes, and it can't be done without either some latency or some potential overshoot. Whether the latency is a problem or not is a different issue.jackle&hyde wrote:Fixed blocksize? look ahead? latency? What about are you talking here?
We talk about parameter smoothing. Simple possibility to smooth the values on any automation.
-
- KVRian
- 1325 posts since 1 Sep, 2004
Sorry, but I don't understand that.
If a process can be done without any latency, why then do it with latency.
A sampler can also be done with latency but nobody really would attempt to do that (seriously).
Latency of the entire audio process (output latency - like with FFT or pitch detection) is quite different to parameter smoothing. In that case only the parameter reaction may have a little latency, which is inaudible, if done right. Thats even the characteristic of parameter smoothing.
If a process can be done without any latency, why then do it with latency.
A sampler can also be done with latency but nobody really would attempt to do that (seriously).
Latency of the entire audio process (output latency - like with FFT or pitch detection) is quite different to parameter smoothing. In that case only the parameter reaction may have a little latency, which is inaudible, if done right. Thats even the characteristic of parameter smoothing.
Last edited by useruseruser on Sun May 29, 2005 11:08 pm, edited 1 time in total.
-
- KVRian
- 1325 posts since 1 Sep, 2004
You actually have the next one, in that moment, where you get the audio block.jtxx000 wrote:then how would you implement smoothing? to interpolate you have to know the current value and the next one...
I repeat:
Latency of the entire audio process (output latency - like with FFT or pitch detection) is quite different to parameter smoothing. In that case only the parameter reaction may have a little delay, which is inaudible, if done right. Thats even the characteristic of parameter smoothing.
Last edited by useruseruser on Sun May 29, 2005 11:33 pm, edited 2 times in total.
- KVRist
- 490 posts since 23 Sep, 2003 from Hungary
I think, you dont mean the same under latency. If a parameter is interpolated (stepremoving is not equal with clickremoving) and you tweak a knob, the parameter will reach the desired value only a few milliseconds later. This can be called latency, but it's not the same latency as by using FFT in the audio stream. (hope, you understand what i mean... my english is not on the top
)
-
- KVRian
- 1325 posts since 1 Sep, 2004
Right!
You already did it right on your plugins!
You already did it right on your plugins!
-
- KVRian
- 1325 posts since 1 Sep, 2004
That's not latency.
Latency is per definition, if the (entire) audio output is delayed.
Latency is per definition, if the (entire) audio output is delayed.
-
- KVRian
- 1325 posts since 1 Sep, 2004
And BTW: the audio block comes in preroll.
That means, you get the audio samples to modify BEFORE it appears at any physical output.
But whoom I am telling that!?
That means, you get the audio samples to modify BEFORE it appears at any physical output.
But whoom I am telling that!?
Last edited by useruseruser on Sun May 29, 2005 11:24 pm, edited 1 time in total.
-
- KVRian
- 1325 posts since 1 Sep, 2004
There is no possibility to do something in the future. Neither in the analog nor in the digital world. (You merely can prepare or control something to let it finally happen in the present at a certain time point). The same way as it is not possible to do or change anything in the past.
Things ALWAYS happen in the present.
And there is NO DIGITAL SYTEM able to work without any latency (latency is, if you want it or not, always there. This also will not change in the near future...
So it is finally the playing with "latency", if we implement audio opcodes (including parameter smoothing) in general.
But that dosen't mean, that we have to introduce a new (additional) latency by providing parameter smoothing. That meight be a little "delay" in some cases but in most cases probably not necessary, because we get the audio in preroll already (block) before it appears at the final output.
Things ALWAYS happen in the present.
And there is NO DIGITAL SYTEM able to work without any latency (latency is, if you want it or not, always there. This also will not change in the near future...
So it is finally the playing with "latency", if we implement audio opcodes (including parameter smoothing) in general.
But that dosen't mean, that we have to introduce a new (additional) latency by providing parameter smoothing. That meight be a little "delay" in some cases but in most cases probably not necessary, because we get the audio in preroll already (block) before it appears at the final output.


