Skip to main content

AudioFeatures

Struct AudioFeatures 

Source
pub struct AudioFeatures {
Show 18 fields pub acousticness: f32, pub analysis_url: String, pub danceability: f32, pub duration_ms: u32, pub energy: f32, pub id: String, pub instrumentalness: f32, pub key: i32, pub liveness: f32, pub loudness: f32, pub mode: Mode, pub speechiness: f32, pub tempo: f32, pub time_signature: u32, pub track_href: String, pub type: String, pub uri: String, pub valence: f32,
}
Expand description

Audio features for a track.

Fields§

§acousticness: f32

A measure of confidence from 0.0 to 1.0 indicating whether the track is acoustic. A score of 1.0 implies high certainty that the track is acoustic.

§analysis_url: String

A URL to access the full audio analysis of the track.

§danceability: f32

A measure between 0.0 - 1.0 that describes how suitable a track is for dancing based on various musical factors like tempo, rhythm stability, beat strength, and overall regularity.

§duration_ms: u32

The duration of the track in miliseconds.

§energy: f32

A score between 0.0 - 1.0 that represents the intensity and activity level of a track.

Energetic tracks feel fast, loud, and lively. For instance, death metal scores high in energy, while a Bach prelude scores low.

Features contributing to this include dynamic range, perceived loudness, timbre, onset rate, and overall entropy.

§id: String

The Spotify ID for the track.

§instrumentalness: f32

A value between 0.0 - 1.0 that estimates the likelihood of a track being instrumental (no vocals).

‘Ooh’ and ‘aah’ sounds are considered instrumental. Rap or spoken word tracks are considered vocal.

Values above 0.5 suggest instrumental tracks, but confidence is higher as the value nears 1.0.

§key: i32

A value ranging between -1 - 11 that denotes musical key of the track, represented by integers mapping to pitches using standard [Pitch Class notation] (https://en.wikipedia.org/wiki/Pitch_class).

If no key is detected, the value is -1.

§liveness: f32

A value ranging between 0.0 and 1.0 that measures the likelihood of the presence of an audience in the recording.

A value above 0.8 strongly suggests that the track is live.

§loudness: f32

The average loudness of the track in decibels (dB). Loudness values are averaged across the entire track and are useful for comparing relative loudness of tracks.

Values typically range between -60 and 0 dB.

§mode: Mode

Indicates the modality (major or minor) of the track.

§speechiness: f32

A value between 0.0 - 1.0 that detects the presence of spoken words in a track. A value closer to 1.0 indicates more speech-like content.

Values below 0.33 most likely represent music.

Values between 0.33 - 0.66 describe tracks that may contain both music and speech, either in sections or layered.

Values above 0.66 most likely represent tracks that consist entirely of spoken words, like podcasts, audiobooks etc.

§tempo: f32

The estimated pace of the track in beats per minute (BPM).

§time_signature: u32

An estimated notation of how many beats are in each measure.

Values range between 3 - 7, indicating time signatures ranging between 3/4 - 7/4.

§track_href: String

A link to the Spotify Web API endpoint providing full details of the track.

§type: String

The object type. Allowed values: audio_features.

§uri: String

The Spotify URI for the track.

§valence: f32

A measure from 0.0 to 1.0 describing the musical positiveness conveyed by a track.

High valence tracks sound more positive (e.g. happy, cheerful), while low valence tracks sound more negative (e.g. sad, depressed, angry).

Trait Implementations§

Source§

impl Clone for AudioFeatures

Source§

fn clone(&self) -> AudioFeatures

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for AudioFeatures

Source§

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

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

impl<'de> Deserialize<'de> for AudioFeatures

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for AudioFeatures

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · 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 StructuralPartialEq for AudioFeatures

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

Source§

type Output = T

Should always be Self
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, 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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,