[Stk] Drummer and Denormal
Joel Miller
jdmiller@mail.arc.nasa.gov
Wed, 16 Feb 2005 12:17:38 -0800
Hello Gary and Perry et al,
I'm presently integrating all of the STK v4.2.0 instruments into a Win2k
VAE (SLAB, http://human-factors.arc.nasa.gov/SLAB). All instruments are
accessed through the Instrmnt interface. For the most part, everything has
worked quite well. I did run into a couple snags.
In Drummer.cpp, Drummer::noteOn(), the noteNum calculation can resolve to
135 for a frequency of 20kHz... This exceeds the genMIDIMap array of 128
elements. A max check after the noteNum calc would prevent an exception...
In BandedWG (and possibly other instruments), every now and then the CPU%
shoots to 100% (compiled in release mode). A NoteOn will reset things back
to normal CPU% behavior (~30%). From the outside, this looks like a
denormalized math problem. I imagine physical models could easily head
into this region as energy asymptotically dies down towards 0... Do the
STK instruments check for denormalized values? Are there any known
denormal issues (e.g., specific instruments where this is a problem)? Does
this sound like another problem?
Thanks,
--joel
Joel D. Miller
Audio DSP Engineer
Spatial Auditory Displays Lab
NASA Ames Research Center
http://human-factors.arc.nasa.gov/ihh/spatial/