An open API service indexing awesome lists of open source software.

https://github.com/patryk-ku/spek-rs

Acoustic spectrum analyser. Spek alternative written in Rust.
https://github.com/patryk-ku/spek-rs

audio audio-analyzer egui rust spectrogram spek

Last synced: 3 months ago
JSON representation

Acoustic spectrum analyser. Spek alternative written in Rust.

Awesome Lists containing this project

README

          

MarkText

Spek-rs

Acoustic spectrum analyser. Spek alternative written in Rust. The program is used to create spectrograms of audio files. It uses FFmpeg for audio decoding, like the original.



This application is a GUI for ffmpeg's showspectrumpic function, which allows you to generate spectrograms from audio files. For a detailed explanation of the available options and their functionalities, the best place to check is the official ffmpeg documentation: https://ffmpeg.org/ffmpeg-filters.html#showspectrumpic

I built this because the original Spek appears unmaintained, and installing it on rolling release distributions like Arch Linux often caused dependency issues with older libraries.

## Download and Install



Windows


Windows Installer




Windows Portable




Linux


Linux rpm




Linux rpm




Linux AppImage




Linux AUR




Linux bin




MacOS


MacOS app




MacOS app


The Windows installer is experimental and may not work perfectly on all systems.

MacOS builds are available, but I can't test them since I don't own any Apple devices. Use at your own risk.

All available downloads can be found on the [Releases](https://github.com/patryk-ku/spek-rs/releases) page.

## Compile from source

1. Install Rust and Cargo using instructions from [Rust site](https://www.rust-lang.org/).
2. Clone the repository.
```sh
git clone 'https://github.com/patryk-ku/spek-rs'
cd spek-rs
```
3. Compile executable using Cargo.
```sh
cargo build --release
```
4. The compiled executable file location is: `target/release/spek-rs`.

## Changelog

[CHANGELOG.md](CHANGELOG.md)

## Credits

This project is heavily inspired by the original [Spek](https://www.spek.cc/).

The GUI is built using [egui](https://github.com/emilk/egui).

It includes the [DejaVu Sans](https://dejavu-fonts.github.io/) font, which is distributed under its own license, see [LICENSE-DejaVuFonts.txt](./assets/LICENSE-DejaVuFonts.txt) for details.

The color palettes for the spectrogram are based on those found in the [FFmpeg](https://ffmpeg.org/) source code.