Changelog 2020-08-25

Laurin Quast

Laurin Quast

Engineer

Announcing emotional profile, energy level, energy dynamics and voice information accessible via the Cyanite GraphQL API.

As of today it is possible to query a lot of new data for your library via our GraphQL API. All the new data is already available without having to reanalyze the tracks.

New Fields

FieldType
energyLevelEnergyLevel
energyDynamicsEnergyDynamics
emotionalProfileEmotionalProfile
emotionalDynamicsEmotionalProfile
voiceMeanVoiceMeanScores
voicePresenceProfileVoicePresenceProfile
predominantVoiceGenderPredominantVoiceGender

Here a quick overview over the new metrics:

Energy Level

The Energy Level is a label for the intensity of an analysed track which can be either low, medium, high or variable. A low Energy Level indicates a calm overall appearance of a track while a high one stands for more strong and powerful characteristics. A track with a variable energy level will hold steady changes in its intensity profile.

Energy Dynamics

With Energy Dynamics, we label the progression of the Energy Level throughout the duration of the music piece, where a low Energy Dynamics label stands for a stable trend and a high one depicts a strong variance between low and high Energy Levels. Is the Energy Dynamic labeled as high it implies a variable Energy Level (s.o.).

Emotional Profile

The energy profile describes the tendency of a track expressing either a positive, neutral or negative emotion. Tracks with steady changes in their emotive expression will be labelled as variable.

Emotional Dynamics

With Emotional Dynamics, we label the progression of the Emotional Profile throughout the duration of the music piece, where a low Emotional Dynamics label stands for a stable trend and a high one depicts a strong variance between low and high Emotional Profiles. Is the Emotional Dynamic labeled as high it implies a variable Emotional Profile (s.o.).

Voice Mean

The Voice Mean Scores depict the portions of the track containing female or male singing voice or being instrumental (non-vocal).

Voice Presence Profile

This label describes the amount of singing voice throughout the full duration of the track and may be low, medium or high.

Predominant Voice Gender

This label indicates if the predominant singing voice holds more likely female or male characteristics. It may be none if no singing voice is detected.

Query Execution Example

Query Document:

query InDepthAnalysisQuery($inDepthAnalysisId: ID!) {
inDepthAnalysis(recordId: $inDepthAnalysisId) {
__typename
... on Error {
message
}
... on InDepthAnalysis {
id
result {
energyLevel
energyDynamics
emotionalProfile
emotionalDynamics
voicePresenceProfile
predominantVoiceGender
voiceMean {
female
male
instrumental
}
}
}
}
}

JSON Response:

{
"data": {
"inDepthAnalysis": {
"__typename": "InDepthAnalysisUploadedFile",
"id": "16591",
"result": {
"energyLevel": "variable",
"energyDynamics": "high",
"emotionalProfile": "positive",
"emotionalDynamics": "medium",
"voicePresenceProfile": "none",
"predominantVoiceGender": "none",
"voiceMean": {
"female": 0.05327405780553818,
"male": 0.02664434351027012,
"instrumental": 0.9297491908073425
}
}
}
}
}

Test the query on the GraphQL Playground