object AmpComp extends ProductReader[AmpComp] with Serializable
A UGen that produces a psychoacoustic amplitude compensation factor for a given frequency.
Implements the formula: (root / freq).pow(exp)
Higher frequencies are normally perceived as louder, therefore AmpComp
outputs lower values for them. For example, with default parameters, the pitch
C4 (frequency 262 Hz) produces the base factor of 1.0, whereas a pitch one
octave up, C5 (or 523 Hz) produces a factor of 0.793719 (an attenuation of -2
dB).
An alternative is AmpCompA
that better models the bell-shaped equal loudness
contours of the hearing system. Especially note that the output of this UGen can
become very high for frequencies much lower than the root
parameter.
Examples
// activate with mouse button play { val freq = MouseX.kr(300, 15000, 1) val mod = freq * SinOsc.ar(MouseY.kr(3, 200, 1)).mulAdd(0.5, 1) val corr = AmpComp.ar(mod, 300) * 2 val amp = Select.ar(MouseButton.kr(lag = 0), Seq(DC.ar(1), corr)) SinOsc.ar(mod) * 0.1 * amp }
- See also
- Alphabetic
- By Inheritance
- AmpComp
- Serializable
- ProductReader
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def ar(freq: GE = 261.626f, root: GE = 261.626f, expon: GE = 0.3333f): AmpComp
- freq
the frequency in Hertz for which to determine the compensation factor
- root
the base frequency corresponding to a compensation factor of 1.0
- expon
the exponent determines how steep the compensation curve decreases for increasing frequencies. In general, the louder a signal is played, the shallower the equal loudness contours become.
- def ar: AmpComp
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def ir(freq: GE = 261.626f, root: GE = 261.626f, expon: GE = 0.3333f): AmpComp
- freq
the frequency in Hertz for which to determine the compensation factor
- root
the base frequency corresponding to a compensation factor of 1.0
- expon
the exponent determines how steep the compensation curve decreases for increasing frequencies. In general, the louder a signal is played, the shallower the equal loudness contours become.
- def ir: AmpComp
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def kr(freq: GE = 261.626f, root: GE = 261.626f, expon: GE = 0.3333f): AmpComp
- freq
the frequency in Hertz for which to determine the compensation factor
- root
the base frequency corresponding to a compensation factor of 1.0
- expon
the exponent determines how steep the compensation curve decreases for increasing frequencies. In general, the louder a signal is played, the shallower the equal loudness contours become.
- def kr: AmpComp
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def read(in: RefMapIn, key: String, arity: Int): AmpComp
- Definition Classes
- AmpComp → ProductReader
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated