mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-09 13:16:44 +01:00
wip: AudioEngine (new jack init)
This commit is contained in:
parent
98cf8da424
commit
2303b258f6
5 changed files with 108 additions and 80 deletions
|
|
@ -24,10 +24,10 @@ impl SequencerCli {
|
|||
let clock = transport.read().unwrap().clock.clone();
|
||||
let sequencer = Sequencer {
|
||||
jack: None,
|
||||
player: None,
|
||||
focus_cursor: (1, 1),
|
||||
phrases: Arc::new(RwLock::new(PhrasePool::new())),
|
||||
editor: PhraseEditor::new(),
|
||||
player: PhrasePlayer::new(&clock),
|
||||
transport: self.transport.then_some(transport),
|
||||
clock,
|
||||
};
|
||||
|
|
@ -44,11 +44,13 @@ impl SequencerCli {
|
|||
}
|
||||
let sequencer = Arc::new(RwLock::new(sequencer));
|
||||
let jack = jack.activate(&sequencer.clone(), Sequencer::callback)?;
|
||||
let jack = Some(jack.into());
|
||||
let jack = Arc::new(jack);
|
||||
let player = PhrasePlayer::new(&jack, &clock);
|
||||
if let Some(ref transport) = sequencer.read().unwrap().transport {
|
||||
transport.write().unwrap().jack = jack.clone();
|
||||
transport.write().unwrap().jack = Some(jack.clone());
|
||||
}
|
||||
sequencer.write().unwrap().jack = jack.clone();
|
||||
sequencer.write().unwrap().jack = Some(jack.clone());
|
||||
sequencer.write().unwrap().player = player;
|
||||
Tui::run(sequencer).map(|_|())
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue