📄 fmvoices.h
字号:
/***************************************************//*! \class FMVoices \brief STK singing FM synthesis instrument. This class implements 3 carriers and a common modulator, also referred to as algorithm 6 of the TX81Z. \code Algorithm 6 is : /->1 -\ 4-|-->2 - +-> Out \->3 -/ \endcode Control Change Numbers: - Vowel = 2 - Spectral Tilt = 4 - LFO Speed = 11 - LFO Depth = 1 - ADSR 2 & 4 Target = 128 The basic Chowning/Stanford FM patent expired in 1995, but there exist follow-on patents, mostly assigned to Yamaha. If you are of the type who should worry about this (making money) worry away. by Perry R. Cook and Gary P. Scavone, 1995 - 2005.*//***************************************************/#ifndef STK_FMVOICES_H#define STK_FMVOICES_H#include "FM.h"//#if !defined(SYMBIAN)class FMVoices : public FM{ public: //! Class constructor. /*! An StkError will be thrown if the rawwave path is incorrectly set. */ FMVoices(); //! Class destructor. ~FMVoices(); //! Set instrument parameters for a particular frequency. virtual void setFrequency(StkFloat frequency); //! Start a note with the given frequency and amplitude. void noteOn(StkFloat frequency, StkFloat amplitude); //! Perform the control change specified by \e number and \e value (0.0 - 128.0). virtual void controlChange(int number, StkFloat value); protected: StkFloat computeSample( void ); int currentVowel_; StkFloat tilt_[3]; StkFloat mods_[3];};//#endif // SYMBIAN#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -