{"id":23978502,"url":"https://github.com/simmsb/dsp-stuff","last_synced_at":"2025-04-14T02:04:21.264Z","repository":{"id":44754655,"uuid":"446996662","full_name":"simmsb/dsp-stuff","owner":"simmsb","description":"Some gui audio effects thing","archived":false,"fork":false,"pushed_at":"2024-08-21T12:39:57.000Z","size":469,"stargazers_count":43,"open_issues_count":1,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-08-22T12:24:01.064Z","etag":null,"topics":["dsp","guitar-effects","guitars"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simmsb.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}},"created_at":"2022-01-11T22:10:02.000Z","updated_at":"2024-08-21T12:40:00.000Z","dependencies_parsed_at":"2023-02-12T22:00:46.846Z","dependency_job_id":null,"html_url":"https://github.com/simmsb/dsp-stuff","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simmsb%2Fdsp-stuff","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simmsb%2Fdsp-stuff/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simmsb%2Fdsp-stuff/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simmsb%2Fdsp-stuff/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simmsb","download_url":"https://codeload.github.com/simmsb/dsp-stuff/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232844832,"owners_count":18585280,"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":["dsp","guitar-effects","guitars"],"created_at":"2025-01-07T08:18:26.329Z","updated_at":"2025-01-07T08:18:27.903Z","avatar_url":"https://github.com/simmsb.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DSP Stuff\n\nA node based audio effects thing.\n\n![image](https://user-images.githubusercontent.com/5330444/150704818-13342938-4914-413a-899f-fd975bdba5ab.png)\n\n\n# Usage\n\nRun with `cargo run --release --features gpl_effects` (customize the feature\nflags as you wish)\n\nIf you're using pipewire, you can set the `PIPEWIRE_LATENCY` env var to force\npipewire to give us the lowest latency possible, for example:\n\n```sh\nenv PIPEWIRE_LATENCY=128/48000 cargo run --release\n```\n\n## Feature flags\n\n- `gpl_effects`: Enables building with effects that are gpl licensed. (note:\n  this will make the built binary gpl licensed)\n- `windows`: Enables building cpal with ASIO support\n- `console`: Enables the tokio console subscriber\n\n## Plumbing\n\nIf you're on linux, the JACK interface of cpal seems to work by creating a\nsource/sink pair for the application. You'll want to use something like\nqjackctl, or [pw-viz](https://github.com/Ax9D/pw-viz/tree/grouped_nodes) to\nmanage connecting up these interfaces.\n\n## Buffer sizes\n\nCurrently the device handling is rather primitive.\n\nThe current implementation uses cpal's 'default' buffer size option. I tried\nopening devices with the buffer size set to the lowest size specified in the\nconfig range, but alsa seems to lie or just fail when you try to set the buffer\nsize on some/all devices?\n\nIf you're using pipewire you can use the PIPEWIRE_LATENCY env var to lock the\nbuffer sizes.\n\n## Notes\n\n- This currently assumes the sample rate is 48000hz\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimmsb%2Fdsp-stuff","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimmsb%2Fdsp-stuff","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimmsb%2Fdsp-stuff/lists"}