Skip to content

A suite of command-line tools for common WAV audio processing tasks, including conversion from other formats, data augmentation, loudness normalization, spectrogram generation, and validation.

License

Notifications You must be signed in to change notification settings

RustedBytes/wav-files-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 

Repository files navigation

wav-files-toolkit

  • Rust-based, with test suits
  • Binaries are statically-linked

Download the latest archive from the Releases page.

Tools

  • wav-files-convert: Convert MP3, FLAC, OGG, M4A, AAC, WMA, AIFF, AU, MP2 to WAV
  • wav-files-augment: Create modified audio by adding noise, shifting pitch for WAV files
  • wav-files-spectrogram: Generate visual spectrogram images from audio for WAV files
  • wav-files-normalize: Adjust audio to a target peak or integrated loudness (LUFS) of WAV files
  • wav-files-format: Standardize sample rate, bit depth, and channels of WAV files
  • wav-files-validate: Validate file integrity of WAV files in a folder
  • wav-files-concat: Concatenate audio files into one file
  • wav-files-chunker: Chunk WAV files into smaller pieces
  • wav-files-ss: Speech Separation (using WebRTC VAD) for WAV files
  • wav-files-filter: Filter audios by their length
  • wav-files-stats: Calculate statistics of a folder with WAV files
  • wav-files-trim: Automatically detect and trim silence from the start/end of WAV files, with optional threshold settings
  • wav-files-denoise: Apply noise reduction tool nnnoiseless to remove background noise from WAV files
  • wav-files-denoise-api: Apply noise reduction API to remove background noise from WAV files
  • wav-files-vad-api: Extract speech using an API that performs Voice Speech Detection for WAV files
  • wav-files-tempo: Adjust playback speed/tempo of WAV files without altering pitch (using time-stretching algorithms like WSOLA)
  • wav-files-mix: Overlay or blend multiple WAV files into a single output, with volume balancing and channel mapping (e.g., stereo mixdown)
  • wav-files-echo: Add echo, reverb, or chorus effects to WAV files using delay-based DSP parameters (e.g., decay time, wet/dry mix)

Demo

Good next programs to implement

Open the list
  • wav-files-eq: Apply equalization filters to boost/cut specific frequency bands in WAV files. Why? Builds on spectrogram visualization for targeted audio shaping; useful for mastering or voice enhancement.
  • wav-files-compress: Apply dynamic range compression to even out loud/soft parts in WAV files, with adjustable ratio/threshold. Why? Pairs with normalization for professional loudness control; prevents clipping in mixed or concatenated files.
  • wav-files-metadata: Edit or extract embedded metadata (e.g., artist, title, comments) in WAV files using RIFF chunks. Why? Fills a gap in file handling; integrates with stats and validation for better organization in folders.
  • wav-files-waveform: Generate static waveform plot images (PNG/SVG) from WAV files, with customizable styles. Why? Expands visualization beyond spectrograms; quick for previews or reports alongside stats.
  • wav-files-fft: Compute and export Fast Fourier Transform (FFT) data as text/CSV for frequency analysis of WAV files. Why? Deeper dive beyond spectrograms for quantitative spectral insights; supports research or automated quality checks.

Authors

Cite

@software{Smoliakov_Wav_Files_Toolkit_2025,
  author = {Smoliakov, Yehor},
  month = oct,
  title = {{WAV Files Toolkit}},
  url = {https://github.com/RustedBytes/wav-files-toolkit},
  version = {0.2.0},
  year = {2025}
}

About

A suite of command-line tools for common WAV audio processing tasks, including conversion from other formats, data augmentation, loudness normalization, spectrogram generation, and validation.

Topics

Resources

License

Stars

Watchers

Forks