-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New arpeggiator functions #2080
Comments
Huh. This is an interesting idea. I don't actually use arpeggiators when sequencing. But I do occasionally use them when doing improv stuff in private. I really can't judge how useful these features will be before trying them (and I would definitely fiddle around for them a bit once they're ready). It seems that they could be really great for certain niches though. My only concern is that it will make the interface look more complex to anyone not yet familiar with these features. Therefore it might be worth adding an "Advanced mode" checkbox (default disabled) that shows or hides these controls, or something along those lines. To my knowledge, we are indeed in a feature freeze. But this feature seems totally reasonable for the next minor version (1.3). |
This one is the big win in my opinion per #1836. Related #1298 #340 #1836 #687 (previously linked)
I tend to agree with the complexity observation, but mostly because this is a default tab for most instruments and we should make the most commonly used ARP features easier to locate if possible. Also, @zonkmachine thanks for taking the time to work on this! 👍 🍻 |
While you are on the topic of the arpeggiation function, I had the idea of choosing a certain key and then making all the arpeggios played to be in that certain key. Right now, we only have the option to choose types of arps like maj, min, etc. But my idea is for every note that is arpegiated, the arpeggios stay in the key. That means, no major arpeggio in a minor key, unless it is your v chord. (raise 7th). |
This was also the main concern with the previous pull request. I'm trying out an advanced switch right now and for the time being it resides in the 'Settings' menu.
This is a separate topic but a good one. We could make something like a 'master key track' that you can choose from the arpeggiator menu. |
This looks pretty good and it is much simpler than the originally proposed idea. I vote to make it default and skip the settings dialog altogether. -Tres |
Yes, but this is only a selection of the functions to try out the settings dialog, sorry for being unclear. I agree that this could be a good new default but I can think of a whole lot more to do if I can figure out a good gui solution. |
@Wallacoloo @Umcaruje @curlymorphic thoughts on merging this for 1.2? @zonkmachine this will require a rebase prior to merging. |
@tresf I have no objections to merging this in 1.2 if it still looks like the latest screenshot @zonkmachine posted (#2080 (comment)), and assuming the code is clean, etc (looks fine at a glance). Did you see the comment about the skip function muting notes? #2130 (comment) This makes me a little hesitant, as it does feel like a hack, but it is at least properly documented in the source code and its scope is narrow enough to where it shouldn't cause long-term problems. |
I'm all for more options being added to the arps. I use them all the time. |
I feel this is a good addition, I think it's a great idea to go in 1.2. I have looked over the code, and It appears to be fine. |
Is there a reason why this needs yet another setting button? I hate hidden features in software and I'm not sure I understand why we'd have all of the logic to disable this for. Can we just add this feature to all instruments? |
No. I have fixed this already but haven't pushed it.
The only thing I've found with this is that 'skip' doesn't work with lb302. The notes still play though so it's a minor nuisance. |
I think this will be a nice addition to 1.2 too. |
#2130 updated |
Hi, I'm a big fan of the arpeggios the way are dealt here and use them a lot: it's amazing what can you achieve by combining arpeggios with tempo syncing, the new functions etc... As it is the arpeggio tab is powerful enough to be used as an extension of the instrument itself, I use it as a kind of note-machine, an automated sequencer: since I wanted more scales or note repetitions I am used to intervene into the code by adding to the chordtable (InstrumentFunctions.cpp) arbitrary arrays of notes (eg.
so, my suggestion would be to give the user the possibility of writing his own sequences: reading data from a simple text file instead of hardcoding them would allow anyone to write his own arpeggios. In time, setting up a simple lmms editor shouldn't be too demanding or why not? reconsider the whole thing by adding the capability to change the length, panning, velocity etc. of the single note... Thank you again for all the work, it's wonderful!! |
Why not just stop it when it reaches the end? |
2016-10-28 22:34 GMT+02:00 Tres Finocchiaro [email protected]:
The -1 is an identifier for the "end of chord/scale" so if you want to add |
I thought arpeggio does notes, not semitones. What is special about 100 notes? |
While trying I thought the same, but it seems to me that as it is now
and if you don't put a boundary (-1 or -100 as I use it) the program logic doesn't stop and start over the sequence but awaits for all of the 13 steps to complete ( are those not assigned void?).
or something similar; maybe next time I recompile.
nothing, it's not the number of notes, just an arbitrary choice for the boundary value in a number array |
I understand, but if you are going to treat |
Thanks for reminding me! (I'm not a professional coder, my interventions on the source are as simple as they can be, serving the needs of the moment: didn't think for a second to integrate them into the official libraries, was just to share an idea). |
We need a new arpeggiator direction model. Random notes with Fisher - Yates shuffle. Random notes but each note is played only once while there are free notes left. Trying it out now and it works pretty well. |
Lots of different random distributions here: https://en.cppreference.com/w/cpp/named_req/RandomNumberDistribution |
Yo!
I'm updating the source from pull request #687 and am preparing a brand new pull request. It still lacks a proper GUI though and I'm looking into it.
The functionality we need here is similar to what's going on in the plug-in 'Mallets', which switches layout depending on which instrument you select.
Functions
The text was updated successfully, but these errors were encountered: