I've been doing a bit of poking around. It seems the Xruns are being caused by actually entering futureBuild.swap(), not the code inside it.
If I comment out all the code inside the function, then while (obviously) there is no sound I still see all the Xruns. However, if I comment out the *call* to it in activate_wavetable() there are no Xruns. This rather suggests there is some time consuming background operation going on. Flying by the seat of my pants here, is it possible to make the swap in a non-rt thread to maybe a 'plain' intermediate wavetable, and then do the rt swap with this? It seems messy, but it would have an addition advantage of making wavetable morph trivially easy. -- Will J Godfrey https://willgodfrey.bandcamp.com/ http://yoshimi.github.io Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. _______________________________________________ Yoshimi-devel mailing list Yoshimi-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/yoshimi-devel