System for customizing musical effects using digital signal processing techniques

Information

  • Patent Grant
  • 6664460
  • Patent Number
    6,664,460
  • Date Filed
    Friday, January 4, 2002
    22 years ago
  • Date Issued
    Tuesday, December 16, 2003
    20 years ago
Abstract
This invention provides a system for customizing musical instrument signal processing enabling users to produce different tonal characteristics in created musical pieces. In order to create such tonal characteristics, a new mathematical model of tonal characteristics may be digitally created based on two or more initial mathematical models of tonal characteristics. After simulating a first and second initial mathematical models of tonal characteristics, the new mathematical model is created by interpolating one or more coefficients of the first and second initial mathematical models. The new mathematical model may also adjust a control parameter where the control parameter may exist between two values. When the control parameter is the first value, the new mathematical model is the first initial mathematical model. When the control parameter is the second value, the new mathematical model may be the second initial mathematical model. When the control parameter is located at a point between the first and second values, the new mathematical model may represent a convergence between the first and second models.
Description




BACKGROUND OF THE INVENTION




2. Field of the Invention




The invention relates to audio signal processing and more specifically to a system for musical instrument signal processing that creates customized effects through mathematical manipulation of existing effects such as amplifier or loudspeaker cabinet simulation effects.




3. Related Art




During the process of creating music, musicians have always searched for the right way to express their musical ideas. Just as a composer will use different instruments within an orchestra to express music, an electric musical instrument player will choose a variety of signal processing effects to achieve a desired sound. In most cases, the amplifier is the major contributor to the resulting sound, with each brand and model of amplifier having its own characteristic sound. For example, it is not uncommon for an electric guitarist to use several different amplifier combinations in the recording studio during a recording session to achieve desired sound effects. Two or more amplifiers may even be used at the same time to achieve desired sound effects.




Electric guitar amplifiers were introduced in the 1940s and for decades their basic design remained relatively unchanged. These analog amplifiers have evolved to add tone controls, channel switching, and analog effects including reverb, tremble, and chorus to name a few examples. Yet, the core guitar system has remained the same: an electric guitar is connected to an amplifier and then to a loudspeaker for broadcasting the sound after the audio signal from the electric guitar has been processed at the amplifier. If the guitarist wanted a different sound, he would use a different guitar, amplifier, or loudspeaker.




Eventually, guitar players began inserting additional guitar effects produced by other signal processing devices into the signal chain from the guitar to the loudspeakers to obtain a wider variety of tonal characteristics or sound effects. The first and simplest guitar effects processing devices were analog pedals inserted between the guitar and the amplifier. As they evolved, a variety of both analog and digital single effects were available to the musician either as a floor pedal or a rack mounted signal processing device. Such effects pedals and rack processors added variety in tonal possibilities that were used by many guitarists to provide a plethora of effects using processors between their guitar and amplifier. The shortcomings of this approach were evident in the overall degradation of the guitar signal passing through so many individual signal processors. Also, the amount of time it would take to switch from one sound to another by adjusting each individual processing device was a limitation for the musician.




As technology has advanced, effects processor products such as the DigiTech DSP128 (released 1987) combined many effect processors into a single programmable unit. These multi-effects processors offer an integrated digital signal processor (DSP) and a simple, single user interface that allows the musician to use a variety of signal processing setups. For example, the musician may save sounds to one of several preset program locations and recall them at will. A limitation of this type of processor, however, lies in the complexity of choosing a desired sound among the immense number of possibilities that are offered.




The current state of the art for musical signal processing known to the musician is amplifier modeling. This type of processing system combines many tone shaping effects from a multi-effects processor into a single effect that will approximate the characteristics of well-known “classic” amplifiers that guitarists or other musicians desire to use. There are both modeling guitar amplifiers and modeling signal processors. Instead of buying and using several different amplifiers, a guitarist can use a modeling amplifier to approximate the tonal characteristics provided by selected “classic” amplifiers. Some modeling amplifiers, such as the Johnson Amplification JM150 (released 1997), even allow the user to simulate using two different classic amplifiers at the same time. A modeling signal processor has the same amplifier modeling effects as a modeling amplifier but does not contain any power amplifier or loudspeakers. These devices can be used in a number of ways ranging from adding modeling capability to a non-modeling amplifier, allowing direct recording of an amplifier sound without ever having the sound be sent through speakers, and even allowing the guitarist to plug directly into a public address (“PA”) system for a completely guitar amplifier-free setup during a live performance.




Although modeling systems allow a guitarist to get to the sound of a “classic” amplifier faster by combining many control parameters into a single “model select” control, they significantly reduce the number of possible sounds that can be achieved since the user is limited to the models provided by the product. Also, another limitation is that even if the modeling amplifiers are perfect recreations of the original amplifiers, the tonal characteristics can only be as good as the original amplifier. By only modeling known physical systems, the resulting model does not take advantage of tones that can be created without the physical constraints imposed by the materials and components used to construct these systems. Because these tones are based on mathematical models, the output from the digital signal processor of each product will sound identical. The net result of this is that musicians have a dramatically reduced number of tonal possibilities to choose and that the music being performed or made with these products is less likely to be tonally diverse. What is needed is an audio signal processing system that provides various tonal processing tools to generate a virtually unlimited number of models with new tonal characteristics.




SUMMARY




This invention provides a system capable of customizing musical instrument signal processing enabling the production of multiple tonal characteristics. A mathematical model of tonal characteristics is digitally created based on two or more initial mathematical models of tonal characteristics. Upon simulating a first initial mathematical model of tonal characteristics and a second initial mathematical model of tonal characteristics, a new mathematical model may be created. By interpolating one or more coefficients of the first and second initial mathematical models and by adjusting a control parameter between a range of the first second value, the new mathematical model may be created.




When the control parameter is adjusted to the first value (first initial mathematical model); the control parameter is adjusted to the second value (second initial mathematical model); and the control parameter is adjusted between the first and second values, the mathematical model may represent a convergence between the first and second models. As an example, either amplifier or cabinet-speaker effects may be simulated using the above methodology.




This invention provides the musician with numerous mathematical model options. An unlimited number of special effects based on signal amplification and cabinet-speaker effect generation may be created. This system allows users to create the atmosphere from the signature characteristics of a user employing various amplifiers and/or loudspeakers.




This system also provides an infinite number of musical characteristics inherent with specific characteristics of known amplifiers or loudspeakers thus broadening the musical artist's palette of sounds. This increased flexibility provides the musical artist with the ability to create a user-unique sound and not forcing the artist to rely on a sound or model that the manufacturer has pre-selected. Simple user interfaces may be provided for performing complex sound manipulations and the realistic “touch” and “feel” of real amplifiers and loudspeaker cabinets that guitarists desire.




This also fosters interchange among users. New sounds can be shared with others via the Internet, web pages, user's groups, and the like. These sounds can then be added to a pool of existing models of amplifiers and loudspeaker cabinets and can then be used to create new and unique sounds. The user may be able to simulate and save the models of amplifiers and loudspeaker cabinets that may not have previously been in existence. Once saved, these amplifiers and loudspeaker cabinets models may be recalled providing users with a user defined sound characteristic signature.




Other systems, methods, features and advantages of the invention will be or will become apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the accompanying claims.











BRIEF DESCRIPTION OF THE FIGURES




The invention may be better understood with reference to the following figures. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principals of the invention. Moreover, in the figures, like reference numerals designate corresponding parts throughout the different views.





FIG. 1

is a block diagram illustrating a system providing customized musical instrument signal processing.





FIG. 2

is a block diagram illustrating an audio signal processing system.





FIG. 3

is a block diagram illustrating a signal flow path within a signal processing device.





FIG. 4

is a block diagram illustrating one embodiment of an amplifier simulator subsystem of the device of FIG.


3


.





FIG. 5

is a circuit diagram illustrating the signal pathways for a digital signal processor.





FIG. 6

is a circuit diagram illustrating the signal pathways for a digital signal processor.





FIG. 7

is a circuit diagram illustrating the signal pathways for a digital signal processor.





FIG. 8

is a screen display of a graphical user interface for customizing musical effects.





FIG. 9

is a screen display of a graphical user interface for customizing musical effects.





FIG. 10

is a screen display of a graphical user interface for customizing musical effects.





FIG. 11

is a screen display of a graphical user interface for customizing musical effects.





FIG. 12

is a screen display of a graphical user interface for customizing musical effects.











DESCRIPTION OF THE PREFERRED EMBODIMENT




This invention provides audio signal processing systems capable of generating new simulation models by using various complex mathematical algorithms to combine pre-existing models. These new “hyper models” may be created with techniques enabling the retention of the same level of complexity as the original models and, thus, may become an extension to the collection of available models in digital audio signal processing systems.




Traditionally, the term model referred to a system that mimics certain sound characteristics of another existing system. The term “hyper model” may be used to describe a model that extends the description of “model.” The resulting hyper model may describe a “model” of an amplifier or cabinet-speaker system that is already in existence, and may also be used to describe a new system that may be impractical to physically build. Examples of this include changing the virtual size of a guitar amplifier cabinet and speaker system to include the size of an entire room or to create the tone of a guitar amplifier between a closed back 4×12″ and an open back 2×12″configuration.




This invention also provides for “warping” or “morphing”. These terms may be used to describe a control system to continuously transition the tonality of an amplifier, a cabinet-speaker system, or any other audio signal processing system, from one model to another. This invention provides a set of tools that users may use to create new tones by warping between the tonal characteristics of multiple models thus creating a hyper model. This new hyper model tone can then be saved in a memory storage area and recalled by users at a future date. Therefore, by warping or other subsequent manipulation, multiple generations of new models may be created based on two prior models, whether they are predefined models provided by the manufacturers of the audio signal processing system or newly created hyper models.




Although the electrical guitar may be described as a typical musical instrument, to one skilled in the art it is understood that similar techniques may be applied to other music instruments or sound producing devices. Any device whose audio signal can be digitally processed achieving particular composite tonal characteristics generated by traditional amplifiers and speakers may utilize these techniques.





FIG. 1

is a block diagram illustrating a musical signal processing system where an audio signal processing system


12


is connected to a musical instrument


14


such as an electrical guitar. Also connected to the signal processing system


12


is an output system such as a speaker system


16


.





FIG. 2

is a block diagram illustrating the interoperability of the signal processing system


12


. An audio input


20


may be configured to receive signals from an electrical instrument that may can be processed through the signal processing system


12


to ultimately generate an audio output signal


22


.




When the audio input


20


receives the incoming signals, the input signals may be filtered by a filter device


23


. The filter device may comprise an anti-aliasing filter. The input signals may then be converted to a digital representation by an analog-to-digital device before transmitting the signals to a digital signal processor (DSP)


26


. The DSP


26


may also interact with a microcontroller


28


to provide other programming information and controlling signals to the DSP


26


. These control signals may be used for simulating various known characteristics of amplifiers or characteristics of various loudspeakers cabinets. For example, the microcontroller


28


may have a MIDI connection to an external source


30


where a particular simulation model for a specific type of amplifier may be downloaded to the microcontroller


28


.




The microcontroller


28


may also control direct display devices such as a display screen


32


and LED indicators


34


. A memory location


36


may be connected to the microcontroller


28


allowing for storing and recalling simulation models as desired by the user. The DSP


26


may also have a separate memory location


38


capable of caching or storing various data. A multiplexer


40


may also be connected to the microcontroller


28


enabling interaction with other components of the audio signal processing system


12


such as control knobs


42


, buttons


44


, and an expression controller


46


.




After the DSP


26


finishes its processing of input signals, it sends its output to a digital-to-analog converter


48


, and further to an output filtering mechanism


50


. From that point on, a level control mechanism


52


may be used to adjust the level strength of the signal and may be sent out as the audio output


22


. It is understood that the DSP


26


may work closely with the microcontroller


28


to process audio signals by receiving programming information. For example, a simulated model for a particular classic analog amplifier can be loaded directly from the non-volatile memory


36


or downloaded through the MIDI connection to the microcontroller to be used by the DSP. Various digital processing techniques may be implemented by the DSP


26


.





FIG. 3

illustrates a block flow diagram


60


showing a signal pathway within a digital signal processing device such as the DSP


26


. The audio input from the instrument


14


, such as a guitar, may be subjected to preliminary processing prior to reaching the DSP


26


. In this example, inside the DSP, the audio input signals may be received by a guitar pickup simulator


62


before being passed to a Wah effect generator


64


. Next, a compressor


66


and a pitch/modulation effects processor


68


may further modify and modulate the pitch of the signal to a user defined degree.




The output proceeds into two simulator subsystems: the amplifier simulator subsystem


70


and cabinet-speaker simulator subsystem


72


. The function of the amplifier simulator subsystem


70


is to produce the tonal characteristics of a simulated amplifier or to create a new set of tonal characteristics based on two sets of tonal characteristics corresponding to two known amplifiers. Similarly, the cabinet-speaker simulator subsystem


72


is designed for emulating a particular cabinet speaker system, or for creating a unique set of tonal characteristics based on two known sets of tonal characteristics, that may correspond to two predetermined cabinet-speaker simulation models. Each set of tonal characteristics may be modeled by the DSP


26


using a mathematical model. By adjusting a control parameter such as a warp control, a new model may be created. Details for “warping” between two prior known models to create a new one is further described below with regard to FIG.


4


.




Although both the amplifier simulator subsystem


70


and the cabinet-speaker simulator subsystem


72


may be connected in a sequential manner, it is not required for the signal to be processed through both of them or in such a sequence. For example, before a user performs on the instrument


14


, the user may select whether both the amplifier warping and the cabinet-speaker warping is to be performed, and the specific order.




Following one or both of the two simulator subsystems


70


and


72


, the audio signal path may proceed through an amplifier tone controller


74


, a noise gate


76


, another pitch/modulation effect generator


78


, a delay sampler effect generator


80


, and a reverb effect generator


82


. These components apply additional digital signal processing schemes as desired by the user. The sequence of the different signal processing schemes (including the amplifier and cabinet warping) may be of any combination or in any order of selection. For example, the user may not need to do pitch modulation, thus eliminating the pitch/modulation effect generator


78


.




The combined simulator subsystems


70


and


72


may provide a unique signal processing mechanism that includes features for modeling various guitar amplifiers and modeling cabinet-speakers. One feature of the amplifier simulator subsystem


70


or the cabinet-speaker subsystem


72


is to make variations of tonal characteristics of one or more predetermined simulation models. A control mechanism referred to as a warp control may be applied for (1) both simulating or recreating tonal characteristics of original physical amplifiers or cabinets; or (2) creating tonal characteristics of new simulated or synthesized amplifiers or cabinets.




In a simple analogy, the warp control may mix at least two known audio models of amplifiers or cabinet-speaker sets in a manner similar to mixing at least two cans of paint. The mixed tonal characteristics are a combination of the initial models, just as the mixture of different colors of paint results in a new color. Therefore, the warp control may determine the amount one model should exert influence in the final mix with regard to the other. In this manner, the simulator subsystems can generate distinctive new hybrid amplification effects or cabinet effects, thus creating a new virtual amplifier or speaker model that may not exist or be possible in real world environments. Examples of such simulation model generation for amplifier simulator or cabinet-speaker simulator subsystem


70


or


72


is described in more detail in FIG.


4


.





FIG. 4

is a schematic for an implementation of the amplifier simulator subsystem


70


of

FIG. 3

using the DSP


26


. The amplifier simulator subsystem


70


may have two amplifier simulators


84


and


86


formed by a group of filters that are programmed with predetermined algorithms. The warp control module


88


of the amplifier simulator subsystem


70


may manipulate the signal data going through such a group of linear and non-linear filters in order to complete the morphing or warping.




In

FIG. 4

, a five-filter system is illustrated. An input signal


89


to the amplifier simulator subsystem


70


is passed through a linear filter such as a 4-band biquad filter


90


, a gain filter


92


, a non-linear filter such as a spline filter


94


, a level filter


96


, and a 8-band biquad filter


98


. Mathematically, the filtering mechanism of each filter can be described by a formula and simulated by the DSP


26


. For example, a one-band biquad filter may be described as:







H


(
z
)


=



a
0

+


a
1



z

-
1



+


a
2



z

-
2





1
+


b
1



z

-
1



+


b
2



z

-
2















and a cubic rational bell-spline filter (commonly known as a spline filter) mapping an input to an output can be dissected into different regions based on the input where each region can be represented as a cubic polynomial:








f


(


x


)=


c




3




x




3




+c




2




x




2




+c




1




x+c




0


.






The spline filter takes a linear input signal and produces a non-linear output to distort the input signal. Because the non-linear feature of the spline filter


94


produces harmonics above fundamental Nyquist rate, oversampling of the input signal is needed to reduce aliasing effects as a commonly known signal processing technique. The nonlinear protions of any filter may be oversampled to eliminate aliasing. As an example, a 32-region spline filter may take in a digital input between −16 and 16, whose integer portion is known as a spline segment. This integer portion of the input serves as an index to identify a corresponding spline region (or, a group of coefficients) from a data source from a memory space (e.g., lookup tables), while the fraction portion is the input to the polynomial representing the filter (e.g., the “x” in the above formula). It is noted that although the spline filter alone had multiple groups of coefficients for multiple regions, these groups of coefficients are still a part of a bigger set of coefficients that contains all the coefficients required for all components of the amplifier simulator subsystem. The warp control module


88


may manipulate and process the input signal


89


to the amplifier simulator subsystem


70


by controlling all the coefficients of relevant formulas.




A particular set of coefficients for all relevant predetermined formulas used for all components either by the amplifier simulator subsystem


70


or by the cabinet simulator subsystem


72


can be viewed as a simulation “model.” If these coefficients are set to predetermined values, the tonal characteristics of an amplifier or cabinet model may be determined.




Therefore, it is also possible to store sets of coefficients or models in a recallable memory location accessible by the digital signal processor. A library containing lookup tables may be prepared to store these unique models. For example, a model for a British Stack guitar amplifier should have a unique set of coefficients different from that of an American Combo guitar amplifier. These models, or sets of coefficients, do not have to correspond to amplifiers or cabinets existing in the market. They can be for virtual amplifiers or cabinets generated purely based on mathematical manipulation of corresponding coefficient sets. If two simulation models for two amplifiers of known brands are warped to create a new model, the new model most likely will not match any known amplifier. Since any amplifier is represented as a model through the coefficients, as long as there are at least two known models, or two known sets of coefficients, a new model can be created.




Using the amplifier simulator subsystem, various tonal characteristics can be produced. For example, an amplifier warping feature may use two prior amplifier simulation models and combine them together with a predetermined control that generates new amplification effects. This is accomplished by interpolating each model's respective coefficients to create a new model. For instance, the interpolation is performed on the coefficients of each biquad and spline filter in the respective amplifier simulator. This newly created model can function as one of the two initial models for the creation of additional models. Consequently, the possibilities to create new models are almost infinite, and are not limited by the availability of any physical amplifiers on the market.




In the example shown in

FIG. 4

, a total of 12 bands of the biquad filters are used. In this case, each coefficient of one amplifier may be linearly interpolated with the coefficient of the other amplifier (e.g., amplifier simulator


2


) using a control parameter W provided by the warp control module


58


. Assuming that each biquad filter within the amplifier simulator


1


(or the first initial mathematical model) can be represented as:







Amp1


:




H
1



(
Z
)



=



a
x0

+


a
x1



z

-
1



+


a
x2



z

-
2





1
+


b
x1



z

-
1



+


b
x2



z

-
2















and the amplifier simulator


2


(or the second initial mathematical model) can be represented similarly as:







Amp2


:




H
2



(
z
)



=



a
y0

+


a
y1



z

-
1



+


a
y2



z

-
2





1
+


b
y1



z

-
1



+


b
y2



z

-
2















therefore, the new model created can be represented by:








H
W



(
Z
)


=





n
=
0

2








(



(

1
-
W

)



a
xn


+

Wa
yn


)



z

-
n





1
+




n
=
1

2








(



(

1
-
W

)



b
xn


+

Wb
yn


)



z

-
n
















where W is referred to as a control parameter known as a warp parameter having a value between zero and one. This interpolation process is repeated on the 4 bands of the biquad filter before the spline filter and on the 8 bands of the biquad filter after the spline filter.




In the spline filter, another interpolation process is carried out. For example, if every given region of the spline filter of the amplifier simulator


1


is represented as:








S




1


(


x


)=


a




3




x




3




+a




2




x




2




+a




1




x+a




0








and every given region of the spline filter of the amplifier simulator


2


is represented as:








S




2


(


x


)=


b




3




x




3




+b




2




x




2




+b




1




x+b




0








the linear interpolation creates the a morphed or warped signal for that region as:








S




3


(


x


)=


c




3




x




3




+c




2




x




2




+c




1




x+c




0








where







C
n

=





n
=
0

3




(

1
-
W

)



a
n



+

Wb
n












and W is, again, the warp parameter having a value between zero and one.




As to the gain and level filters of each amplifier simulator, the signal data going through them are expressed and dealt with in a dB form. In order to keep the overall level of the model consistent as the warp parameter W changes, the gain and level filtering may also be linearly interpolated as dB values. Therefore,








C




GdB


=(1


−W


)


A




GdB




+WB




GdB












C




LdB


=(1


−W


)


A




LdB




+WB




LdB








where A


GdB


represents a gain filtering factor in dB for amplifier simulator


1


, and B


GdB


represents a gain filtering factor in dB for amplifier simulator


2


, and A


LdB


represents a level filtering factor in dB for amplifier simulator


1


, and B


LdB


represents a level filtering factor in dB for amplifier simulator


2


. C


GdB


and C


LdB


are the representations for gain and level factors for the models respectively.




Similar data processing and sound effect manipulations may also be done for the cabinet-speaker simulator subsystem


72


(FIG.


3


). In one example, the cabinet-speaker simulator can be implemented by a Finite Impulse Response (FIR) filter such as a 128-tap FIR filter. It can also be represented as:








H


(


z


)=


a




0




+a




1




z




−1




+a




2




z




−2




+ . . . +a




127




z




−127








the coefficients of which can again be controlled to produce the simulation effect desired. Therefore, different sets of the coefficients correspond to different cabinets, and the simulation model is dependent on these coefficient sets. For instance, to simulate British 4×12 cabinets, a unique set of coefficients are chosen, and for American 2×12 cabinets, another unique set of coefficients are used although the framework of the mathematical model remains the same.




Once a cabinet-speaker simulation model is fully defined, there are several major signal processing control features that the cabinet-speaker simulator subsystem


72


provides to users. They are, among others, cabinet warping, cabinet phase shifting, and cabinet tuning, all intending to create more tonal or sound characteristics. The cabinet control features can simulate tonal characteristics of known original cabinets, which mimic actual loudspeaker cabinets using well-known linear system identification techniques, or generate synthesized cabinets derived purely by digital signal processing systems such as the system


12


.




The cabinet warping feature interpolates the FIR coefficients of the two initial cabinet-speaker simulators, wherein each cabinet-speaker simulator may use one or more FIR filter for its simulation purpose. The result of the cabinet warping combines the tonal characteristics of the initial cabinet-speaker simulators to give the tonal characteristics of a new virtual cabinet-speaker set. In one example, a linear interpolation is imposed with a control parameter known also as a warp parameter W. Assuming, cabinet-speaker simulator


1


is represented as:








H
1



(
z
)


=



a
0

+


a
1



z

-
1



+


a
2



z

-
2



+

+


a
L



z

-
L




=




n
=
0

L








a
n



z

-
n















and cabinet-speaker simulator


2


is represented as:








H
2



(
z
)


=



b
0

+


b
1



z

-
1



+


b
2



z

-
2



+

+


b
L



z

-
L




=




n
=
0

L








b
n



z

-
n















where L is the number of taps that a FIR filter has. With the warp parameter W in control, the interpolation results in:








H




3


(


z


)=


c




0




+c




1




z




−1




+c




2




z




−2




+ . . . +c




L




z




−L








where W is between zero and one, where L=128 for a 128 tap FIR filter, and where




c


0


=Wa


0


+(1−W)b


0






c


1


=Wa


1


+(1−W)b


1






c


L


=Wa


L


+(1−W)b


L


.




The cabinet phase shifting feature allows a cabinet-speaker simulator to be shifted in time with relation to another cabinet-speaker simulator. This feature can be used in combination of the warping mechanism as described above. For example, this process may again use two initial FIR filters with L number of taps and combines them together with both a control parameter W that weights the two respective FIR filter taps and another control parameter P that offsets the taps of one filter with respect to the other. For example, the combined signal can be represented as:







H


(
z
)


=




A
=
0

L








(


Wa
n

+


(

1
-
W

)



b

n
-
p




)



z

-
n














where “p” is the offset of the coeficient set for the cabinet-speaker simulator


1


with respect to that for the cabinet-speaker simulator


2


.




Although the symbol “W” is used above in various formulas, it just represents generically a control parameter imposed in different stages of the signal processing involved and it may have different values in these different signal processing applications. For example, the W for the amplifier models can be adjusted simultaneously with the W for the cabinet models, but they can be controlled separately and have different values.




In addition to the phase shifting feature, a cabinet tuning feature applies pitch-shifting techniques to certain filters' coefficients to “tune” the cabinet-speaker simulator (or the simulated loudspeaker cabinet). That is, by carefully adjusting the coefficients, the simulation result equates to that caused by a change in the sample rate, thereby creating the effects of a new cabinet-speaker. As such, although the sample rate of the system does not change at all, a virtual sample rate is “created.” For example, since high-order FIR filters can be used to implement the simulation of a new loudspeaker cabinet, and assuming a 128 tap FIR filter is used, before the pitch shift, the mathematical representation of the FIR filter is:








H


(


z


)=


a




0




+a




1




z




−N




+a




2




z




−2N




+ . . . +a




127




z




−127N








where N is (1/system sample rate). After the pitch shift, the representation is:








H


(


z


)=


a




0




+a




