Add features and start writing interfaces

This commit is contained in:
2025-11-28 15:37:30 +01:00
parent 804c2e221c
commit 7fb2e6aade
5 changed files with 20 additions and 1 deletions

View File

@@ -4,5 +4,10 @@ version = "0.1.0"
edition = "2024" edition = "2024"
[dependencies] [dependencies]
jack = "0.13.3" coreaudio-rs = { version = "0.13.0", optional = true }
jack = {version = "0.13.3", optional = true }
lib = { path = "../lib/" } lib = { path = "../lib/" }
[features]
jack = ["dep:jack"]
coreaudio = ["dep:coreaudio-rs"]

View File

View File

View File

@@ -0,0 +1,12 @@
mod jack;
mod coreaudio;
trait AudioBackend {
// Start a audio backend client
// It should be executed either on the startup,
// or when the audio backend is switched
fn start_client();
// Initialization of the client should happen
// when a project is opened.
fn init_client();
}

View File

@@ -1,3 +1,5 @@
mod audio_engine;
use lib::{self, metadata::Metadata, track::Track}; use lib::{self, metadata::Metadata, track::Track};
fn main() { fn main() {