diff --git a/src-tauri/src/cast/commands.rs b/src-tauri/src/cast/commands.rs index 72ccd83e2..c992b4592 100644 --- a/src-tauri/src/cast/commands.rs +++ b/src-tauri/src/cast/commands.rs @@ -273,6 +273,7 @@ fn content_type_from_format(format: &AudioFormat) -> &'static str { AudioFormat::Wav => "audio/wav", AudioFormat::Aiff => "audio/aiff", AudioFormat::Ape => "audio/ape", + AudioFormat::Mp3 => "audio/mpeg", AudioFormat::Unknown => "application/octet-stream", } } diff --git a/src-tauri/src/library/database.rs b/src-tauri/src/library/database.rs index d12c52f27..4cc1906ad 100644 --- a/src-tauri/src/library/database.rs +++ b/src-tauri/src/library/database.rs @@ -708,6 +708,7 @@ impl LibraryDatabase { "WAV" => AudioFormat::Wav, "AIFF" => AudioFormat::Aiff, "APE" => AudioFormat::Ape, + "MP3" => AudioFormat::Mp3, _ => AudioFormat::Unknown, } } diff --git a/src-tauri/src/library/metadata.rs b/src-tauri/src/library/metadata.rs index 3785a1e56..26487959f 100644 --- a/src-tauri/src/library/metadata.rs +++ b/src-tauri/src/library/metadata.rs @@ -414,6 +414,7 @@ impl MetadataExtractor { Some("wav") => AudioFormat::Wav, Some("aiff") | Some("aif") => AudioFormat::Aiff, Some("ape") => AudioFormat::Ape, + Some("mp3") => AudioFormat::Mp3, _ => AudioFormat::Unknown, } } @@ -665,7 +666,7 @@ mod tests { ); assert_eq!( MetadataExtractor::detect_format(Path::new("test.mp3")), - AudioFormat::Unknown + AudioFormat::Mp3 ); } } diff --git a/src-tauri/src/library/models.rs b/src-tauri/src/library/models.rs index c9396bbeb..cce3af511 100644 --- a/src-tauri/src/library/models.rs +++ b/src-tauri/src/library/models.rs @@ -10,6 +10,7 @@ pub enum AudioFormat { Wav, Aiff, Ape, + Mp3, Unknown, } @@ -27,6 +28,7 @@ impl std::fmt::Display for AudioFormat { AudioFormat::Wav => write!(f, "WAV"), AudioFormat::Aiff => write!(f, "AIFF"), AudioFormat::Ape => write!(f, "APE"), + AudioFormat::Mp3 => write!(f, "MP3"), AudioFormat::Unknown => write!(f, "Unknown"), } } diff --git a/src-tauri/src/library/scanner.rs b/src-tauri/src/library/scanner.rs index 36dd23fff..cd51eabed 100644 --- a/src-tauri/src/library/scanner.rs +++ b/src-tauri/src/library/scanner.rs @@ -6,7 +6,7 @@ use walkdir::WalkDir; use crate::library::LibraryError; /// Supported audio file extensions -const SUPPORTED_AUDIO_EXTENSIONS: &[&str] = &["flac", "m4a", "wav", "aiff", "aif", "ape"]; +const SUPPORTED_AUDIO_EXTENSIONS: &[&str] = &["flac", "m4a", "wav", "aiff", "aif", "ape", "mp3"]; /// CUE file extension const CUE_EXTENSION: &str = "cue"; @@ -105,7 +105,7 @@ mod tests { assert!(LibraryScanner::is_supported_audio_extension("flac")); assert!(LibraryScanner::is_supported_audio_extension("wav")); assert!(LibraryScanner::is_supported_audio_extension("m4a")); - assert!(!LibraryScanner::is_supported_audio_extension("mp3")); + assert!(LibraryScanner::is_supported_audio_extension("mp3")); assert!(!LibraryScanner::is_supported_audio_extension("txt")); } }