Skip to content
intermediateaudio

Continuous Emotion Rating

Rate emotional dimensions (valence, arousal, dominance) continuously following MSP-IMPROV protocol.

Get This Design

This design is available in our showcase. Copy the configuration below to get started.

Quick start:

bash
# Create your project folder
mkdir emotion-dimensional-rating
cd emotion-dimensional-rating
# Save config.yaml from this page into this folder
potato start config.yaml
Continuous Emotion Rating annotation interface preview

Configuration File

yaml
annotation_task_name: "Continuous Emotion Rating"
task_dir: "."

port: 8000

# Data configuration
data_files:
  - "data/speech_utterances.json"

item_properties:
  id_key: id
  text_key: text
instance_display:
  fields:
    - key: audio_url
      type: audio
      label: "Utterance"
    - key: text
      type: text
      label: "Transcript"

# Annotation schemes
annotation_schemes:
  # Valence (pleasure dimension)
  - annotation_type: slider
    name: valence
    description: "Valence: rate the pleasantness of the emotional state. 1 is very negative (unhappy, annoyed, dissatisfied), 7 is very positive (happy, pleased, satisfied)."
    min_value: 1
    max_value: 7
    step: 0.1
    starting_value: 4

  # Arousal (activation dimension)
  - annotation_type: slider
    name: arousal
    description: "Arousal: rate the activation/energy level. 1 is very calm (relaxed, sleepy, bored), 7 is very activated (excited, alert, energetic)."
    min_value: 1
    max_value: 7
    step: 0.1
    starting_value: 4

  # Dominance (control dimension)
  - annotation_type: slider
    name: dominance
    description: "Dominance: rate the perceived control/power. 1 is submissive (controlled, influenced), 7 is dominant (controlling, influential)."
    min_value: 1
    max_value: 7
    step: 0.1
    starting_value: 4

  # Naturalness
  - annotation_type: likert
    name: naturalness
    description: "How natural does the emotional expression sound?"
    size: 5
    min_label: "Very artificial"
    max_label: "Very natural"

  # Emotion clarity
  - annotation_type: likert
    name: clarity
    description: "How clear/recognizable is the emotional state?"
    size: 5
    min_label: "Ambiguous"
    max_label: "Very clear"

  # Primary emotion (optional categorical backup)
  - annotation_type: radio
    name: primary_emotion
    description: "If you had to pick one emotion label, which fits best?"
    labels:
      - Anger
      - Happiness
      - Sadness
      - Neutral
      - Fear
      - Surprise
      - Contempt
      - Mixed/unclear
    required: false

# User settings
require_password: false

# Output
output_annotation_dir: "annotation_output/"
export_annotation_format: "jsonl"

Sample Data

json
[
  {
    "id": "emotion_dimensional_rating_1",
    "audio_url": "https://upload.wikimedia.org/wikipedia/commons/5/58/En-us-I%27m_in_love_with_you.oga",
    "text": "I'm in love with you."
  },
  {
    "id": "emotion_dimensional_rating_2",
    "audio_url": "https://upload.wikimedia.org/wikipedia/commons/9/9d/En-us-I_know_you_are_but_what_am_I.ogg",
    "text": "I know you are, but what am I?"
  }
]

// ... and 3 more items

Details

Annotation Types

sliderlikert

Domain

AudioSpeech

Use Cases

emotion ratingdimensional emotionaffective computing

Tags

audioemotiondimensionalvalencearousal