JAXdsp
Fast, differentiable audio processors on the CPU or GPU, controlled from the browser.
I'm still working on improvements and an interactive browser client, after which I'll write up a blog post.
In the meantime, the docs directory has several Jupyter notebooks with plenty of examples.
The Differentiable Audio Processors notebook shows many real DSP examples, along with loss/parameter time-series.
(All files under docs/scratch are working notes, and can be ignored.)
g
The goal of this project is to parameterize audio graphs, in real-time, to produce an audio stream resembling incoming audio.
Built with JAX, WebRTC, WebSockets, and React.
react-three-fiber provides the WebGL backbone for
performant real-time clientside monitoring of the system.
Server
Docker
To build and run the server in a Linux container:
$ docker build . -t jaxdsp_server
$ docker run -p 8080:8080 jaxdsp_server
$ cd server
$ python server.py
Client
Note: For local development of the client within the test /app (see below), the client is included as a
local file:../client dependency, and included in the babel transpilation for the /app build (
see app/craco.config.js).
build:dev in the client just symlinks the dist/jaxdsp-client.js target to the root index.js file.
$ cd client
$ npm ci
$ npm run build # or, for a development build: `build:dev`
App
$ cd app
$ npm ci
$ npm start
Metadata
Release files for jaxdsp 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| jaxdsp-0.3.1.tar.gz | 17.6 kB | Without provenance | Details for jaxdsp-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| jaxdsp-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for jaxdsp-0.3.1-py3-none-any.whl |
Total release size: 39.6 kB
Release files / jaxdsp-0.3.1.tar.gz
| Download URL | jaxdsp-0.3.1.tar.gz |
|---|---|
| Size | 17.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a690c7c04e84396d74c54d5d2b005d6479927ce98b2a71d1e255bd49315f5be6
|
|
BLAKE2b-256 checksum How to use checksums |
1e6ea22cc6769f4f8ce1e4b927f44c677122a53c2cc21cec0c96f5befb4454c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1
|
Release files / jaxdsp-0.3.1-py3-none-any.whl
| Download URL | jaxdsp-0.3.1-py3-none-any.whl |
|---|---|
| Size | 21.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d67a51b28211d98472d1836e1b928c051d687fdd0c8eefe649e3184e3e23c11f
|
|
BLAKE2b-256 checksum How to use checksums |
08c2a66c711c82d9c6a0cef3305689643eaae3b8fac85c799f09f5da1c581fd6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1
|
Security for jaxdsp 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.