Skip to content
Foxenfurter edited this page Mar 7, 2024 · 8 revisions

foxAudioLib

foxAudiolib is a GO (golang) library for the implementation of Audio DSP for Music playback. The vision is that the library is simple to use, and reasonably fast. It is not intended to be fully comprehensive and cover every conceivable use-case.

Initially it is being built to support a LMS (aka (Squeezebox Server) plugin for DSP that will slot into the audio transcoding chain.

Features

  • Read a WAV or raw PCM file from stdin
  • Output a WAV file via stdout
  • read a pre-saved JSON config file which contains DSP settings
  • Build Parametric EQ filters based off the input sampling rate and settings in the DSP Config File, filters will be converted to a FIR Impulse filter, and will include:
  • Peak/Notch
  • High/Low Pass
  • High/Low Shelf
  • Loudness - based off listening level
  • Load any referenced FIR Impulse file from a settings folder and if necessary merge with the PEQ Filter
  • Apply additional filers for overall gain, channel specific gain (balance), delay, and "wideness"
  • Gapless playback

Resources

https://www.roomeqwizard.com - Room EQ Wizard, use for checking impulses that have been generated via PEQ or following merging with PEQ.

https://www.maztr.com/audiofileanalyzer - use for checking any Wav file encoding. Provides details of real bit/depth peak levels etc.

Clone this wiki locally