Showcase/Music Tagging
intermediateaudio

Music Tagging

Multi-label music tagging following MagnaTagATune dataset format for instrument and genre annotation.

🎧

audio annotation

Configuration Fileconfig.yaml

task_name: "Music Tagging"

# Server configuration
server:
  port: 8000

# Audio settings
audio:
  enabled: true
  display: waveform
  waveform_color: "#EC4899"
  progress_color: "#F472B6"
  speed_control: true

# Data configuration
data_files:
  - path: data/music_clips.json
    audio_field: audio_file

# Annotation schemes
annotation_schemes:
  # Instruments
  - annotation_type: multiselect
    name: instruments
    description: "What instruments can you hear? (Select all)"
    labels:
      - Guitar (acoustic)
      - Guitar (electric)
      - Piano/keyboard
      - Drums/percussion
      - Bass
      - Violin/strings
      - Brass (trumpet, etc.)
      - Woodwind (flute, sax, etc.)
      - Synthesizer
      - No instruments

  # Vocals
  - annotation_type: multiselect
    name: vocals
    description: "Describe the vocals (if present)"
    labels:
      - Male vocals
      - Female vocals
      - Choir/group
      - Rapping/spoken word
      - Instrumental only (no vocals)

  # Genre tags
  - annotation_type: multiselect
    name: genre
    description: "What genre(s) does this fit? (Select up to 3)"
    labels:
      - Rock
      - Pop
      - Electronic/dance
      - Hip-hop/rap
      - Jazz
      - Classical
      - Folk/country
      - R&B/soul
      - Metal
      - Blues
      - World/ethnic
      - Ambient

  # Mood/emotion tags
  - annotation_type: multiselect
    name: mood
    description: "What mood/feeling does this evoke? (Select up to 3)"
    labels:
      - Happy/upbeat
      - Sad/melancholic
      - Energetic/exciting
      - Calm/relaxing
      - Aggressive/intense
      - Romantic
      - Dark/mysterious
      - Nostalgic

  # Acoustic features
  - annotation_type: radio
    name: tempo
    description: "How would you describe the tempo?"
    labels:
      - Very slow
      - Slow
      - Medium
      - Fast
      - Very fast

  # Production quality
  - annotation_type: likert
    name: quality
    description: "Rate the production/recording quality"
    size: 5
    min_label: "Low quality"
    max_label: "High quality"

  # Familiarity
  - annotation_type: radio
    name: familiarity
    description: "Do you recognize this song?"
    labels:
      - Yes, I know this song
      - Sounds familiar
      - Never heard it before

# User settings
allow_all_users: true
instances_per_annotator: 200

# Output
output:
  path: annotations/
  format: json

Get This Design

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

Quick start:

# Create your project folder
mkdir music-tagging
cd music-tagging
# Copy config.yaml from above
potato start config.yaml

Details

Annotation Types

multiselectlikert

Domain

Audio

Use Cases

music tagginggenre classificationinstrument recognition

Tags

audiomusictagginggenreinstruments