Music Technology with AI experimented by Henry Peng

I have made some interesting little things using Java vibe-coding.

PROJECT 01
Humnote
HUMMING → MIDI
A Java-powered humming-to-MIDI workspace. Record or upload a melody, correct it in a piano roll, preview the result, and export a standard MIDI file.
Optional AI editing lets natural-language instructions reshape the melody while keeping the editable note data visible.
BACKEND Java 17 · Spring Boot
INTERFACE React · TypeScript
AUDIO Basic Pitch · TensorFlow.js
OUTPUT Standard MIDI
View Repository ↗
PROJECT 02
FretFlow AI
MUSICXML → PLAYABLE TAB
A local Java desktop application that converts electric-guitar and bass MusicXML scores into ergonomic, playable TAB fingerings.
Its deterministic engine preserves pitch while optimizing string changes, stretches, positions, and instrument techniques, with optional AI refinement among validated fingerings.
PLATFORM Java 17 Desktop
INPUT MusicXML · XML · MXL
INSTRUMENTS Electric Guitar · Bass
TECHNIQUES Slap · Pop · Ghost · Slide · Harmonics
View Repository ↗
PROJECT 03 · MAX / MSP
PlucktoString
MAX FOR LIVE · SYNTHESIS
A Max/MSP synthesizer exploring the transition from plucked attacks into evolving string-like textures.
Built around layered modulation, envelopes, oscillators, delay, and continuously shifting LFO behavior to shape movement over time.
PLATFORM Max/MSP · Max for Live
FORMAT .amxd
SYSTEMS LFO · Envelope · Delay · Oscillation
FILE PlucktoString_915.amxd
View Repository ↗

Yihan Peng
GITHUB
Yihan Peng
@ImNotYihan

GitHub Repository & Demo Video

Previous
Previous

Original Compositions