Struct oddio::Reinhard[][src]

pub struct Reinhard<T>(_);

Smoothly maps a signal of any range into (-1, 1)

For each input sample x, outputs x / (1 + |x|).

When many signals are combined with a Mixer or Spatial, or when spatial signals are very near by, audio can get arbitrarily loud. Because surprisingly loud audio can be disruptive and even damaging, it can be useful to limit the output range, but simple clamping introduces audible artifacts.

Implementations

impl<T> Reinhard<T>[src]

pub fn new(signal: T) -> Self[src]

Apply the Reinhard operator to signal

Trait Implementations

impl<T> Filter for Reinhard<T>[src]

type Inner = T

Type of signal transformed by this filter

impl<T: Signal> Signal for Reinhard<T> where
    T::Frame: Frame
[src]

type Frame = T::Frame

Type of frames yielded by sample, e.g. [Sample; 2] for stereo

Auto Trait Implementations

impl<T> RefUnwindSafe for Reinhard<T> where
    T: RefUnwindSafe
[src]

impl<T> Send for Reinhard<T> where
    T: Send
[src]

impl<T> Sync for Reinhard<T> where
    T: Sync
[src]

impl<T> Unpin for Reinhard<T> where
    T: Unpin
[src]

impl<T> UnwindSafe for Reinhard<T> where
    T: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.