<br><br><div class="gmail_quote">On Fri, Aug 24, 2012 at 11:48 PM, Fons Adriaensen <span dir="ltr"><<a href="mailto:fons@linuxaudio.org" target="_blank">fons@linuxaudio.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

The easiest way in the case of wavetable synthesis is to upsample<br>
your waves by a factor of say 8, then use linear interpolation.<br></blockquote><div> <br>So the preparation process is:<br>-record the sounds<br>-upsample x8<br><br>Live playing:<br>-downsample the wavetable  to the size needed for the frequency that is played<br>
<br>Do I understand the steps correctly?<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Provided you have a *good* interpolation method, two things follow.<br></blockquote><div>You mentioned linear interpolation, I think that will be sufficient considering its an instrument not an emulator, crunchy aliasing? Thats meant to be there :)<br>
 <br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The alternative<br>
is to compute the phase trajectory of the entire waveform, which will<br>
tell you the exact pitch with much more precision than looking at the<br>
waveform.<br></blockquote></div>I don't know how to compute the phase trajectory or that, but it sounds like its not strictly necessary so I'll leave that for the time being.<br>The loop points on the wavetables I'm currently using are just "ear picked", and slightly visually tuned.<br>
<br>Other concepts I've read about and would be interested in experimenting with after a working prototype is done:<br>
-2d interpolation between wavetables and linear interpolation between 
the wavetables values. Time and phase of wavetables must be exact.<br>
-Randomizing phases and loop positions within wavetable for different timbres<br><br>-Harry<br><br>PS: Random idea: Create a program which scans trough a short recorded frament, and analyzes the number of samples per cycle. Some sort of "take sample, check sample" loop should do the trick really, and then output the largest repeated period. That with a sensitivity control is essentially all that's needed to create perfectly looped synthesized recorded wavetables right?<br>