Module audio_scanner

Module audio_scanner 

Source
Expand description

Audio sample file scanner with metadata extraction.

Discovers audio samples (extensions in crate::audio_extensions::AUDIO_EXTENSIONS) across the filesystem. Extracts audio metadata (sample rate, bit depth, channels, duration) by reading file headers directly. Supports symlink deduplication and parallel directory traversal via Rayon. Symlinks in directory listings are resolved via metadata(2) so links to files and subdirectories are scanned (broken links are skipped).

StructsΒ§

AudioMetadata

FunctionsΒ§

format_size
get_audio_metadata
get_audio_roots
normalize_macos_path πŸ”’
Normalize macOS firmlink paths: /System/Volumes/Data/Users/… β†’ /Users/… On macOS, / and /System/Volumes/Data are the same volume linked via firmlinks. canonicalize() doesn’t resolve these, causing duplicate directory visits.
parse_aiff πŸ”’
parse_flac πŸ”’
parse_wav πŸ”’
probe_with_symphonia πŸ”’
Fast metadata probe using symphonia β€” reads codec params without decoding.
walk_dir_parallel πŸ”’
walk_for_audio