aboutsummaryrefslogtreecommitdiffstats
path: root/mumd
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2020-11-27 21:04:51 +0100
committerGustav Sörnäs <gustav@sornas.net>2020-11-28 02:47:16 +0100
commit7314922fe32ab29757c61ed613b76fb0a0ad78b5 (patch)
treee64d7ec8708c8579c4ae28fbe365ccd8d3a8ae41 /mumd
parent9f02a43affa775cc45a0e3ba9147a2f4a882a6ff (diff)
downloadmum-7314922fe32ab29757c61ed613b76fb0a0ad78b5.tar.gz
remove sound-effects feature
Diffstat (limited to 'mumd')
-rw-r--r--mumd/Cargo.toml11
-rw-r--r--mumd/src/audio.rs20
2 files changed, 7 insertions, 24 deletions
diff --git a/mumd/Cargo.toml b/mumd/Cargo.toml
index 936353a..ba0f5a0 100644
--- a/mumd/Cargo.toml
+++ b/mumd/Cargo.toml
@@ -9,20 +9,21 @@ edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
-default = ["notifications", "sound-effects"]
+default = ["notifications"]
notifications = ["libnotify"]
-sound-effects = ["hound", "dasp_signal", "dasp_interpolate"]
-
[dependencies]
mumlib = { path = "../mumlib" }
argparse = "0.2"
bytes = "0.5"
cpal = { git = "https://github.com/RustAudio/cpal" }
+dasp_interpolate = { version = "0.11", features = ["linear"] }
+dasp_signal = "0.11"
futures = "0.3"
futures-util = "0.3"
+hound = "3.4"
ipc-channel = "0.14"
log = "0.4"
mumble-protocol = "0.3"
@@ -36,9 +37,5 @@ tokio-util = { version = "0.3", features = ["codec", "udp"] }
libnotify = { version = "1.0", optional = true }
-dasp_signal = { version = "0.11", optional = true }
-dasp_interpolate = { version = "0.11", features = ["linear"], optional = true }
-hound = { version = "3.4", optional = true }
-
#compressor = "0.3"
#daemonize = "0.4"
diff --git a/mumd/src/audio.rs b/mumd/src/audio.rs
index 9741a2e..6d4d71a 100644
--- a/mumd/src/audio.rs
+++ b/mumd/src/audio.rs
@@ -1,10 +1,12 @@
pub mod input;
pub mod output;
-#[cfg(feature = "sound-effects")]
use crate::audio::output::SaturatingAdd;
+
use cpal::traits::{DeviceTrait, HostTrait, StreamTrait};
use cpal::{SampleFormat, SampleRate, Stream, StreamConfig};
+use dasp_interpolate::linear::Linear;
+use dasp_signal::{self as signal, Signal};
use log::*;
use mumble_protocol::voice::VoicePacketPayload;
use opus::Channels;
@@ -12,14 +14,8 @@ use std::collections::hash_map::Entry;
use std::collections::{HashMap, VecDeque};
use std::sync::{Arc, Mutex};
use tokio::sync::{mpsc, watch};
-#[cfg(feature = "sound-effects")]
-use {
- dasp_interpolate::linear::Linear,
- dasp_signal::{self as signal, Signal},
-};
//TODO? move to mumlib
-#[cfg(feature = "sound-effects")]
pub const EVENT_SOUNDS: &[(&'static [u8], NotificationEvents)] = &[
(include_bytes!("resources/connect.wav"), NotificationEvents::ServerConnect),
(
@@ -78,10 +74,7 @@ pub struct Audio {
client_streams: Arc<Mutex<HashMap<u32, output::ClientStream>>>,
- #[cfg(feature = "sound-effects")]
sounds: HashMap<NotificationEvents, Vec<f32>>,
-
- #[cfg(feature = "sound-effects")]
play_sounds: Arc<Mutex<VecDeque<f32>>>,
}
@@ -223,7 +216,6 @@ impl Audio {
output_stream.play().unwrap();
- #[cfg(feature = "sound-effects")]
let sounds = EVENT_SOUNDS
.iter()
.map(|(bytes, event)| {
@@ -256,11 +248,9 @@ impl Audio {
input_volume_sender,
input_channel_receiver: Some(input_receiver),
client_streams,
- #[cfg(feature = "sound-effects")]
sounds,
output_volume_sender,
user_volumes,
- #[cfg(feature = "sound-effects")]
play_sounds,
}
}
@@ -344,7 +334,6 @@ impl Audio {
}
}
- #[cfg(feature = "sound-effects")]
pub fn play_effect(&self, effect: NotificationEvents) {
let samples = self.sounds.get(&effect).unwrap();
@@ -357,7 +346,4 @@ impl Audio {
let l = play_sounds.len();
play_sounds.extend(samples.iter().skip(l));
}
-
- #[cfg(not(feature = "sound-effects"))]
- pub fn play_effect(&self, _: NotificationEvents) {}
}