|
||
---|---|---|
lonelyradio_types | ||
microserve | ||
monoclient | ||
monoclient-s | ||
monolib | ||
monoloader | ||
platform | ||
src | ||
.gitignore | ||
.rustfmt.toml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md |
lonelyradio
Broadcast audio over the internet.
Decodes audio streams using symphonia.
Optionally transcodes audio into and from FLAC using flacenc-rs and claxon.
Installation
Install music server
cargo install --git https://github.com/ivabus/lonelyradio --tag 0.5.0 lonelyradio
Install CLI client
cargo install --git https://github.com/ivabus/lonelyradio --tag 0.5.0 monoclient
Install GUI (Slint) client
cargo install --git https://github.com/ivabus/lonelyradio --tag 0.5.0 monoclient-s
Run
lonelyradio [-a <ADDRESS:PORT>] [-p|--public-log] [-w|--war] [-m|--max-samplerate M] [--xor-key-file FILE] [--no-resampling] [-f|--flac] <MUSIC_FOLDER>
All files (recursively) will be shuffled and played back. Public log will be displayed to stdout, private to stderr.
-m|--max-samplerate M
will resample tracks which samplerate exceeds M to M
--xor-key-file FILE
will XOR all outgoing bytes looping through FILE
-f|--flac
will enable (experimental) FLAC compression
Clients
monoclient is a recommended CLI player for lonelyradio that uses monolib
monoclient <SERVER>:<PORT>
monoclient-s is a experimental GUI player for lonelyradio built with Slint
monoclient-s
Desktop integration will be added later.
Other clients
SwiftUI client is availible in platform directory.
monoloader is a tool, that allows you to download individual audio tracks from lonelyradio-compatible servers.
monolib provides a C API compatible with lonelyradio for creating custom clients.
monolib API stability
As lonelyradio has not yet reached its first major release, the API may (and will) break at any point.
Microphone server
Experimental server (lonelyradio-compatible) for streaming audio from your microphone is available in the microserve crate.
License
lonelyradio, monolib and monoclient, as well as all other crates in this repository, are licensed under the terms of the MIT license.