Skip to content

alternate piano roll song editor#11282

Merged
riknoll merged 7 commits intomasterfrom
dev/riknoll/piano-roll-editor
Apr 23, 2026
Merged

alternate piano roll song editor#11282
riknoll merged 7 commits intomasterfrom
dev/riknoll/piano-roll-editor

Conversation

@riknoll
Copy link
Copy Markdown
Member

@riknoll riknoll commented Apr 22, 2026

image

this is now far enough along to check in! definitely not finished, but it works!

this is an alternate "piano roll" style song editor. the intention here is not to replace the current song editor, but to provide another interface that some people might find more familiar. also, this UI scales down much better than our current editor. if we wanted to have a song editor that fit in a blockly dropdown style editor (like sound effects or melodies), this would fit much more easily.

i mainly want this for arcade because people complain about the limitations of the current editor, but this will probably be relegated to an extension instead of the default music category. definitely targets more advanced users.

advantages over the current song editor:

  • you don't need to know music staff notation to use it
  • has access to full range of notes instead of just bass/treble clef
  • drums are actually labelled
  • tracks and instruments are decoupled (you can have multiple tracks with the same instrument)
  • no restrictions on chords; you can have different lengths of notes on the same start point
  • because of the lack of restrictions, this will be great for importing midi or other song formats

disadvantages over the current song editor:

  • has hidden state since only one track is visible at a time
  • harder to copy songs from sheet music
  • not as fun/cute
  • limited to 16th notes and longer (current song editor can do 32nd notes). might change this in the future
  • current song editor is in c major, which means that clicking random notes usually sounds just fine. having access to the full chromatic scale means you can make stuff that sounds pretty discordant when clicking randomly

the two editors share lots of code! the song format for serializing/deserializing is the same for both so no changes are needed on the pxt-common-packages side

@riknoll riknoll requested a review from a team April 22, 2026 18:42
@riknoll riknoll enabled auto-merge (squash) April 23, 2026 17:21
@riknoll riknoll merged commit bf996de into master Apr 23, 2026
20 checks passed
@riknoll riknoll deleted the dev/riknoll/piano-roll-editor branch April 23, 2026 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants