-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathCargo.toml
106 lines (99 loc) · 3.05 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
[package]
name = "firewheel"
version = "0.1.0"
description = "Flexible, high-performance, and libre audio engine for games (WIP)"
repository = "https://github.com/BillyDM/firewheel"
edition.workspace = true
license.workspace = true
authors.workspace = true
keywords.workspace = true
categories.workspace = true
exclude = ["assets/"]
# Show documentation with all features enabled on docs.rs
[package.metadata.docs.rs]
all-features = true
[workspace.package]
edition = "2021"
license = "MIT OR Apache-2.0"
authors = ["Billy Messenger <60663878+BillyDM@users.noreply.github.com>"]
keywords = ["game", "audio"]
categories = ["game-development", "multimedia::audio"]
[workspace]
members = [
"crates/firewheel-core",
"crates/firewheel-cpal",
"crates/firewheel-graph",
"crates/firewheel-nodes",
"examples/beep_test",
"examples/play_sample",
"examples/sampler_test",
"examples/visual_node_graph",
]
[features]
default = [
"resampler",
"cpal",
"symphonium",
"beep_test_node",
"peak_meter_node",
"sampler_node",
"stereo_to_mono_node",
"volume_pan_node",
"volume_node",
]
# Enables the cpal backend
cpal = ["dep:firewheel-cpal"]
# Enables resampling support when loading audio files
resampler = ["firewheel-core/resampler"]
# Enables using Symphonium for loading audio files
symphonium = ["firewheel-core/symphonium"]
# Enables all built-in factory nodes
all_nodes = [
"beep_test_node",
"peak_meter_node",
"sampler_node",
"stereo_to_mono_node",
"stream_reader_node",
"stream_writer_node",
"volume_pan_node",
"volume_node",
]
# Enables the "beep test" node
beep_test_node = ["firewheel-nodes/beep_test"]
# Enables the peak meter node
peak_meter_node = ["firewheel-nodes/peak_meter"]
# Enables the sampler node
sampler_node = ["firewheel-nodes/sampler"]
# Enables the stereo to mono node
stereo_to_mono_node = ["firewheel-nodes/stereo_to_mono"]
# Enables the stream reader node which allows reading data directly
# from the audio graph as a stream. (This node has not been tested
# yet).
stream_reader_node = ["firewheel-nodes/stream_reader"]
# Enables the stream writer node which allows writing data directly
# to the audio graph as a stream. (This node has not been tested
# yet).
stream_writer_node = ["firewheel-nodes/stream_writer"]
# Enables the volume pan node
volume_pan_node = ["firewheel-nodes/volume_pan"]
# Enables the volume node
volume_node = ["firewheel-nodes/volume"]
[dependencies]
firewheel-core = { path = "crates/firewheel-core", version = "0.1" }
firewheel-graph = { path = "crates/firewheel-graph", version = "0.1" }
firewheel-cpal = { path = "crates/firewheel-cpal", version = "0.1", optional = true }
firewheel-nodes = { path = "crates/firewheel-nodes", version = "0.1", default-features = false }
[workspace.dependencies]
log = "0.4.22"
rtrb = "0.3.1"
thiserror = "2.0.3"
smallvec = "1.13.2"
arrayvec = "0.7.6"
atomic_float = "1.1.0"
bitflags = "2.6.0"
triple_buffer = "8"
thunderdome = "0.6.1"
crossbeam-utils = "0.8"
# Optimize all dependencies in debug builds:
[profile.dev.package."*"]
opt-level = 2