1




z




−M




+a




2




z




−2M




+ . . . +a




127




z




−127M








where M is (1/virtual sample rate). It is understood that this virtual sample rate is a variable of the system adjustable by a user in order to control the amount of cabinet tuning. In effect, by adjusting this virtual sample rate, the user resizes the cabinet-speaker combination. This cabinet tuning feature may require as few as one initial simulation model.




A refinement of the amplifier warping and cabinet-speaker warping features can be implemented toward a discrete frequency band. For instance, the entire frequency spectrum of the signal can be divided into N number of bands, and each band can have its own amplification and cabinet-speaker warping done separately. The user can select a frequency range of interest within a known model to warp into another by the techniques described above. This is also referred to as amplifier and cabinet frequency band split warping.





FIGS. 5-7

are circuit schematics illustrating an example of the DSP


26


. Implementation in the form of a digital signal processor is useful and cost effective for meeting various signal processing needs. For example, the amplifier simulators with their warp control, or the cabinet-speaker simulators with their warp control, can be fully implemented by programming the DSP


26


. As stated above, components shown in the entire schematic of

FIG. 4

can be implemented by generating appropriate programs for the DSP


26


. Commercially available DSPs made by any manufacturers can be similarly integrated and programmed to achieve the disclosed functions. Furthermore, based on the degree of circuit integration of the DSP, a single or multiple DSP chips may be used. Although a DSP chip is described above as one implementation of the system, the use of the DSP is not mandatory. Any other processing mechanism, hardware or software, that can perform necessary calculations to effect the mathematical manipulations described above can be used instead of the DSP. Moreover, it is fully contemplated that a pure software approach may be taken to achieve all the functions that are necessary for signal processing.




All the programs (not shown) generated for the DSP


26


are formatted in a predetermined manner to be usable by any product design based on the disclosure as described above. In other words, the programs are portable and not exclusive to one product. Therefore, the programs can be shared between users of different products by the use of software and protocols developed for signal processing systems. For example, the Internet can be used as a transport mechanism to facilitate memory storage requirements exchange of these programs by users.





FIGS. 8-11

are sample user interfaces for the system


12


implemented, in the example, as a guitar signal processing device


100


. For example, referring to the display


100


, assuming the guitarist's intention is to incorporate the model of a vintage Tweed amplifier with an American 2×12 cabinet, and the model of a Rectified Amplifier with a British 4×12 cabinet to create a new model (which has its own unique set of coefficients), the following description explains a procedure to create and store such a model.




First, an identifier may be assigned to represent the to-be-created model. The created model can be retrieved repetitively from a memory space of the guitar signal processing device by using the assigned identifier. Since the model is created based on two prior simulation models, the two models must first be selected. On the device


100


as shown in

FIG. 8

, two knobs


102




a


and


102




b


, that are labeled as “Green Amp” and “Green Cabinet” respectively, are marked for constructing and adjusting an amplifier and cabinet combination of a first channel or a first model. Assuming both simulation models for the Tweed amplifier and the American 2×12 cabinet are predefined, by turning the knobs


102




a, b


sequentially, the desired amplifier-cabinet combination can be located. For example, when turning the amplifier knob for searching the Tweed amplifier, the display


104


shows the term “Tweed” when it is found.




Another display


106


shows a numeric identifier corresponding to the Tweed amplifier, in this case, a numeral “6” as shown in FIG.


8


. Similarly, the desired predetermined cabinet model can be found by turning the knob


102




b


. Once the first initial model (the “green” amp/cabinet combination) is selected, the guitarist turns to select another initial model by using another two knobs


108




a


and


108




b


, marked as “Red Amp” and “Red Cabinet” respectively (as shown in FIG.


9


). The same “knob-turning” process proceeds to find the second initial model (the “red” amp/cabinet combination) simulating the Rectified amplifier and the British 4×12 cabinet combination. Once found, as shown in

FIG. 9

, the display


104


and


106


will show corresponding identifiers for the Rectified amplifier and the British cabinet stack. The knob


109


is referred to as a “Warp” knob and provides for user manipulation of the warp control function. By rotating the Warp knob, the two initial models are combined to create a new model. Typically, the initial simulation models for the amplifier-cabinet combinations implement factory default settings for parameters such as the Gain, EQ, and Level parameters. These settings may not necessarily suit the guitarist's personal taste, and may require some further tuning.




As shown in

FIG. 10

, by pressing a status button


110


, the knob set


112


(including the knobs


102


,


108


, and


109


) now functions as an individual control knob for multiple parameters such as gain, bass, mids, treble, and level for the Tweed amplifier. Likewise, by pressing the status button


110


again, the parameters for the Rectified amplifier are now ready for fine tuning. Using the same knob set, cabinet parameters can be adjusted. It is also possible to adjust the cabinet tuning for the simulated American 2×12 and the British 4×12 cabinets. For example, as shown in

FIG. 11

, the status button


110


can be pressed and held until the display


104


shows “CABTUN” indicating that cabinet tuning is available. Then, one of the two knobs


102


may be used to fine tune the American 2×12, and similarly, one of the two knobs


108


may be used to fine tune the British 4×12. Once the cabinet tuning is done, the status button


110


can be pressed one more time to return the device


100


to a performnance mode.




After the first and second prior simulation models are fully programmed, the guitarist can create another model by tuning the Warp knob to a desired location and testing the effects by playing a guitar connected to the guitar signaling device


100


. The newly created model can then be saved to a memory location as an amplifier-cabinet simulation model accessible by the guitar signal processing device


100


(not shown), and indexed by an identifier created by the guitarist.





FIG. 12

illustrates a graphic user interface (GUI) created by musical signal processing software operable with a computer such as a user's personal computer (PC). The function of this software is to turn the PC into an external control for an audio signal processing system. For example, a guitarist can connect his digital guitar to the PC, which is further connected to a speaker set. In

FIG. 12

, a portion of the GUI


110


is a display area


112


identifying all information for both the amplifiers and the cabinets. Two control areas


114




a


and


114




b


represent two models for the amplifiers and their relevant controls, and another two control areas


116




a


and


116




b


represent those for the cabinets. The center portion


118


of the GUI


110


represents a control area functioning similarly as the warp control knob described above. With two amplifier models located at the top and bottom and two cabinet models located on both sides, this center portion


118


becomes a two-dimensional control pane whereas by moving a ball icon


120


in the pane, the control parameters of the amplifiers, as well as the cabinets, are changing accordingly resulting in a “warping” feature. The warping of the amplifiers and the cabinets can be controlled sequentially as well as simultaneously. Once the user finds his desired combination, the setup can be saved in the PC or downloaded to a digital signal processing system as a new model. The new model is then available for the user to send to other receiving devices such as another PC of another user. In effect, a user can share customized model with others.




In summary, a system for digitally creating a new mathematical model of tonal characteristics is provided based on two or more initial mathematical models of tonal characteristics to achieve special musical effects. A first initial mathematical model of tonal characteristics is simulated, followed by a second initial mathematical model of tonal characteristics is also simulated. The creation of a new mathematical model is implemented by interpolating one or more coefficients of the first and second initial mathematical models and by adjusting a control parameter, the control parameter being adjustable in a range between a first value and a second value such that when the control parameter is the first value, the new mathematical model is the first initial mathematical model, and when the control parameter is the second value, the new mathematical model is the second initial mathematical model, and wherein when the control parameter is varied to a point between the first and second values, the new mathematical model represents a corresponding convergence between the first and second models. This system can be used for warping between two initial amplifier simulation models or two cabinet-speaker simulation models to create new models, that produces special musical effects when integrated with the performance of a musical instrument such as an electrical guitar.




In addition, the concept of warping between two prior simulation models is not limited to the applications for simulating the amplifiers or cabinets as described above. It should be well understood by one skilled in the art that any other DSP effects (e.g. reverb, modulation effects, delays, etc.) that can be simulated or represented based on a mathematical model may implement the techniques described in this invention. Provided that there are two prior simulation models available, they can be warped in the same manner as the amplifier warping or cabinet warping to create a new model, thus generating distinct and/or new effects.




The system enjoys numerous benefits. For example, it provides a digital audio signal processing system with simple interface for performing complex sound manipulations and the realistic “touch” and “feel” of real amplifiers and loudspeaker cabinets that guitarists desire. This allows users to customize or create virtual models for amplifiers and loudspeaker cabinets that may not be available on the market, or even possible to build. Thus, the artist's palette of sounds is broadened with infinite possibilities further providing user-unique guitar sound. This also allows users to not have to rely on a sound that the manufacturer of the product suggests. New models can be shared with others via the Internet, web pages, user's groups, etc. These models can then be added to a pool of existing models for amplifiers and loudspeaker cabinets and can then be used to further create newer models.




While various embodiments of the application have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of this invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.



Claims
  • 1. A method for processing a musical signal, comprising:selecting at least two amplification simulation models; selecting at least two cabinet-speaker simulation models; warping between the amplification simulation models; warping between the cabinet-speaker simulation models; and producing one or more generated amplification simulation models and one or more generated cabinet-speaker simulation models.
  • 2. The method of claim 1, wherea first amplification simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second amplification simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated amplification simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated amplification model filter responsive to the at least one generated model filter coefficient value, and further comprising determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and producing the at least one generated amplification simulation model in response to the at least one determined filter coefficient value.
  • 3. The method of claim 2, further comprising determining at least one of the generated model filter coefficient values in response to a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and in response to a received value.
  • 4. The method of claim 3, further comprisingdetermining a warping factor in response to the received value, and combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 5. The method of claim 4, where the warping factor is greater than zero, and the warping factor is less than one.
  • 6. The method of claim 2, where the at least one first model filter and second model filter each comprises at least one of a linear filter, a gain filter, a non-linear filter, and a level filter, and where the at least one generated amplification simulation model comprises a generated model filter comprising at least one of a linear filter, a gain filter, a non-linear filter, and a level filter.
  • 7. The method of claim 1, wherea first cabinet simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second cabinet simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated cabinet simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated cabinet model filter responsive to the at least one generated model filter coefficient value, and further comprising determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and producing the at least one generated cabinet simulation model in response to the at least one determined filter coefficient value.
  • 8. The method of claim 7, further comprising determining at least one of the generated model filter coefficient values in response to a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and in response to a received value.
  • 9. The method of claim 8, further comprisingdetermining a warping factor in response to the received value, and combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 10. The method of claim 9, where the warping factor is greater than zero, and the warping factor is less than one.
  • 11. The method of claim 7, where the at least one first model filter and second model filter each comprises at least one of a linear filter and a non-linear filter, and where the at least one generated cabinet simulation model comprises a generated model filter comprising at least one of a linear filter, and a non-linear filter.
  • 12. The method of claim 11, where the linear filter comprises at least one of a finite impulse response filter, and an infinite impulse response filter.
  • 13. The method of claim 1, where the at least two amplification simulation models are capable of operating over a plurality of frequency bands, and where the at least two cabinet simulation models are capable of operating over the plurality of frequency bands, and further comprisingoperating the amplification simulation models and the cabinet simulation models over at least one of the plurality of frequency bands, warping between the amplification simulation models and cabinet simulation models responsive to a warping factor, and producing one or more generated amplification simulation models and one or more generated cabinet simulation models.
  • 14. The method of claim 13, where the warping factor is a first warping factor, and further comprisingoperating the first and second amplification simulation models and the first and second cabinet simulation models over another of the plurality of frequency bands, warping between the first and second amplification simulation models and the selected first and second cabinet simulation models responsive to a second warping factor, and producing one or more generated amplification simulation models and one or more cabinet simulation models.
  • 15. The method of claim 14 where the first warping factor has a different value than the second warping factor.
  • 16. The method of claim 15 where one of the first warping factor and the second warping factor has a value of zero.
  • 17. The method of claim 15 where one of the first warping factor and the second warping factor has a value of one.
  • 18. The method of claim 1, further comprising:coupling the system with a computer; selecting at least two amplification simulation models at the computer; and selecting at least two cabinet-speaker simulation models at the computer.
  • 19. The method of claim 18, further comprising:warping between the amplification simulation models at the computer; warping between the cabinet-speaker simulation models at the computer; and producing one or more generated amplification simulation models and one or more generated cabinet-speaker simulation models at the computer.
  • 20. The method of claim 19, further comprising storing information regarding at least one of the one or more generated amplification simulation models and the one or more generated cabinet-speaker simulation models at the computer.
  • 21. The method of claim 19, where the computer comprises a user interface, and further comprising warping between the amplification simulation models and warping between the cabinet-speaker simulation models using a control interface.
  • 22. The method of claim 21 where the control interface comprises a two-dimensional control interface, and further comprising:allowing warping between the amplification simulation models along one dimension of the control interface; and allowing warping between the cabinet-speaker simulation models along the other dimension of the control interface.
  • 23. A method for processing a musical signal, comprising:warping between a first amplification simulation model and a second amplification simulation model; and producing a generated amplification simulation model.
  • 24. The method of claim 23, wherea first amplification simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second amplification simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated amplification simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated amplification model filter responsive to the at least one generated model filter coefficient value, and further comprising determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and producing the at least one generated amplification simulation model in response to the at least one determined filter coefficient value.
  • 25. The method of claim 24, further comprising determining at least one of the generated model filter coefficient values in response to a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and in response to a received value.
  • 26. The method of claim 25, further comprisingdetermining a warping factor in response to the received value, and combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 27. The method of claim 26, where the warping factor is greater than zero, and the warping factor is less than one.
  • 28. The method of claim 24 further comprising storing the at least one selected generated model filter coefficient value in a memory.
  • 29. The method of claim 28, further comprising:storing the at least one first model filter coefficient value and the at least one second model filter coefficient value in the memory; retrieving at least one first model filter coefficient value from the memory, and retrieving at least one second model filter coefficient value from the memory.
  • 30. The method of claim 24, where the at least one first model filter and second model filter each comprises at least one of a linear filter, a gain filter, a non-linear filter, and a level filter, andthe at least one generated amplification simulation model comprises a generated model filter comprising at least one of a linear filter, a gain filter, a non-linear filter, and a level filter.
  • 31. The method of claim 24 where the at least one first model filter includes a biquad filter represented as H1⁢(z)=ax0+ax1⁢z-1+ax2⁢z-21+bx1⁢z-1+bx2⁢z-2where the at least one second model filter comprises a biquad filter represented as H2⁡(z)=ay0+ay1⁢z-1+ay2⁢z-21+by1⁢z-1+by2⁢z-2and where the at least one generated amplification simulation model comprises a biquad filter represented as Hw⁡(z)=∑n=02⁢ ⁢((l-W)⁢axn+Wayn)⁢z-n1+∑n=12⁢ ⁢((l-W)⁢bxn+Wbyn)⁢z-n
  • 32. The method of claim 31, further comprising selecting at least the warping parameter W for the at least one generated amplification simulation model.
  • 33. The method of claim 24, where the at least one first model filter comprises a cubic rational bell-spline filter represented asS1(x)=a3x3+a2x2+a1x+a0 and where the at least one second model filter comprises a cubic rational bell-spline filter represented asS2(x)=b3x3+b2x2+b1x+b0 and where the at least one generated amplification simulation model comprises a cubic rational bell-spline filter represented asS3(x)=c3x3+c2x2+c1x+c0, and where cn=∑n=03⁢ ⁢(1-W)⁢an+Wbnand where W is a warping factor.
  • 34. The method of claim 33 further comprising selecting at least the warping parameter W for the at least one generated amplification simulation model.
  • 35. The method of claim 24, where the first amplification simulation model comprises at least a first gain AGdB, and the second amplification simulation model comprises at least a second gain BGdB, andwhere the generated amplification simulation model using at least a third gain CGdB as a linear interpolation on a dB scale, represented as CGdB=(1−W)AGdB+WBGdB  where W is a warping factor.
  • 36. The method of claim 35, further comprising selecting at least the warping parameter W for the at least one generated amplification simulation model.
  • 37. The method of claim 24, where the first amplification simulation model comprises at least a first level filtering factor represented as ALdB, and the second amplification simulation model comprises at least a second level filtering factor represented as BLdB, andthe generated amplification simulation model comprises a third level filtering factor CLdB as a linear interpolation on a dB scale, represented as CLdB=(1−W)ALdB+WBLdB  where W is a warping factor.
  • 38. The method of claim 37, further comprising selecting at least the warping parameter W for the at least one generated amplification simulation model.
  • 39. The method of claim 23, where the generated amplification simulation model simulates a guitar amplifier.
  • 40. The method of claim 23, where the first amplification simulation model and the second amplification simulation model operate across a frequency band N, further comprisingproducing a generated amplification simulation model to affect only a sub-frequency band of the frequency band N.
  • 41. The method of claim 23, where the at least two amplification simulation models are capable of operating over a plurality of frequency bands, and further comprisingoperating the amplification simulation models over at least one of the plurality of frequency bands, warping between the amplification simulation models responsive to a warping factor, and producing one or more generated amplification simulation models.
  • 42. The method of claim 41, where the warping factor is a first warping factor, and further comprisingoperating the first and second amplification simulation models over another of the plurality of frequency bands, warping between the first and second amplification simulation models responsive to a second warping factor, and producing one or more generated amplification simulation models.
  • 43. The method of claim 42 where the first warping factor has a different value than the second warping factor.
  • 44. The method of claim 43 where one of the first warping factor and the second warping factor has a value of zero.
  • 45. The method of claim 43 where one of the first warping factor and the second warping factor has a value of one.
  • 46. The method of claim 23, further comprising:coupling the system with a computer; and selecting at least two amplification simulation models at the computer.
  • 47. The method of claim 46, further comprising:warping between the amplification simulation models at the computer; and producing at least one generated amplification simulation at the computer.
  • 48. The method of claim 47 further comprising storing information regarding the one or more generated amplification simulation models at the computer.
  • 49. A method for processing a musical signal, comprising:warping between a first cabinet simulation model and a second cabinet simulation model; and producing a generated cabinet simulation model.
  • 50. The method of claim 49, wherea first cabinet simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second cabinet simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated cabinet simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated cabinet model filter responsive to the at least one generated model filter coefficient value, and further comprising determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and producing the at least one generated cabinet simulation model in response to the at least one determined filter coefficient value.
  • 51. The method of claim 50, further comprising determining at least one of the generated model filter coefficient values in response to a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and in response to a received value.
  • 52. The method of claim 51, further comprisingdetermining a warping factor in response to the received value, and combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 53. The method of claim 52, where the warping factor is greater than zero, and the warping factor is less than one.
  • 54. The method of claim 50 further comprising storing the at least one selected generated model filter coefficient value in a memory.
  • 55. The method of claim 54, further comprising:storing the at least one first model filter coefficient value and the at least one second model filter coefficient value in the memory; retrieving at least one first model filter coefficient value from the memory, and retrieving at least one second model filter coefficient value from the memory.
  • 56. The method of claim 49, where the at least one first model filter and second model filter each comprises at least one of a linear filter and a non-linear filter, and where the at least one generated cabinet simulation model comprises a generated model filter comprising at least one of a linear filter, and a non-linear filter.
  • 57. The method of claim 56, where the linear filter comprises at least one of a finite impulse response filter, and an infinite impulse response filter.
  • 58. The method of claim 50 where the at least one first model filter comprises a finite impulse response filter represented as H1⁡(z)=a0+a1z-1⁢a2⁢z-2+…+aLZ-L=∑n=0L⁢ ⁢an⁢z-nand the at least one second model filter comprises a finite impulse response filter represented as H2⁡(z)=b0+b1⁢z-1⁢b2⁢z-2+…+bLZ-L=∑n=0L⁢ ⁢bn⁢z-nand the at least one generated cabinet simulation model comprises a finite impulse response filter represented asH3(z)=c0+c1z−1c2z−2+ . . . +CLZ−L and wherec0=Wa0+(1−W)b0 c1=Wa1+(1−W)b1, and CL=WaL+(1−W)bL, and where W is a warping factor, and L is the number of taps for the finite impulse response filter.
  • 59. The method of claim 58 further comprising selecting at least the warping parameter W for the at least one generated cabinet simulation model.
  • 60. The method of claim 50 where the first cabinet simulation model comprises at least a finite impulse response filter affecting a cabinet phase for the first cabinet simulation model represented as H1⁡(z)=a0+a1⁢z-1⁢a2⁢z-2+…+aLZ-L=∑n=0L⁢ ⁢an⁢z-nand the second cabinet simulation model comprises at least a finite impulse response filter affecting a cabinet phase for the second cabinet simulation model filter represented as H2⁡(z)=b0+b1⁢z-1⁢b2⁢z-2+…+bLZ-L=∑n=0L⁢ ⁢bn⁢z-nand the generated cabinet simulation model comprises at least a finite impulse response filter affecting a cabinet phase for the generated cabinet simulation model filter represented as H⁡(z)=∑A=0L⁢ ⁢(Wan+(l-W)⁢bn-p)⁢z-nwhere W is a warping parameter for the generated cabinet model generator, L is the number of taps for the finite impulse response filter, and p is a control parameter for offsetting the filter taps of the finite impulse response filter of the first cabinet simulation model with respect to the finite impulse response filter of the second cabinet simulation model.
  • 61. The method of claim 60, further comprising selecting at least one of the warping parameter W and the control parameter p used in producing the generated cabinet simulation model.
  • 62. The method of claim 50, further comprising simulating a cabinet simulation model responsive to a virtual sampling rate.
  • 63. The method of claim 62, where the cabinet simulation model comprises at least a finite impulse response filter represented asH(z)=a0+a1z−m+a2z−2m+ . . . +aLz−LM, whereM is 1/virtual sampling rate, and L is a number of taps in the finite impulse response filter.
  • 64. The method of claim 62, further comprisingselecting a sampling value, and determining the virtual sampling rate responsive to the selected sampling value.
  • 65. The method of claim 49, where the first cabinet simulation model and the second cabinet simulation model operate across a frequency band N, further comprisingproducing a generated cabinet simulation model to affect only a sub-frequency band of the frequency band N.
  • 66. The method of claim 49, where the at least two cabinet simulation models are capable of operating over a plurality of frequency bands, and further comprisingoperating the cabinet simulation models over at least one of the plurality of frequency bands, warping between the cabinet simulation models responsive to a warping factor, and producing one or more generated cabinet simulation models.
  • 67. The method of claim 66, where the warping factor is a first warping factor, and further comprisingoperating the first and second cabinet simulation models over another of the plurality of frequency bands, warping between the first and second cabinet simulation models responsive to a second warping factor, and producing one or more generated cabinet simulation models.
  • 68. The method of claim 67, where the first warping factor has a different value than the second warping factor.
  • 69. The method of claim 68, where one of the first warping factor and the second warping factor has a value of zero.
  • 70. The method of claim 68, where one of the first warping factor and the second warping factor has a value of one.
  • 71. The method of claim 49, further comprising:coupling the system with a computer; and selecting at least two cabinet simulation models at the computer.
  • 72. The method of claim 71, further comprising:warping between the cabinet simulation models at the computer; and producing at least one generated cabinet simulation at the computer.
  • 73. The method of claim 72, further comprising storing information regarding the one or more generated cabinet simulation models at the computer.
  • 74. A system for processing a musical signal, comprising:a first amplification simulation model; a second amplification simulation model; and an amplification model generator coupled with the first and second amplification simulation models, the amplification model generator capable of warping between the first and second amplification simulation models, and the amplification model generator capable of producing a generated amplification simulation model.
  • 75. The system of claim 74, wherea first amplification simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second amplification simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated amplification simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated amplification model filter responsive to the at least one generated model filter coefficient value, and further comprising: a selector coupled with the amplification model generator; where the amplification model generator utilizes a selector value from the selector in the determination of at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, where the at least one determined filter coefficient value is used to produce the at least one generated amplification simulation model.
  • 76. The system of claim 75, where the amplification model generator determines at least one of the generated model filter coefficient values responsive to the selected value as a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values.
  • 77. The system of claim 76, where the amplification model generatordetermines a warping factor responsive to the selector value, and determines at least one of the generated model filter coefficient values by combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 78. The system of claim 77, where the warping factor is determined to have a value greater than zero and less than one.
  • 79. The system of claim 75, where the at least one first model filter, second model filter and generated model filter each comprises at least one of a linear filter, a gain filter, a non-linear filter, and a level filter.
  • 80. The system of claim 79, where the linear filter comprises a multi-level biquad filter.
  • 81. The system of claim 79, where the non-linear filter comprises a cubic rational bell-spline filter.
  • 82. The system of claim 75, further comprising a memory coupled with the amplification model generator, where the at least one determined generated model filter coefficient values is stored in the memory.
  • 83. The system of claim 82, where the first and second amplification simulation models are further coupled to the memory, and the at least one first model filter coefficient values is stored in the memory for use by the first amplification simulation model, and the at least one second model filter coefficient values are stored in the memory for use by the second amplification simulation model.
  • 84. The system of claim 74, where the at least one generated amplification simulation model simulates a guitar amplifier.
  • 85. The system of claim 74, where the first and second amplification simulation models are capable of operating across over a plurality of frequency bands, andthe amplification model generator produces a generated amplification simulation model by warping between the first and second amplification simulation model for at least one of the plurality of frequency bands, responsive to a warping factor.
  • 86. The system of claim 85, where the warping factor is a first warping factor, andthe amplification model generator produces a generated amplification simulation model by warping between the first and second amplification simulation models for at least another of the plurality of frequency bands responsive to a second warping factor.
  • 87. The system of claim 86, where the first warping factor has a different value than the second warping factor.
  • 88. The system of claim 87, where one of the first and second warping factors has a value of zero.
  • 89. The system of claim 87, where one of the first and second warping factors has a value of one.
  • 90. The system of claim 75, where the first amplification simulation model and the second amplification simulation model operate across a frequency band N, and the at least one determined generated model filter coefficient value causes the generated amplification simulation model to affect only a sub-frequency band of the frequency band N.
  • 91. The system of claim 74, further comprising a computer coupled with the system, and capable of selecting at least two amplification simulation models.
  • 92. The system of claim 91, where the computer is further capable of warping between the first and second amplification simulation models and producing the one or more generated amplification simulation models.
  • 93. The system method of claim 92, where the computer comprises a memory for storing information regarding at least one of the one or more generated amplification simulation models.
  • 94. A digital signal processor for processing a musical signal, comprising:a first amplification simulation modeler comprising at least one first model filter having at least one first model filter coefficient value, the at least one first model filter responsive to the at least one first model filter coefficient value; a second amplification simulation modeler comprising at least one second model filter having at least one second model filter coefficient value, the at least one second model filter responsive to the at least one second model filter coefficient value; and an amplification model generator coupled with the first and second amplification simulation models and capable of warping between the first and second amplification simulation models to produce at least one generated amplification simulation model comprising at least one generated model filter having at least one generated model filter coefficient value, the at least one generated model filter responsive to the at least one generated model filter coefficient value, the at least generated model filter coefficient determined responsive to the first model filter coefficient value and the second model filter coefficient value.
  • 95. The digital signal processor of claim 94, further comprising a selector coupled to the amplification model generator allowing selection of a selector value used in the determination of the at least one generated model filter coefficient value.
  • 96. The digital signal processor of claim 95, where the at least one first model filter, second model filter and generated model filter each comprises at least one of a linear filter, a gain filter, a non-linear filter, and a level filter.
  • 97. The digital signal processor of claim 96, where the linear filter comprises a multi-level biquad filter.
  • 98. The digital signal processor of claim 96, where the non-linear filter comprises a cubic rational bell-spline filter.
  • 99. The digital signal processor of claim 94, further comprising a memory coupled with the amplification model generator, where the at least one determined generated model filter coefficient values is stored in the memory.
  • 100. The digital signal processor of claim 99, where the at least one first model filter coefficient values and the at least one second model filter coefficient values are stored in the memory.
  • 101. The digital signal processor of claim 94, where the first amplification simulation model comprises at least a biquad filter represented as H1⁡(z)=ax0+ax1⁢z-1+ax2⁢z-21+bx1⁢z-1+bx2⁢z-2and the second amplification simulation model comprises at least a biquad filter H2⁡(z)=ay0+ay1⁢z-1+ay2⁢z-21+by1⁢z-1+by2⁢z-2represented asand the generated amplification model generator models the generated amplification simulation model using at least a biquad filter represented as HW⁡(z)=∑n=02⁢ ⁢((1-W)⁢axn+Wayn)⁢z-n1+∑n=12⁢ ⁢((1-W)⁢bxn+Wbyn)⁢z-nwhere W is a warping factor.
  • 102. The digital signal processor of claim 101, further comprising a selector, for allowing selection of at least the warping parameter W for the generated amplification model generator used by the generated amplification model generator in producing the generated amplification simulation model.
  • 103. The digital signal processor of claim 94, where the first amplification simulation model comprises at least a cubic rational bell-spline filter represented asS1(x)=a3x3+a2x2+a1x+a0 and the second amplification simulation model comprises at least a cubic rational bell-spline filter represented asS2(x)=b3x3+b2x2+b1x+b0 and where the generated amplification model generator models the generated amplification simulation model comprising at least a cubic rational bell-spline filter represented asS3(x)=c3x3+c2x2+c1x+c0 where cn=∑n=03⁢ ⁢(1-W)⁢an+Wbnand where W is a warping factor.
  • 104. The digital signal processor of claim 103, further comprising a selector, for allowing selection of at least the warping parameter W for the generated amplification model generator used by the generated amplification model generator in producing the generated amplification simulation model.
  • 105. The digital signal processor of claim 94, where the first amplification simulation model comprises at least a gain AGdB, and the second amplification simulation model comprises at least a gain BGdB, andthe generated amplification model generator models the generated amplification simulation model comprising at least a gain CGdB as a linear interpolation on a dB scale, represented as CGdB=(1−W)AGdB+WBGdB where W is a warping factor.
  • 106. The digital signal processor of claim 105, further comprising a selector, for allowing selection of at least the warping parameter W for the generated amplification model generator used by the generated amplification model generator in producing the generated amplification simulation model.
  • 107. The digital signal processor of claim 94, where the first amplification simulation model comprises at least a level filtering factor represented as ALdB, and the second amplification simulation model comprises at least a level filtering factor represented as BLdB, andthe generated amplification model generator models the generated amplification simulation model comprising at least a level filtering factor CLdB as a linear interpolation on a dB scale, represented as CLdB=(1−W)ALdB+WBLdB where W is a warping factor.
  • 108. The digital signal processor of claim 107, further comprising a selector, for allowing selection of at least the warping parameter W for the generated amplification model generator used by the generated amplification model generator in producing the generated amplification simulation model.
  • 109. The digital signal processor of claim 94, where the at least one generated amplification simulation model simulates a guitar amplifier.
  • 110. A system for processing a musical signal, comprising:a first cabinet simulation model; a second cabinet simulation model; and a cabinet model generator coupled with the first and second cabinet simulation models, the cabinet model generator capable of warping between the first and second cabinet simulation models, and the cabinet model generator capable of producing a generated cabinet simulation model.
  • 111. The system of claim 110, wherea first cabinet simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second cabinet simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated cabinet simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated cabinet model filter responsive to the at least one generated model filter coefficient value, and further comprising: a selector coupled with the cabinet model generator; where the cabinet model generator utilizes a selector value from the selector in the determination of at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, where the at least one determined filter coefficient value is used to produce the at least one generated cabinet simulation model.
  • 112. The system of claim 111, where the cabinet model generator determines at least one of the generated model filter coefficient values responsive to the selected value as a combination of at least one of the first model filter coefficient values and at least one of the second model filter coefficient values.
  • 113. The system of claim 112, where the cabinet model generatordetermines a warping factor responsive to the selector value, and determines at least one of the generated model filter coefficient values by combining at least one of the first model filter coefficient values and at least one of the second model filter coefficient values responsive to the warping factor.
  • 114. The system of claim 113, where the warping factor is determined to have a value greater than zero and less than one.
  • 115. The system of claim 111, where the at least one first model filter, the second model filter and the generated model filter each comprises at least one of a linear filter and a non-linear filter.
  • 116. The system of claim 115, where the linear filter comprises at least one of a finite impulse response filter, and an infinite impulse response filter.
  • 117. The system of claim 111, where the cabinet model generator utilizes the at least one determined filter coefficient value to adjust a phase of the generated cabinet simulation model with respect to the phase of the first cabinet simulation model and the phase of the second cabinet simulation model.
  • 118. The system of claim 111, where the first cabinet simulation model and the second cabinet simulation model operate across a frequency band N, and the at least one determined filter coefficient value causes the cabinet model generator to affect a sub-frequency band of the frequency band N.
  • 119. The system of claim 111, further comprising a memory coupled with the cabinet model generator, where the at least one determined generated model filter coefficient values is stored in the memory.
  • 120. The system of claim 119, where the first and second cabinet simulation models are further coupled with the memory, and the at least one first model filter coefficient values is stored in the memory for use by the first cabinet simulation model, and the at least one second model filter coefficient values are stored in the memory for use by the second cabinet simulation model.
  • 121. The system of claim 110, where the first and second cabinet simulation models are capable of operating over a plurality of frequency bands, andthe cabinet model generator produces a generated cabinet simulation model by warping between the first and second cabinet simulation model for at least one of the plurality of frequency bands, responsive to a warping factor.
  • 122. The system of claim 121, where the warping factor is a first warping factor, andthe cabinet model generator produces a generated cabinet simulation model by warping between the first and second cabinet simulation models for at least another of the plurality of frequency bands responsive to a second warping factor.
  • 123. The system of claim 122, where the first warping factor has a different value than the second warping factor.
  • 124. The system of claim 123, where one of the first and second warping factors has a value of zero.
  • 125. The system of claim 123, where one of the first and second warping factors has a value of one.
  • 126. The system of claim 110, further comprising a computer coupled with the system, and capable of selecting at least two cabinet simulation models.
  • 127. The system of claim 111, where the computer is further capable of warping between the first and second cabinet simulation models and producing the one or more generated cabinet simulation models.
  • 128. The system method of claim 127, where the computer comprises a memory for storing information regarding at least one of the one or more generated cabinet simulation models.
  • 129. A digital signal processor for processing a musical signal, comprising:a first cabinet simulation modeler comprising at least one first model filter having at least one first model filter coefficient value, the at least one first model filter responsive to the at least one first model filter coefficient value; a second cabinet simulation modeler comprising at least one second model filter having at least one second model filter coefficient value, the at least one second model filter responsive to the at least one second model filter coefficient value; and a cabinet model generator coupled with the first and second cabinet simulation models and capable of warping between the first and second cabinet simulation models to produce at least one generated cabinet simulation model comprising at least one generated model filter having at least one generated model filter coefficient value, the at least one generated model filter responsive to the at least one generated model filter coefficient value, the at least generated model filter coefficient determined responsive to the first model filter coefficient value and the second model filter coefficient value.
  • 130. The digital signal processor of claim 129, further comprising a selector coupled to the cabinet model generator allowing selection of a selector value used in the determination of the at least one generated model filter coefficient value.
  • 131. The digital signal processor of claim 130, where the at least one first model filter, second model filter, and generated model filter each includes at least one of a linear filter and a non-linear filter.
  • 132. The digital signal processor of claim 131, where the linear filter includes at least one of a finite impulse response filter and an infinite impulse response filter.
  • 133. The digital signal processor of claim 129, further comprising a memory coupled with the cabinet model generator, where the at least one determined generated model filter coefficient values is stored in the memory.
  • 134. The digital signal processor of claim 133, where the first and second modelers are further coupled with the memory, and the at least one first model filter coefficient value and the at least one second model filter coefficient value are stored in the memory.
  • 135. The digital signal processor of claim 129, where the first cabinet simulation model comprises at least a finite impulse response filter represented as H1⁡(z)=a0+a1⁢z-1⁢a2⁢z-2+…+aLZ-L=∑n=0L⁢ ⁢an⁢z-nand the second cabinet simulation model comprises at least a finite impulse response filter represented as H2⁡(z)=b0+b1⁢z-1⁢b2⁢z-2+…+bLZ-L=∑n=0L⁢ ⁢bn⁢z-nand the generated cabinet model generator models the generated cabinet simulation model using at least a finite impulse response filter represented asH3(z)=c0+c1z−1c2z−2+ . . . +cLZ−L wherec0=Wa0+(1−W)b0 c1=Wa1+(1−W)b1, and cL=WaL+(1−W)bL, and where W is a warping factor, and “L” is the number of taps for the finite impulse response filter.
  • 136. The digital signal processor of claim 135, further comprising a selector, for allowing selection of at least the warping parameter W for the generated cabinet model generator used by the generated cabinet model generator in producing the generated cabinet simulation model.
  • 137. The digital signal processor of claim 129, where the first modeler simulates the first cabinet simulation model using at least a finite impulse response filter affecting a cabinet phase for the first cabinet simulation model represented as H1⁡(z)=a0+a1⁢z-1⁢a2⁢z-2+…+aLZ-L=∑n=0L⁢ ⁢an⁢z-nand the second modeler simulates the second cabinet simulation model using at least a finite impulse response filter affecting a cabinet phase for the second cabinet simulation model filter represented as H2⁡(z)=b0+b1⁢z-1⁢b2⁢z-2+…+bLZ-L=∑n=0L⁢ ⁢bn⁢z-nthe generated cabinet simulation model comprises at least a finite impulse response filter affecting a cabinet phase for the generated cabinet simulation model filter represented as H⁡(z)=∑A=0L⁢ ⁢(Wan+(1-W)⁢bn-p)⁢z-nwhere W is a warping parameter for the generated cabinet model generator, L is the number of taps for the finite impulse response filter, and p is a control parameter for offsetting the filter taps of the finite impulse response filter of the first cabinet simulation model with respect to the finite impulse response filter of the second cabinet simulation model.
  • 138. The digital signal processor of claim 137, further comprising at least one selector, for allowing selection of at least one of the warping parameter W and the control parameter p for the generated cabinet model generator, used by the generated cabinet model generator in producing the generated cabinet simulation model.
  • 139. The digital signal processor of claim 129, further comprising a third cabinet simulation model responsive to a virtual sampling rate.
  • 140. The digital signal processor of claim 139, where the third cabinet simulation model comprises at least a finite impulse response filter represented asH(z)=a0+a1z−m+a2z−2m+ . . . +aLz−LM, whereM is 1/the virtual sampling rate, and L is a number of taps for the finite impulse response filter.
  • 141. The digital signal processor of claim 139, further comprising a selector coupled with the third cabinet modeler allowing selection of a selector value used in the determination of the virtual sampling rate value.
  • 142. A storage media for use on a processor of an audio system, comprising:a first memory portion programmed for allowing selection of a first amplification simulation model, allowing selection of a second amplification simulation model, warping between the first and second amplification simulation models, and producing a generated amplification simulation model responsive to the warping.
  • 143. The storage media of claim 142, wherea first amplification simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second amplification simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated amplification simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated amplification model filter responsive to the at least one generated model filter coefficient value, and further comprising the first memory portion programmed for determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and for producing the at least one generated amplification simulation model in response to the at least one determined filter coefficient value.
  • 144. The storage media of claim 143, further comprising a second memory portion for storing the at least one determined filter coefficient value, where the first memory portion is further programmed for allowing the storing of the at least one determined filter coefficient value in the second memory portion.
  • 145. The storage media of claim 143, where the second memory portion includes the at least one first model filter coefficient value and the at least one second model filter coefficient value, and the first memory portion is further programmed for selection of the first amplification simulation model by using the at least one first model filter coefficient value, and selection of the second amplification simulation model by using the at least one second model filter coefficient value.
  • 146. A storage media for use on a processor of an audio system, comprising:a first memory portion programmed for allowing selection of a first cabinet simulation model, allowing selection of a second cabinet simulation model, warping between the first and second cabinet simulation models, and producing a generated cabinet simulation model responsive to the warping.
  • 147. The storage media of claim 146, wherea first cabinet simulation model has at least one first model filter and at least one first model filter coefficient value, the first model filter responsive to the at least one first model filter coefficient, a second cabinet simulation model has at least one second model filter and at least one second model filter coefficient value, the second model filter responsive to the at least one second model filter coefficient value, and the generated cabinet simulation model has at least one generated model filter and at least one generated model filter coefficient value, the generated cabinet model filter responsive to the at least one generated model filter coefficient value, and further comprising the first memory portion programmed for determining at least one of the generated model filter coefficient values responsive to at least one of the first model filter coefficient values and at least one of the second model filter coefficient values, and for producing the at least one generated cabinet simulation model in response to the at least one determined filter coefficient value.
  • 148. The storage media of claim 147, further comprising a second memory portion for storing the at least one determined filter coefficient value, where the first memory portion is further programmed for allowing the storing of the at least one determined filter coefficient value in the second memory portion.
  • 149. The storage media of claim 147, where the second memory portion includes the at least one first model filter coefficient value and the at least one second model filter coefficient value, and the first memory portion is further programmed for selection of the first cabinet simulation model by using the at least one first model filter coefficient value, and selection of the second cabinet simulation model by using the at least one second model filter coefficient value.
  • 150. A computer for processing a musical signal, comprising:a first amplification simulation model; a second amplification simulation model; and an amplification model generator coupled with the first and second amplification simulation models, the amplification model generator capable of warping between the first and second amplification simulation models, and the amplification model generator capable of producing a generated amplification simulation model.
  • 151. A computer for processing a musical signal, comprising:a first cabinet simulation model; a second cabinet simulation model; and a cabinet model generator coupled with the first and second cabinet simulation models, the cabinet model generator capable of warping between the first and second cabinet simulation models, and the cabinet model generator capable of producing a generated cabinet simulation model.
1. CROSS REFERENCE

This application claims the benefit of U.S. Provisional Patent Application Serial No. 60/260,048, filed on Jan. 5, 2001, and is incorporated by reference.

US Referenced Citations (22)
Number Name Date Kind
4079199 Patronis, Jr. Mar 1978 A
4238746 Mc Cool et al. Dec 1980 A
4602337 Cox Jul 1986 A
4658426 Chabries et al. Apr 1987 A
5029217 Chabries et al. Jul 1991 A
5046101 Lovejoy Sep 1991 A
5245665 Lewis et al. Sep 1993 A
5345467 Lomp et al. Sep 1994 A
5640414 Blakeney, II et al. Jun 1997 A
5649015 Paddock et al. Jul 1997 A
5663517 Oppenheim Sep 1997 A
5698807 Massie et al. Dec 1997 A
5744742 Lindemann et al. Apr 1998 A
5789689 Doidic et al. Aug 1998 A
5929795 Wang Jul 1999 A
5937019 Padovani Aug 1999 A
5977470 Suda Nov 1999 A
5999631 Porayath et al. Dec 1999 A
6018662 Periyalwar et al. Jan 2000 A
6049716 Jung Apr 2000 A
6073021 Kumar et al. Jun 2000 A
6304846 George et al. Oct 2001 B1
Provisional Applications (1)
Number Date Country
60/260048 Jan 2001 US