FREEDOM251

Freedom251 › Music Theory Software

music21

Free plan LinuxMacWebWindows

Visit music21 Alternatives Pricing

music21's own site

What music21 is

music21 is a free, BSD-licensed Python toolkit for computer-aided musicology. It helps users study music datasets, generate musical examples, teach music theory, edit notation, analyze music, and compose. Its corpus contains thousands of encoded musical works, and its analysis tools include corpus searches, pitch plotting, and advanced functions such as nPVI. It works with common music formats including MIDI and MusicXML, with room to extend support to other formats.

For notation workflows, the documentation recommends MuseScore for viewing and editing scores and describes support for MusicXML readers such as Finale, Sibelius, and Dorico. Optional integrations include LilyPond, Matplotlib, SciPy, PyAudio, and Pygame for activities such as score rendering, plotting, audio searching, recording, and realtime MIDI. The toolkit can also be used in the web-based Jupyter Notebook. Users need some familiarity with Python; potential users and contributors include musicologists, programmers, composers, performers, and music enthusiasts. music21 primarily works with symbolic musical data rather than sound waves, and it cannot read music directly from images or PDFs. While the toolkit itself is BSD-licensed, some corpus encodings may have commercial-use or other restrictions, so users should check the terms for individual works or directories. Community help is available through a mailing list, and paid consulting rates vary by project.

Who it suits

music21 suits people with some Python familiarity who work with symbolic music, including musicologists, programmers, composers, performers, and music enthusiasts. It is useful for analysis, teaching, composition, notation workflows, and work with encoded music collections.

What it does well

  • Free BSD-licensed toolkit.
  • Includes a corpus of thousands of encoded musical works.
  • Supports MIDI and MusicXML.
  • Provides corpus search, pitch plotting, and nPVI analysis.
  • Can be used in web-based Jupyter Notebook.
  • Optional integrations cover score rendering, plotting, recording, and realtime MIDI.

What to know first

  • Requires some familiarity with Python.
  • Primarily handles symbolic music data rather than sound waves.
  • Cannot read notation directly from images or PDFs.
  • Some corpus works may have separate commercial-use or other restrictions.

Limits

The toolkit focuses on symbolic musical data rather than sound waves and cannot read notation from images or PDFs. Individual corpus works may carry commercial-use or other restrictions.

Plans

PlanBilled and limitsPrice
music21BSD-licensed toolkit · corpus works may have separate restrictionsFree

As music21.org lists them, read 8 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the music21 website.
  2. Install or use the Python toolkit in a supported environment.
  3. Use MIDI or MusicXML files, or explore the included corpus.
  4. Use it in web-based Jupyter Notebook if that suits your workflow.
  5. Check the license terms for individual corpus works or directories you plan to use.

music21 is a Python toolkit for studying, teaching, analyzing, and composing with symbolic music. It suits people comfortable working in Python who want to ask questions of encoded scores or build music into code; its analytical range comes with a clear boundary around audio and scanned notation.

Overview

At its best, music21 connects a large body of encoded music with tools for searching and analysis. Musicologists can explore patterns across works, while teachers and composers can generate examples or manipulate notation programmatically. It is a flexible toolkit rather than a finished score editor, so users should expect to work through code and other music software as needed.

The toolkit is BSD-licensed and free. Its corpus has its own terms: some works or directories restrict commercial use or carry other conditions. Check the license for the material you plan to use, especially when building a commercial project.

Key features

Corpus research and analysis

Corpus search, pitch plotting, and advanced functions such as nPVI give users several ways to examine encoded works. The included corpus of thousands of pieces makes it practical to investigate music beyond a single score, and to turn findings into teaching examples or compositional material. These tools depend on symbolic data, so they do not analyze sound waves from recordings.

Formats and notation workflows

music21 works with MIDI and MusicXML, supports part extraction and tablature, and can be extended to other formats. For reading or editing scores, its documentation points users to MuseScore and describes support for MusicXML readers such as Finale, Sibelius, and Dorico. That is a useful bridge to established notation applications, though it means score editing is not the toolkit’s central strength.

Optional integrations

Optional connections to LilyPond, Matplotlib, SciPy, PyAudio, and Pygame support tasks including score rendering, plotting, audio searching, recording, and realtime MIDI. Jupyter Notebook can also be used for web-based work. This breadth gives technically minded users room to assemble a workflow around a particular project, but makes Python familiarity a real prerequisite rather than a bonus.

Pricing

music21: free. The BSD-licensed toolkit has no paid tier to unlock its core use. Community mailing-list help is available, and paid consulting is offered at project-dependent rates. Corpus works may have separate restrictions, so free software does not make every included score available for every use.

Platforms

music21 supports Linux, macOS, Windows, and web use, including through Jupyter Notebook. It is available for both self-managed and hosted deployment. The configuration assistant asks whether the toolkit may access the Internet, but Internet access is not required.

Who it's for

Musicologists, programmers, composers, performers, teachers, and music enthusiasts can all find uses for music21, provided they have some familiarity with Python. It is especially well suited to research and instruction involving encoded scores, and to composition workflows that benefit from programmatic analysis or example generation. Choose a notation application for direct score editing, and an audio or optical music recognition tool if your starting point is a recording, image, or PDF.

