Soundr is a simple, open-source, cross-platform audio playing server written in go.
Go to file
2022-05-16 21:19:00 +02:00
resources - add documentation 2022-05-16 20:43:33 +02:00
.gitignore - add documentation 2022-05-16 20:43:33 +02:00
apiDocs.yml - add documentation 2022-05-16 20:43:33 +02:00
go.mod Add support for more audio types 2022-05-16 21:19:00 +02:00
go.sum Add support for more audio types 2022-05-16 21:19:00 +02:00
handlerFunctions.go Add support for more audio types 2022-05-16 21:19:00 +02:00
LICENSE inital commit 2022-05-14 20:33:45 +02:00
README.MD Add support for more audio types 2022-05-16 21:19:00 +02:00
soundr.go - add documentation 2022-05-16 20:43:33 +02:00
webRoutes.go Add support for more audio types 2022-05-16 21:19:00 +02:00

Soundr Logo

Soundr

Soundr is a simple, open-source, cross-platform audio playing server written in go. It aims to be simple to setup and work in many envoriments. It is also designed to be easy to use and maintain. Soundr is able to play multiple audio files at the same time. It is able to intigrate well as it uses a REST endpoint. Swagger Documentation for that endpoint is available in apiDocs.yml. The software it self is written in go and uses the BEEP library. It is made to be shipped as a single executable. Another target was a minimal dependency tree. Initally it was written to be used with Bitfocus Companion in a more professional envoriment. (A client for Companion is currently WiP)

Installation

Installation is as simple as it gets as it is a single executable. Download one of the releases, drop your sounds into the /sounds folder and run the executable.

Configuration

The configuration is done in the conf.json file. This is the basic json configuration file layout:

{
    "Port": 8082
}

Usage

Drop your sounds into the /sounds. You can play them by sending a GET request to the /v1/play endpoint. You need to know the base64 encoded file name of the sound you want to play. You can get started by querying /v1/list. It will return a list of all sounds with their respective base64 encoded file name. Use that base64 as the file parameter in the request.

Note: The sounds must be in the format *.mp3, *.wav, *.flac or *.ogg (flac files may take longer time to buffer).