Skip to content

RustAudio/rust-jack

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rust JACK

License: MIT Build Status

crates.io docs.rs

Rust bindings for the JACK Audio Connection Kit. These bindings work on every operating system that JACK does.

The JACK server is usually started by the user or system. Clients can request that the JACK server is started on demand when they connect, but this can be disabled by the user and is the recommended configuration.

❤️ Sponsor

Refer to the documentation for details about the API, building, and packaging. Also take a look at the examples directory for usage.

Testing

Testing requires setting up a dummy server and running the tests using a single thread.

# Set up a dummy server for tests. The script is included in this repository.
./dummy_jack_server.sh &
# Run tests with limited concurrency.
RUST_TEST_THREADS=1 cargo test

Note: We use a single thread for tests since too many client instantiations in short periods of time cause the JACK server to become flaky.

Possible Issues

If the tests are failing, a possible gotcha may be timing issues.

  1. Increase the value used by sleep_on_test in client/common.rs.

Another case is that libjack may be broken on your setup. Try switching between libjack and libjack2 (they have the same API and libjack2 isn't necessarily newer than libjack), or using a different version.

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages