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

Change API prefix from A2 to AY #360

Open
olofson opened this issue Nov 9, 2022 · 0 comments
Open

Change API prefix from A2 to AY #360

olofson opened this issue Nov 9, 2022 · 0 comments
Labels
refactor Redesign of code without significant changes in functionality

Comments

@olofson
Copy link
Owner

olofson commented Nov 9, 2022

While "A2" might look cool, it's not very clever to build the major version number into every bit of the API. We have a versioning API!

(Besides, it's awkward to type on some keyboard layouts, like my current Dvorak variant, where the numbers are on shift, since I use the numpad to type anything beyond single digits.)

My suggestion is AY - the first and last letters of the name.

Fun fact

The widely used General Instruments PSG chip, AY-3-8910, reminds a bit of the origins of Audiality 2: "speaker" - a sound effect generator and PC speaker emulator, originally created for porting a DOS game project to SDL, later subverted into a polyphonic chip sound effect engine.

That little fun hack eventually turned into an experiment: Is it possible to fit a "usable" audio engine in 2000 lines of C code?

The conclusion was "yes," and some of the concepts discovered through that experiment (tree processing graph, timestamped events, sub-sample timing, "everything is a voice", inline audio context scripting, recursively spawnable subvoices, script "programs" and "event handlers" as glue between API and sound design etc) live on in the Audiality 2 design.

@olofson olofson added the refactor Redesign of code without significant changes in functionality label Nov 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactor Redesign of code without significant changes in functionality
Projects
None yet
Development

No branches or pull requests

1 participant