yammer/README.md

39 lines
1.2 KiB
Markdown
Raw Normal View History

# Yammer
Audio visualizer thing in guile scheme
# Build
## Dependencies
`guile-sdl2`, `fftw`
## Compiling the library
You need to compile the yammer.c file because it has wrappers around fftw functions.
```sh
gcc -shared yammer.c -o libyammer.so -Wall -Wextra -Werror -fPIC -shared -lfftw3 -lm -O3 -ggdb
```
# Configuration
Copy `config.example.scm` to `config.scm`
Below is a list of values and what they do
* `fifo-file`: The MPD fifo
* `fps`: Self explanatory
* `resolution`: Pixel width of bars
* `scale`: Bar height multiplier
* `color`: Bar color
* `bgcolor`: Background color
* `queue-size`: The size of the queue (minimum of 1), delays displaying bars by `queue-size` frames. Useful if desync is noticed
* `fft`: Whether or not to perform a fourier transform to show frequencies (like `spectrum` mode in most other visualizers)
* `smoothing`: Not implemented
* `smoothing-factor`: Not implemented
# Wishlist
* Native PulseAudio and PipeWire sources
* Smoothing
* Average over `resolution`
* Offload some calculations to the GPU
# Known issues
* When MPD is paused or the program is sleeping for the next frame, the UI doesn't update so you can't exit
* The surface can't be transparent