Table of Contents

  1. Introduction
  2. Installation
    1. Overview
    2. Requirements
    3. Quick Installation Guide
    4. Java Installation
      1. How to Check if Java is Installed
    5. Music Processing Suite Installation
      1. Standalone Installation
      2. Installation Into an Existing Eclipse Instance via Update Site
    6. Optional Components
      1. LilyPond Installation
        1. LilyPond Configuration
      2. MuseScore Installation
        1. MuseScore Configuration
      3. Graphviz Installation
        1. Graphviz Configuration
      4. LaTeX Installation
        1. LaTeX Configuration
      5. CoreNLP Installation
        1. CoreNLP Configuration
  3. Quickstart Tutorial
    1. Creating Projects
    2. Creating Compositions
    3. Visualizing Context Tree Composition Models
    4. Visualizing Context Layer Composition Models
    5. Creating Scores and Lead Sheets
    6. Analyzing Compositions
  4. Context Layer Models
    1. Introductory Example
    2. Model Structure
      1. Instrumentation Context
      2. Metric Contexts
      3. Harmonic Contexts
      4. Rhythmic Contexts
      5. Pitch Contexts
      6. Loudness Contexts
      7. Lyrics
      8. Labels
      9. Custom Contexts
    3. Time Model
    4. Parallel Streams
  5. Composition Language and Context Tree Models
    1. Introductory Example
    2. Key Concepts
      1. Hierarchical Structures
      2. Inheritance
      3. Polymorphism
      4. Auto Expansion
      5. Modularization using Fragments
    3. Contexts
      1. Rhythms
        1. Examples
        2. Anacruses
      2. Time Signatures
      3. Tempo
      4. Instruments
        1. Available Instruments
          1. Instruments with Variable Pitches
          2. Untuned Percussion Instruments
        2. Instrument Definitions
      5. Pitches
      6. Scales
        1. Scale Definitions
      7. Loudness
      8. Harmonic Contexts
        1. Keys
        2. Harmonies
        3. Harmonic Progressions
      9. Lyrics
      10. Custom Contexts
    4. Context Modifiers
      1. Rhythmic Modifiers
        1. Augmentations and Diminutions
        2. Rhythmic Extensions
        3. Rhythmic Adjustments
        4. Rhythmic Insertions
        5. Rhythmic Displacements
      2. Pitch Modifiers
        1. Transpositions
        2. Inversions
        3. Parallel Intervals
      3. Harmonic Modifiers
    5. Context Generators
      1. Chord Generators
      2. Arpeggio Generators
    6. Control Structures
      1. Parallelizations
      2. Repetitions
      3. Conditions
      4. Iterations
      5. Sequences
      6. While-Loops
      7. Switches
    7. Expressions
      1. Literals
      2. Operators
      3. Type Conversions
      4. Function Calls
  6. Music Transformation and Visualization
    1. Rendering Context Tree Model Visualizations
    2. Rendering Context Layer Model Representations
    3. Visualization Options
    4. Transforming Compositions to Scores
      1. Score Generation Options
    5. Transforming Compositions to SuperCollider
      1. Executing SuperCollider Code
    6. Deriving Context Tree Models
    7. Launch Configurations
  7. Context-sensitive Search
    1. Formulating Search Queries
    2. Performing Context-sensitive Search
    3. Search Configuration
    4. Search Result Presentation
  8. Music Analysis
    1. Analysis Scopes
    2. Analyzing Music
    3. Exploring Analysis Results
    4. Configuring Music Analysis
    5. Generating Analysis PDF Reports
      1. Analysis Report PDF Settings
    6. Generating Progression Graphs
    7. Analysis Features
  9. Algorithmic Composition
    1. Generating Compositions
    2. Algorithmic Composition Launch Configurations
    3. Fitness Function Configuration
    4. Creating Fitness Functions by Importing Analysis Results
    5. Generating Compositions Algorithmically
    6. Composition Crossover
  10. Troubleshooting
    1. Startup with Java 9 Fails with NoClassDefFoundError
    2. Analysis Report Generation Fails with Fatal Error

Introduction

Music Processing Suite (MPS) is a software system for creating, visualizing, transforming, analyzing and generating musical compositions using advanced symbolic music representations. MPS is based on domain-specific models containing individual representations of musical contexts such as meter, tempo, rhythms, pitches, scales, harmonies, loudness, lyrics and more. Based on these models, the following functionality is provided:

Refer to the Quickstart Tutorial for a quick introduction of the features and visit www.musicprocessing.net for more information.

MPS runs on the Eclipse Platform. This document covers the installation of all required software components and many usage scenarios of MPS. The documentation is structured as follows:

This document also contains a Troubleshooting section with solutions for known issues.