Skip to content

Conversation

emuell
Copy link
Member

@emuell emuell commented Oct 9, 2025

As discussed in #74

Should be fully functional except the / shortcuts, which we can later as soon as we agree on what exactly they should do.

@unlessgames could you have a quick look at the changes, especially the ones in cycle?

This will be merged into dev. We should now use this for everything that hasn't been released (in Renoise). This way the official documentation/book will also show the documentation for the latest stable release from master and not the ones from dev.

@emuell emuell requested a review from unlessgames October 9, 2025 20:06
@unlessgames
Copy link
Collaborator

Not much to look at in terms of cycles, I guess it is fine that we now allow for malformed numbers like 0001.2 as they are parsed by dropping the zeros.

I can look at the rest in more detail tomorrow if needed.

@emuell emuell force-pushed the feature/note-glide branch from d3e5a9d to 15f9f7e Compare October 10, 2025 10:18
@emuell
Copy link
Member Author

emuell commented Oct 10, 2025

Had to rebase on dev again to fix some conflicts with recent playground & player changes.

I can look at the rest in more detail tomorrow if needed.

Only if you think that's necessary. It's a lot of changes, unfortunately, but I've done my best to cover all the corner cases in tests.

@emuell emuell force-pushed the feature/note-glide branch from 15f9f7e to 671c9a2 Compare October 10, 2025 20:52
Copy link

Benchmark for 855714b

Click to view benchmark
Test Base PR %
Cycle/Generate 49.1±0.59µs 48.2±0.71µs -1.83%
Cycle/Parse 382.1±4.68µs 376.3±4.66µs -1.52%
Rust Phrase/Clone 421.9±4.78ns 457.0±7.16ns +8.32%
Rust Phrase/Create 77.5±0.65µs 76.4±1.34µs -1.42%
Rust Phrase/Run 657.0±3.65µs 651.1±7.03µs -0.90%
Rust Phrase/Seek 145.0±267.84µs 142.0±263.76µs -2.07%
Scripted Phrase/Clone 652.8±7.93ns 690.9±7.81ns +5.84%
Scripted Phrase/Create 984.0±12.77µs 996.0±26.22µs +1.22%
Scripted Phrase/Run 1721.0±22.83µs 1730.3±16.32µs +0.54%
Scripted Phrase/Seek 221.0±448.26µs 230.9±467.98µs +4.48%

@emuell
Copy link
Member Author

emuell commented Oct 14, 2025

Merged in the changes from #90 now.

Glide works with the new note stopping behavior too, but unfortunately may cause some glides to be dropped while editing. This sounds broken.

Right now the glide property is ignored and a regular note is played instead, when nothing plays on that voice.
This allows creating sequences such as {"c4 g0", "g4 g0"} where a regular note is played back the first time c4 g0 is played, and all subsequent notes are glided.

Could instead also not play anything at all, which would make the live editing sound better. Otherwise, we need to do something different for glided notes while live editing them. I need to think about this and do some testing, so I'll keep this PR open until then.

optionally glides an existing note to the specified target pitch instead of starting a new note
- run previous sequences for an entire pattern length or up to 4 steps to look past possible glided notes
- memorize time where a note *will* stop so note glides can check if a note is playing or will be stopped
@emuell emuell force-pushed the feature/note-glide branch from e5a2c56 to 10b9984 Compare October 19, 2025 21:56
Copy link

Benchmark for 94c2957

Click to view benchmark
Test Base PR %
Cycle/Generate 47.6±1.10µs 48.7±0.62µs +2.31%
Cycle/Parse 370.0±8.48µs 374.5±17.37µs +1.22%
Rust Phrase/Clone 439.3±6.23ns 430.4±6.95ns -2.03%
Rust Phrase/Create 76.4±3.05µs 75.7±1.27µs -0.92%
Rust Phrase/Run 665.3±5.93µs 652.7±4.37µs -1.89%
Rust Phrase/Seek 138.4±256.56µs 136.5±253.28µs -1.37%
Scripted Phrase/Clone 652.3±8.45ns 657.2±6.05ns +0.75%
Scripted Phrase/Create 1010.2±89.72µs 998.5±14.56µs -1.16%
Scripted Phrase/Run 1683.9±14.28µs 1702.2±22.29µs +1.09%
Scripted Phrase/Seek 230.5±468.97µs 223.1±452.69µs -3.21%

@emuell emuell merged commit 3889c41 into dev Oct 19, 2025
2 checks passed
@emuell emuell deleted the feature/note-glide branch October 19, 2025 22:03
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