aboutsummaryrefslogtreecommitdiffstats
path: root/mumd
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2021-06-19 16:25:15 +0200
committerGustav Sörnäs <gustav@sornas.net>2021-06-19 16:25:15 +0200
commita3b963e10a28befbdcd5b448fefe5a719772db3e (patch)
tree09308149be4726ba95a0d1a8673b1a640e525bb1 /mumd
parent91f5b61ca9b4c55683f7c3c24c11618e00ce99e0 (diff)
downloadmum-a3b963e10a28befbdcd5b448fefe5a719772db3e.tar.gz
fallback to default sfx if ogg is disabled
Diffstat (limited to 'mumd')
-rw-r--r--mumd/src/audio/sound_effects.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/mumd/src/audio/sound_effects.rs b/mumd/src/audio/sound_effects.rs
index 82c281b..ae96fa3 100644
--- a/mumd/src/audio/sound_effects.rs
+++ b/mumd/src/audio/sound_effects.rs
@@ -6,6 +6,7 @@ use std::borrow::Cow;
use std::collections::HashMap;
use std::convert::TryFrom;
use std::fs::File;
+#[cfg(feature = "ogg")]
use std::io::Cursor;
use std::io::Read;
use std::path::Path;
@@ -146,6 +147,7 @@ fn unpack_audio(data: Cow<[u8]>, kind: AudioFileKind) -> (Vec<f32>, AudioSpec) {
}
}
+#[cfg(feature = "ogg")]
/// Unpack ogg data.
fn unpack_ogg(data: Cow<[u8]>) -> (Vec<f32>, AudioSpec) {
let mut reader = lewton::inside_ogg::OggStreamReader::new(Cursor::new(data.as_ref())).unwrap();
@@ -161,6 +163,12 @@ fn unpack_ogg(data: Cow<[u8]>) -> (Vec<f32>, AudioSpec) {
(samples, spec)
}
+#[cfg(not(feature = "ogg"))]
+fn unpack_ogg(_: Cow<[u8]>) -> (Vec<f32>, AudioSpec) {
+ warn!("Can't open .ogg without the ogg-feature enabled.");
+ unpack_wav(get_default_sfx())
+}
+
/// Unpack wav data.
fn unpack_wav(data: Cow<[u8]>) -> (Vec<f32>, AudioSpec) {
let reader = hound::WavReader::new(data.as_ref()).unwrap();