Skip to content

Commit

Permalink
Improve the README; placeholder the manual
Browse files Browse the repository at this point in the history
  • Loading branch information
baconpaul committed Dec 30, 2024
1 parent 005943e commit f128e25
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 5 deletions.
53 changes: 52 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,54 @@
# Six Sines

Maybe, before 1 Jan 2025, as a new years present, Six Sines will get released.
Six Sines is a small synthesizer which explores audio rate inter-modulation of signals.
Some folks would call it "an FM synth" but it's really a bit more PM/AM, and anyway that's
kinda not the point.

If you want to read a manual, [go here](doc/manual.md)

If you want to download a release or recent version, [go here](releases)

## Background

The project exists for a few reasons

1. At the end of 2024, I was in a bit of a slump dev-wise for a variety of reasons and wanted a
small project to sort of jump-start me for 2025. I had watched [Newfangled Dan ship obliterate](https://www.newfangledaudio.com/obliteratefrom
from idea to loved plugin in November, and I thought hey can I do the same in December
2. As I wrapped up 2024, I also wanted to take account of how well our project to factor code into libraries
went and make a sort of todo-list of why it was hard to build a synth. This includes some
insights into the sst- libraries and the clap-wrapper
2. Another india audio dev, who asked to not be named here in case this sucks, which it doesn't I dont think,
said to a group of users in a discord "the most useless thing is a 6 op fill matrix pure FM synth".
3. It seemed fun, and I thought some people would download it.
4. It had been in my head for a while and I wanted to hear how it sounded

## How to build this software

We provide pre-build windows, linux, and macOS binaries at the [release page](releases) but especially on
Linux, you may want to build it yourself, since we use ubuntu 24 machines and linux doesn't really exist.

So to build it, do the standard

```aiignore
git clone https://github.com/baconpaul/six-sines
cd six-sines
cmake -Bignore/build -DCMAKE_BUILD_TYPE=Release
cmake --build ignore/build --config Release --target six-sines_all
```

various plugins and executables will now be scattered around ignore/build.

## I found a bug or want a feature added

So this was really a one month sprint. And its pretty self contained thing. So feature requests
are things I may say no to. But open an issue and chat. Or send a PR!

Bugs especially let me know.

But remember, "Programming an FM/PM/RM synth is hard" is not a bug in six-sines!

## Why is this a `baconpaul` and not a `surge-synthesizer` project

Well you know. It's not quite up to snuff for a surge project. And its pretty idiosyncratic.
I may do a few more side quest projects in 2025. Lets see.
8 changes: 4 additions & 4 deletions doc/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ GENERAL AND CLEANUPS
- Toggles and Multiswitches dont have accesible set actions
- Show menu doesnt work for set value
- Ctrl/Knob quantizes on ratio to PO2
- AM is somehow not quiet right. Signal to zero seems 'no modulation' not 'no output'
- Write a better README
- Write some semblance of documentation
- Write some semblance of a manual

THINGS I DIDNT DO
THINGS I DIDNT GET TO FOR 1.0
- AM is somehow not quiet intuitive. Modulator signal to zero results in 'no output' but it sort of intuitively should me
'no modulation'
- 90%-100% of internal nyquist mute fades (maybe ship without this tho)
- Main DAHDSR at DAHD=0 SR=1 means voice lifetime is longest active op mixer DAHDSR and main DAHDSR bypassed
- Note Expressions
Expand Down
5 changes: 5 additions & 0 deletions doc/manual.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Six Sines Manual

It has knobs. Play with them!

(More coming soon)

0 comments on commit f128e25

Please sign in to comment.