A program that composes a chorale or Baroque fugue for 3 or 4 voices. It either composes its own melody or records one from the user. If it records one, it transcribes the melody and analyzes it. The program uses data extracted from Hooktheory's API as weights for writing chord progressions. It creates both a MusicXML score and a pdf score using LilyPond.
Requires LilyPond to be installed: http://lilypond.org/
Audio Recorder - Complete
Audio Transcriber - Incomplete
Music Theory Analyzer - Incomplete
Hooktheory API Data Extractor - Complete
Data Parser - Complete
Chorale Writer - Complete, temporarily broken during conversion
Working version: https://github.com/lewj85/PocketBach/tree/cd7f2fd9bf8f5b0def7a6928b1b55e5612ba8728
Fugue Writer - Incomplete
MusicXML Converter - Complete
LilyPond Converter - Complete