{"id":13580125,"url":"https://github.com/ardura/Actuate","last_synced_at":"2025-04-06T00:30:46.722Z","repository":{"id":207051963,"uuid":"681850790","full_name":"ardura/Actuate","owner":"ardura","description":"Synthesizer, Sampler, Granulizer written in Rust with Nih-Plug and egui","archived":false,"fork":false,"pushed_at":"2025-03-31T16:58:56.000Z","size":2488,"stargazers_count":106,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T17:47:04.832Z","etag":null,"topics":["granular-synthesis","rust","sampler","synthesis","synthesizer"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ardura.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-22T22:40:11.000Z","updated_at":"2025-03-31T16:47:17.000Z","dependencies_parsed_at":"2023-12-06T17:29:01.304Z","dependency_job_id":"6a244892-f9a2-443a-bfb5-6f2d6103fddc","html_url":"https://github.com/ardura/Actuate","commit_stats":null,"previous_names":["ardura/actuate"],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardura%2FActuate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardura%2FActuate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardura%2FActuate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ardura%2FActuate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ardura","download_url":"https://codeload.github.com/ardura/Actuate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247419597,"owners_count":20936009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["granular-synthesis","rust","sampler","synthesis","synthesizer"],"created_at":"2024-08-01T15:01:47.717Z","updated_at":"2025-04-06T00:30:46.715Z","avatar_url":"https://github.com/ardura.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Actuate (Latest is v1.3.9)\nA Subtractive and Additive Synthesizer, Sampler, and Granulizer built in Rust + Nih-Plug\nWritten by Ardura\n\n**Please note this project is still a work in progress/alpha - I got a lot of traction once I posted on KVR and wanted to clarify that!**\n\nJoin the discord! https://discord.com/invite/hscQXkTdfz\nCheck out the KVR Page: https://www.kvraudio.com/product/actuate-by-ardura\n\n![image](https://github.com/ardura/Actuate/assets/31751444/9b4cb9fe-de11-4242-a5c0-a0c5b724443d)\n\n[Shortcut to troubleshooting section](#Troubleshooting)\n\n## Features\nHover over any knob (or some labels) for an explanation!\n\n![image](https://github.com/ardura/Actuate/assets/31751444/6c455635-8f03-49b5-bce1-c665d437d2fe)\n\n\n- Two SVF Filters with unique resonance features, a VCF inspired filter, Tilt inspired filters, and three other analog-inspired filters that can be parallel, serial, or bypassed with ADSR Envelopes\n- Pitch modulation with ASDR\n\n![image](https://github.com/ardura/Actuate/assets/31751444/accd4727-975a-4266-a82a-180c55db628d)\n\n\n- 12 Subtractive Oscillator shapes:\n  - The standard: Sine, Triangle, Saw, Ramp, Square, Pulse, Noise\n  - WSaw - Saw with noise variance to create crispyness\n  - SSaw - Saw with small variance to create shimmer\n  - RSaw - Rounded saw wave\n  - RASaw - Rounded saw wave with random variances\n  - RSquare - Rounded square wave\n- Additive Oscillators with up to 16 harmonics\n- FM Supported between Oscillators/samples/granulizer\n- 5 Main Filter Algorithms\n  - SVF - 7 Filter resonance approximations for different sweeps in SVF filters\n    - Default - Allegedly the \"ideal\" response when tying Q to angular sin response\n    - Moog - Allegedly a Moog Ladder Q approximation further modified\n    - TB - Allegedly an approximation of a TB-303 LP further modified\n    - Arp - Allegedly an approximation of an Arp 2600 further modified\n    - Res - I made this up - kind of a hyper resonance while still being gentle\n    - Bump - I made this up - a gentle bump resonance different from the others\n    - Powf - I made this up - Curves based on Powf math function as it scales\n  - Tilt Filter\n  - VCF Filter\n  - Analog inspired filter idea (Ardura's V4)\n  - Analog inspired filter idea (Ardura's A4I)\n  - Analog inspired filter idea (Ardura's A4I Take II)\n- 11 Different FX for post processing\n\n![image](https://github.com/ardura/Actuate/assets/31751444/c13b62bb-a29e-420c-9f3a-764950cbd4a2)\n\n- 3 LFO controllers\n\n![image](https://github.com/ardura/Actuate/assets/31751444/22499e32-50e4-4724-9483-de5ceb43751a)\n\n- 4 Modulators that can be linked to multiple things\n\n![image](https://github.com/ardura/Actuate/assets/31751444/67d7cdeb-9214-4eef-ad8b-63b6a03ceb60)\n\n- Sampler with pitch shifting or resample stretching\n- Sampler supports single cycle waveforms for wavetable-like functions\n- Granulizer with ADSR and crossfading between grains\n- Any generator can go to any filter\n- Samples can be saved into presets\n- Stereo width and ultra wide controls\n\n## Signal Path\n![actuate_flow](https://github.com/ardura/Actuate/assets/31751444/45ce1d56-d6c1-47b2-8bae-09633ecbbd2e)\n\n## Plugin Installation!!\nActuate will look for presets and banks here, where USER is your username on your system:\n\n- Linux: `/home/USER/Documents/ActuateDB/`\n- macOS: `/Users/USER/Documents/ActuateDB/`\n- Windows: `C:\\Users\\USER\\Documents\\ActuateDB\\`\n\nThis means the default bank is at:\n\n- Linux: `/home/USER/Documents/ActuateDB/Default/`\n- macOS: `/Users/USER/Documents/ActuateDB/Default/`\n- Windows: `C:\\Users\\USER\\Documents\\ActuateDB\\Default\\`\n\nYou can create/add more banks under the ActuateDB directory for them to be read.\nLets say I want to add \"Techno Bank\" and I receive \"Techno Bank.zip\", I would extract the contents to `C:\\Users\\USER\\Documents\\ActuateDB\\Techno Bank` on Windows.\n\n## Troubleshooting\nSince Actuate 1.2.8 the new file browser and UI use native text editing. This created some issues in some DAWs outlined here:\n\n- **FL Studio:** No issues!\n- **Ardour:** No issues!\n- **Bitwig:** When using text input you need to use **\u003cshift + spacebar\u003e** for space key input\n- **Reaper:** VST3 and CLAP text input works if you use \"send all keyboard input to plugin\" in the FX menu\n\n![image](https://github.com/ardura/Actuate/assets/31751444/1664ef3f-ec4c-453b-81e8-d0b7e13a5811)\n\n- **Ableton:** \n  - Text input works if you add \"-_EnsureKeyMessagesForPlugins\" to Options.txt in preferences. See https://forum.ableton.com/viewtopic.php?t=97318\n  - Unfortunately I don't know where this would be on Linux or Mac so I'm open to help from Ableton users!\n\n## DAWS and compatibility\n- Compatible with Windows 10 and up\n- Compatible with Linux\n- Compatible with Mac\n- DAWS\n    - FL Studio tested compatible\n    - Ableton tested compatible\n    - Reaper tested compatible\n    - Ardour tested **compatible with some reported performance issues**\n    - Bitwig tested compatible\n    - Cantibile tested **uncompatible and has issues**\n    - VSTHost tested **compatible but has gui issues**\n\n## Building/Compiling Actuate Manually\n- You should do this if the precompiled binary fails or you have a unique system configuration (like linux)\n\nAfter installing [Rust](https://rustup.rs/) on your system (and possibly restarting your terminal session), you can compile Actuate as follows:\n1. Make sure your dependencies are installed. These are the packages you will need at minimum: `libgl1-mesa-dev libglu1-mesa-dev libxcursor-dev libxkbcommon-x11-dev libatk1.0-dev build-essential libgtk-3-dev libxcb-dri2-0-dev libxcb-icccm4-dev libx11-xcb-dev`\n   - Note I have also found on some systems `libc6` or `glibc` needs to be installed depending on your configuration\n2. Run the build process in a terminal from the Actuate root directory\n```\ncargo xtask bundle Actuate --profile release\n```\nOr use the following for debugging:\n```\ncargo xtask bundle Actuate --profile profiling\n```\n3. Your outputs will be in the Actuate/target/bundled directory.\n4. the `*.clap` you can copy to your clap directory/path, the vst3 one needs the folder structure copied on linux\n\n## Other Build information\nThe builds on GitHub and KVR are VST3 and CLAP format, and are compiled on the following machine types:\n- Ubuntu 22.04\n- Windows' 2022 build (Win10? The Github runner just lists \"Windows-2022\")\n- MacOS 12\n- The MacOS M1 build is on OS 14\n\n## Known Issues\n- Naming presets and info may be unstable in non-windows environments as I have not tested those sorry\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fardura%2FActuate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fardura%2FActuate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fardura%2FActuate/lists"}