SpecShape

Enum SpecShape 

Source
pub enum SpecShape {
    Centroid,
    Spread,
    Skewness,
    Kurtosis,
    Slope,
    Decrease,
    Rolloff,
}
Expand description

Spectral shape descriptor

The following descriptors are described in:

Geoffroy Peeters, A large set of audio features for sound description (similarity and classification) in the CUIDADO project, CUIDADO I.S.T. Project Report 2004 (pdf)

Variants§

§

Centroid

Spectral centroid

The spectral centroid represents the barycenter of the spectrum.

Note: This function returns the result in bin. To get the spectral centroid in Hz, bintofreq() should be used.

§

Spread

Spectral spread

The spectral spread is the variance of the spectral distribution around its centroid.

See also Standard deviation on Wikipedia.

§

Skewness

Spectral skewness

Similarly, the skewness is computed from the third order moment of the spectrum. A negative skewness indicates more energy on the lower part of the spectrum. A positive skewness indicates more energy on the high frequency of the spectrum.

See also Skewness on Wikipedia.

§

Kurtosis

Spectral kurtosis

The kurtosis is a measure of the flatness of the spectrum, computed from the fourth order moment.

See also Kurtosis on Wikipedia.

§

Slope

Spectral slope

The spectral slope represents decreasing rate of the spectral amplitude, computed using a linear regression.

§

Decrease

Spectral decrease

The spectral decrease is another representation of the decreasing rate, based on perceptual criteria.

§

Rolloff

Spectral roll-off

This function returns the bin number below which 95% of the spectrum energy is found.

Trait Implementations§

Source§

impl AsNativeStr for SpecShape

Source§

fn as_native_str(&self) -> &'static str

Implementations should return strings ended with ‘\0’ (for ex.: "energy\0")
Source§

fn as_native_cstr(&self) -> *const c_char

Get constant as null-terminated C-string
Source§

fn as_rust_str(&self) -> &'static str

Get constant as rust string slice
Source§

impl AsRef<str> for SpecShape

Source§

fn as_ref(&self) -> &str

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Clone for SpecShape

Source§

fn clone(&self) -> SpecShape

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SpecShape

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for SpecShape

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> FmtResult

Formats the value using the given formatter. Read more
Source§

impl FromStr for SpecShape

Source§

type Err = Error

The associated error which can be returned from parsing.
Source§

fn from_str(src: &str) -> Result<Self>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for SpecShape

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for SpecShape

Source§

fn eq(&self, other: &SpecShape) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for SpecShape

Source§

impl Eq for SpecShape

Source§

impl SpecMethod for SpecShape

Source§

impl StructuralPartialEq for SpecShape

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.