Spotify Web API v0.4.0 Spotify.AudioFeatures View Source

A complete audio features object.

Spotify Docs

Link to this section Summary

Types

A float measurement of Acousticness

An HTTP URL to access the full audio analysis of this track

How danceable a track is

The duration of the track in milliseconds

Measurement of intensity and activity

The Spotify ID for the track

Measurement of the likelihood the track is instrumental

The key the track is in

Mesurement of the likelihood the track is live

Relative Loudness of a track compared to other Spotify tracks

The modality of the track

The detected precence of speech in a track

t()

The full Audio Features object

The overall estimated tempo of a track in beats per minute (BPM)

An estimated overall time signature of a track

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

The object type: audio_features

The Spotify URI for the track

The positiveness of a track

Functions

Returns each Object Models’ model for json decoding

Link to this section Types

Link to this type acousticness() View Source
acousticness() :: float()

A float measurement of Acousticness.

A confidence measure from 0.0 to 1.0 of whether the track is acoustic. 1.0 represents high confidence the track is acoustic.

Link to this type analysis_url() View Source
analysis_url() :: String.t()

An HTTP URL to access the full audio analysis of this track.

An access token is required to access this data.

Link to this type danceability() View Source
danceability() :: float()

How danceable a track is.

Danceability describes how suitable a track is for dancing based on a combination of musical elements including tempo, rhythm stability, beat strength, and overall regularity. A value of 0.0 is least danceable and 1.0 is most danceable.

Link to this type duration_ms() View Source
duration_ms() :: integer()

The duration of the track in milliseconds.

Link to this type energy() View Source
energy() :: float()

Measurement of intensity and activity.

Energy is a measure from 0.0 to 1.0 and represents a perceptual measure of intensity and activity. Typically, energetic tracks feel fast, loud, and noisy. For example, death metal has high energy, while a Bach prelude scores low on the scale. Perceptual features contributing to this attribute include dynamic range, perceived loudness, timbre, onset rate, and general entropy.

The Spotify ID for the track.

Link to this type instrumentalness() View Source
instrumentalness() :: float()

Measurement of the likelihood the track is instrumental.

Predicts whether a track contains no vocals. “Ooh” and “aah” sounds are treated as instrumental in this context. Rap or spoken word tracks are clearly “vocal”. The closer the instrumentalness value is to 1.0, the greater likelihood the track contains no vocal content. Values above 0.5 are intended to represent instrumental tracks, but confidence is higher as the value approaches 1.0.

Link to this type key() View Source
key() :: integer()

The key the track is in.

Integers map to pitches using standard Pitch Class notation. E.g. 0 = C, 1 = C♯/D♭, 2 = D, and so on.

Link to this type liveness() View Source
liveness() :: float()

Mesurement of the likelihood the track is live.

Detects the presence of an audience in the recording. Higher liveness values represent an increased probability that the track was performed live. A value above 0.8 provides strong likelihood that the track is live.

Link to this type loudness() View Source
loudness() :: float()

Relative Loudness of a track compared to other Spotify tracks.

The overall loudness of a track in decibels (dB). Loudness values are averaged across the entire track and are useful for comparing relative loudness of tracks. Loudness is the quality of a sound that is the primary psychological correlate of physical strength (amplitude). Values typical range between -60 and 0 db.

Link to this type mode() View Source
mode() :: integer()

The modality of the track.

Mode indicates the modality (major or minor) of a track, the type of scale from which its melodic content is derived. Major is represented by 1 and minor is 0.

Link to this type speechiness() View Source
speechiness() :: float()

The detected precence of speech in a track.

Speechiness detects the presence of spoken words in a track. The more exclusively speech-like the recording (e.g. talk show, audio book, poetry), the closer to 1.0 the attribute value. Values above 0.66 describe tracks that are probably made entirely of spoken words. Values between 0.33 and 0.66 describe tracks that may contain both music and speech, either in sections or layered, including such cases as rap music. Values below 0.33 most likely represent music and other non-speech-like tracks.

Link to this type t() View Source
t() :: %Spotify.AudioFeatures{acousticness: Spotify.AudioFeatures.acousticness() | nil, analysis_url: Spotify.AudioFeatures.analysis_url() | nil, danceability: Spotify.AudioFeatures.danceability() | nil, duration_ms: Spotify.AudioFeatures.duration_ms() | nil, energy: Spotify.AudioFeatures.energy() | nil, id: Spotify.AudioFeatures.id() | nil, instrumentalness: Spotify.AudioFeatures.instrumentalness() | nil, key: Spotify.AudioFeatures.key() | nil, liveness: Spotify.AudioFeatures.liveness() | nil, loudness: Spotify.AudioFeatures.loudness() | nil, mode: Spotify.AudioFeatures.mode() | nil, speechiness: Spotify.AudioFeatures.speechiness() | nil, tempo: Spotify.AudioFeatures.tempo() | nil, time_signature: Spotify.AudioFeatures.time_signature() | nil, track_href: Spotify.AudioFeatures.track_href() | nil, type: Spotify.AudioFeatures.type() | nil, uri: Spotify.AudioFeatures.uri() | nil, valence: Spotify.AudioFeatures.valence() | nil}

The full Audio Features object.

Contains all the values listed in the Spotify Docs

Link to this type tempo() View Source
tempo() :: float()

The overall estimated tempo of a track in beats per minute (BPM).

In musical terminology, tempo is the speed or pace of a given piece and derives directly from the average beat duration.

Link to this type time_signature() View Source
time_signature() :: integer()

An estimated overall time signature of a track.

The time signature (meter) is a notational convention to specify how many beats are in each bar (or measure).

Link to this type track_href() View Source
track_href() :: String.t()

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

The object type: audio_features

The Spotify URI for the track.

Link to this type valence() View Source
valence() :: float()

The positiveness of a track.

A measure from 0.0 to 1.0 describing the musical positiveness conveyed by a track. Tracks with high valence sound more positive (e.g. happy, cheerful, euphoric), while tracks with low valence sound more negative (e.g. sad, depressed, angry).

Link to this section Functions

Returns each Object Models’ model for json decoding.

This callback is passed into Poison.decode :as option for formatting incoming json as structs. Each Object Model should implement it, and nest other Object Models’ as functions in their own as needed.

Callback implementation for Spotify.ObjectModel.as/0.