Polymath

Turn songs into production-ready samples with Polymath. This open-source AI tool separates stems, detects key/tempo, and converts audio to MIDI for music producers and developers.

Go to AI
Polymath cover

About Polymath

From Music to Sample Library, Powered by AI

Polymath is an open-source Python tool that uses machine learning to transform any music library—whether from your hard drive or YouTube—into a searchable, quantized, production-ready sample library. Created for music producers, DJs, and AI audio researchers, it streamlines everything from source separation to MIDI transcription.

Created by and for Audio Innovators

Designed by audio technologists and developers, Polymath simplifies a typically complex process into an automated workflow. It uses a suite of state-of-the-art neural networks to analyze, label, and convert audio, giving musicians more time to create and less time to edit.

Core Features

Automatic Stem Separation

Polymath uses the Demucs neural network to extract individual audio stems such as drums, bass, vocals, piano, guitar, and more. This enables precise sampling and remixing of isolated elements.

Audio to MIDI Conversion

Convert stems or entire tracks into MIDI using the Basic Pitch neural network, allowing seamless integration into your digital audio workstation (DAW) for further arrangement and production.

Key and Tempo Detection

Polymath automatically detects musical keys and tempo, using tools like Crepe and librosa, making it easier to match elements across different tracks in your project.

Quantization and Beat Alignment

With pyrubberband, all stems and audio files are aligned to a beat grid, allowing for synchronized mashups, mixes, and loop-based music creation.

Music Structure Analysis

Polymath uses sf_segmenter to break songs into labeled sections like chorus, verse, or bridge. This makes it easy to organize samples based on musical function.

Similar Song Search

Once analyzed, songs in your library can be searched by similarity—ideal for building DJ sets, creating thematic mixes, or training AI music models.

Use Cases

For Music Producers

Quickly break down favorite tracks into usable samples. Extract and combine elements across genres to create remixes, beats, or entirely new compositions.

For DJs

Search your library for harmonically and rhythmically compatible tracks. Quantize entire sets to a consistent tempo and export stems for seamless transitions.

For ML Developers

Polymath generates structured, labeled datasets from real music. Perfect for training generative models or conducting musicological analysis.

For Researchers

Analyze tempo, pitch, key, timbre, and other audio features across a wide variety of music. Use Polymath to investigate musical patterns, trends, and relationships.

How It Works

  • Source Separation — Demucs
  • Segmentation & Structure — sf_segmenter
  • Pitch & Key Tracking — Crepe
  • Audio to MIDI — Basic Pitch
  • Quantization — pyrubberband
  • Feature Extraction — librosa

System Requirements & Setup

  • Python 3.7–3.10
  • ffmpeg
  • CUDA-enabled GPU (optional but recommended)

Docker Support

Run Polymath in a containerized environment using the provided Dockerfile. Mount input/output directories and process files easily across platforms.

Licensing & Community

Polymath is open-source under the MIT License, welcoming contributions from musicians, developers, and researchers. You can join the growing community via Discord for support, updates, and collaboration.

Alternative Tools