Pros and cons

  • Pros: A free, BSD-licensed toolkit combines a corpus of thousands of works with search and analysis functions, supporting research and teaching without a software fee.
  • Pros: MIDI and MusicXML support, part extraction, tablature, and optional integrations give Python users several ways to connect analysis with notation and other workflows.
  • Cons: Some Python familiarity is needed, which makes it a poor fit for someone seeking a ready-to-use graphical music application.
  • Cons: It works primarily with symbolic musical data; it cannot read notation directly from images or PDFs or work directly from audio waveforms.
  • Cons: Corpus licenses vary, so users must check individual works before commercial use or other restricted applications.

Alternatives

For broader options, browse Music Theory Software or Music notation software.

For structured practice rather than Python-based score analysis, Harmonia offers a free independent-practice plan and a Classroom Connect option priced at 20.95 for up to four weeks; its free plan omits advanced analyzing and feedback features. note-noodle may suit ear-training practice: its free tier allows 10 sessions a day and three personal Play Along uploads per month, with the first four lessons available without an account.

ChordIQ is another freemium option for readers comparing music-learning apps. Music Master offers free website lessons and practice questions without an account, while Musicca makes all content free and lets a free account unlock it and remove ads. For exercise-based study, MyMusicTheory has more than 100 free exercises, and Study Music Theory offers a full course and eight trainers without ads or paywalls. Teoria provides free website content with optional sign-in.

Verdict

Choose music21 if you know some Python and want a free, capable toolkit for exploring, teaching, or creating with encoded music. Its corpus and analysis tools are the strongest reasons to use it. Look elsewhere when the job starts with recorded audio or scanned notation, or when you need a dedicated graphical score editor.

Verdict

Choose music21 if you want a free Python toolkit for analyzing, teaching, editing, or composing with symbolic music data. Its corpus and optional integrations support a range of musicology and notation tasks. Look elsewhere if you need to work directly from audio waveforms or read notation from images or PDFs.

Questions

How much does music21 cost?

The music21 toolkit is free and is BSD-licensed.

Which music formats does it support?

It works with common formats including MIDI and MusicXML, and can be extended to support more.

Can it read notation from a scan or PDF?

No. music21 cannot read music directly from images or PDFs.

Does the corpus have any licensing restrictions?

Some corpus encodings may not be used commercially or may have other restrictions. Check the license terms for individual works or directories.

What software works with music21?

The documentation recommends MuseScore for viewing and editing notation and describes MusicXML readers including Finale, Sibelius, and Dorico. Optional integrations include LilyPond, Matplotlib, SciPy, PyAudio, and Pygame.

Where can users get help?

The community mailing list offers help. Paid consulting is available at rates that vary by project.

Facts from music21's own pages

Analysis
Its tools include corpus searching, pitch plotting, and advanced analysis functions such as nPVI. · music21.org, 8 Oct 2026
Audience and requirements
The documentation says users need some familiarity with Python and identifies musicologists, programmers, composers, performers, and music enthusiasts among potential contributors. · music21.org, 8 Oct 2026
Corpus
The toolkit includes a corpus of thousands of encoded musical works. · music21.org, 8 Oct 2026
Corpus restrictions
Some corpus encodings may not be used commercially or may have other restrictions, so users are directed to check the licenses for individual works or directories. · music21.org, 8 Oct 2026
Deployment
both · music21.org, 22 Sept 2026
Formats
The FAQ says music21 can work with common formats including MIDI and MusicXML, and can be extended to support more. · music21.org, 8 Oct 2026
Free plan
Yes · music21.org, 22 Sept 2026
Jupyter
The documentation describes using music21 in the web-based Jupyter Notebook. · music21.org, 8 Oct 2026
Limits
music21 primarily manipulates symbolic musical data rather than sound waves, and it cannot read music directly from images or PDFs. · music21.org, 8 Oct 2026
MIDI support
Yes · music21.org, 22 Sept 2026
MusicXML support
Yes · music21.org, 22 Sept 2026
Notation integrations
The documentation recommends MuseScore for viewing and editing notation and describes support for MusicXML readers including Finale, Sibelius, and Dorico. · music21.org, 8 Oct 2026
Other integrations
The documentation describes optional integrations with LilyPond, Matplotlib, SciPy, PyAudio, and Pygame for tasks such as score rendering, plotting, audio searching, recording, and realtime MIDI. · music21.org, 8 Oct 2026
Parts extraction
Yes · music21.org, 22 Sept 2026
Purpose
music21 is a Python-based toolkit for computer-aided musicology. · music21.org, 8 Oct 2026
Security and licensing
The toolkit is BSD-licensed; its configuration assistant asks whether music21 can access the Internet, and the documentation says Internet access is not required. · music21.org, 8 Oct 2026
Support
The community mailing list offers help, while paid consulting is available at rates that vary by project. · music21.org, 8 Oct 2026
Tablature support
Yes · music21.org, 22 Sept 2026
Uses
People use it to study music datasets, generate musical examples, teach music theory, edit notation, analyze music, and compose. · music21.org, 8 Oct 2026

Where music21 stands on Freedom251

Look at these too