Skip to content
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

further scale(s) / temperament features #26

Open
elpeh opened this issue Oct 24, 2023 · 7 comments
Open

further scale(s) / temperament features #26

elpeh opened this issue Oct 24, 2023 · 7 comments
Labels
enhancement New feature or request

Comments

@elpeh
Copy link

elpeh commented Oct 24, 2023

Hello,

missing a suitable electronic instrument for rehearsal, I'd like to use Aeolus (standalone on Mac) with 1/6 comma meantone temperament instead of 1/4 comma as implemented.

I took data from https://www.huygens-fokker.org/docs/scalesdir.txt, converted meansixth.scl into the frequency ratio format aeolus uses (and double checked meanquar.scl to fit the existing MeanQuart).
Attached is a untested patch to scale.cpp.

I don't know how exactly to build an extended version on Mac M1. Instructions somewhere? Could you build it for me (as I try to test as soon as possible).

Regarding temperament: Base is C fixed. It would be nice to be able to change that for non-equal temperament (my instrument has only 1/4 comma for meantone, but allows any semintone as base). Should be not too complicated to implement.

More extensive feature would be adding temperament definitions from e.g. files.

Thanks for your work on Aeolus, regards,
Lutz
aeolus_MeanSixth.patch

@lewisalexander2020
Copy link

lewisalexander2020 commented Oct 24, 2023 via email

@Archie3d
Copy link
Owner

Hi Lutz, thanks for the contribution,
Here is a precompiled macOS standalone build with your changes applied.

Aeolus_macOS_standalone_issue26_8d58081f.zip

The non-C-based scaling - I'd need to think how to show this nicely in the UI, because having a long list of scales does not look nice to me.

@elpeh
Copy link
Author

elpeh commented Oct 24, 2023

Great, thanks for the very fast action. Seems to work correctly (at least some frequencies tested with a tuner app are as expected).

Regarding base note: a further selector for semitones (maybe inactive for equal temp.)? This is necessary as additional parameter for Rankwave::createPipes / retunePipes, too, I think.

@elpeh
Copy link
Author

elpeh commented Nov 17, 2024

Hello again,

saw #38 proposal and thoughts. If work in this direction will be done (or before :-):
please consider to allow flexible temperament support within the plugin/standalone nonetheless by directly importing scala scl files, maybe simply all from some subdirectory.
I found the MIT-licensed C++-library https://github.com/MarkCWirt/libscala-file which yields the necessary frequency ratios.
Purely constant based handling should be changed, of course - but it should be quite easy to implement (The lib as it stands doesn't parse the description though, but even only using the file names could be enough).
Regarding UI for selecting non-C-based scaling.. maybe I miss the point: a drop down with 12 semi tones, inactive when equal temp. is selected, is not appropriate?

Lutz

@Archie3d
Copy link
Owner

Hi,
I am exploring the MTS-ESP, since this fits better for the plugin use case, because it must be synchronized with other instances and other instruments within a DAW session. The "master" tuning plugin will allow then to import *.scl files and propagate the tuning to all the plugins that respond to the MTS. This probably will not work in a standalone version, perhaps an alternative implementation will be required.

@elpeh
Copy link
Author

elpeh commented Nov 17, 2024

Yes - usage of non-equal and especially "more special ones" with the standalone version is probably very niche... that's why a think a file based "UI" might be enough. (Maybe I would find time to propose an implementation. No build process setup on Mac yet, though.)

@Archie3d
Copy link
Owner

#38 (merged) Implements MTS tuning now. Standalone plugin will also respond to the MTS master tuning (since the tuning is global). However the master tuner must run in a DAW or any VST host in fact, it will still affect a standalone plugin instance.

@Archie3d Archie3d added the enhancement New feature or request label Nov 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants