Plays your music collection over the web in your browser
Replace slf4j/slf4j-log4j12 with logback
Cleanup RSS feed


browse  log 



You can also use your local clone with git send-email.


#What is this?

A simple application to stream audio from your server to your browser for listening. It provides a HTML5 frontend to audio files (MP3, FLAC, Ogg Vorbis/Opus, M4A) for searching and playing. The files are recoded before streaming them to save bandwidth and be compatible with the browser you are using.

#How does it work?

This application is build using Clojure and ClojureScript to handle user requests and uses GStreamer to recode audio files. The recoded audio files are cached for later use.


The source directory includes a Dockerfile to build a docker image;

lein uberjar
docker build -t semira .
docker run -p 8080:8080 -v $HOME/Music:/home/app/Music:ro semira

When Jetty reports it is listening on port 8080, hit the /update location to index the MP3, FLAC, Ogg Vorbis/Opus and M4A files in your home Music directory. The /update location will redirect to / after a few seconds while the indexer continues to collect the audio meta data; newly collected data will not show up until reload.


Copyright (C) 2021 Remco van 't Veer

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.