added preliminary sampler node

This commit is contained in:
Weird Constructor 2021-05-19 03:58:33 +02:00
parent 41dc5b5671
commit 2772d27ab8
3 changed files with 22 additions and 1 deletions

View file

@ -12,6 +12,8 @@ mod node_out;
mod node_test; mod node_test;
#[allow(non_upper_case_globals)] #[allow(non_upper_case_globals)]
mod node_tseq; mod node_tseq;
#[allow(non_upper_case_globals)]
mod node_sampl;
pub mod tracker; pub mod tracker;
mod satom; mod satom;
@ -31,6 +33,7 @@ use node_sin::Sin;
use node_out::Out; use node_out::Out;
use node_test::Test; use node_test::Test;
use node_tseq::TSeq; use node_tseq::TSeq;
use node_sampl::Sampl;
pub const MIDI_MAX_FREQ : f32 = 13289.75; pub const MIDI_MAX_FREQ : f32 = 13289.75;
@ -270,6 +273,10 @@ macro_rules! node_list {
[3 trk4] [3 trk4]
[4 trk5] [4 trk5]
[5 trk6], [5 trk6],
sampl => Sampl UIType::Generic UICategory::Osc
(0 freq n_pit d_pit -1.0, 1.0, 440.0)
{1 0 sample audio_unloaded("") 0 0}
[0 sig],
sin => Sin UIType::Generic UICategory::Osc sin => Sin UIType::Generic UICategory::Osc
(0 freq n_pit d_pit -1.0, 1.0, 440.0) (0 freq n_pit d_pit -1.0, 1.0, 440.0)
[0 sig], [0 sig],
@ -310,6 +317,10 @@ pub mod labels {
pub mod TSeq { pub mod TSeq {
pub const cmode : [&'static str; 3] = ["RowT", "PatT", "Phase"]; pub const cmode : [&'static str; 3] = ["RowT", "PatT", "Phase"];
} }
pub mod Sampl {
pub const sample : [&'static str; 0] = [];
}
} }
impl UICategory { impl UICategory {

View file

@ -123,25 +123,35 @@ I have a pretty detailed TODO list in my private notebook.
You need nightly rust: You need nightly rust:
```text
rustup toolchain install nightly rustup toolchain install nightly
```
To run the example: To run the example:
```text
cargo +nightly run --release --example jack_demo cargo +nightly run --release --example jack_demo
```
You might need following dependencies (Ubuntu Linux): You might need following dependencies (Ubuntu Linux):
```text
sudo apt install libjack0 libjack-jackd2-dev qjackctl sudo apt install libjack0 libjack-jackd2-dev qjackctl
```
These might work on Debian too: These might work on Debian too:
```text
sudo apt install libjack0 libjack-dev sudo apt install libjack0 libjack-dev
```
## Running the Automated Testsuite: ## Running the Automated Testsuite:
There exists an automate test suite for the DSP and backend code: There exists an automate test suite for the DSP and backend code:
```text
cargo test cargo test
```
## Known Bugs ## Known Bugs

View file

@ -32,7 +32,7 @@ impl SampleLibrary {
} }
} }
/// Synchronous blocking loading of a sample from `path`. /// Synchronous/blocking loading of a sample from `path`.
/// Returns an SAtom reference that you can clone and send directly /// Returns an SAtom reference that you can clone and send directly
/// to the sampling node of your choice. /// to the sampling node of your choice.
/// ///