A Java-based digital piano application built using Java MIDI and JavaFX, designed to play musical compositions like Beethoven's Für Elise. This project serves as both a functional piano and an educational tool to understand MIDI programming and music theory fundamentals, such as notes, time signatures, dynamics, and rests.
Read more on Where to Start: Building a Piano App
- Play Individual Notes: Trigger single notes or chords with precise MIDI control.
- Musical Sequences: Create and play sequences programmatically, supporting complex compositions.
- Music Theory Integration: Implements core concepts like time signatures (e.g., 3/4), note durations, and dynamic markings (e.g., mezzo-piano, crescendo).
- Für Elise Demo: Includes a coded implementation of Beethoven's Für Elise as a showcase.
- Simple JavaFX UI: Visualizes the piano keyboard and sequencer for user interaction.