MusikCube
Sign in to saveAlso known as mC
musikcube is a free and open-source cross-platform, terminal-based audio player software and streaming server.
Source code
a cross-platform, terminal-based audio engine, library, player and server written in c++. be sure to also read through a the user guide, which describes app's navigation paradigm and lists all the default keyboard shortcuts. if you want to build it from source, the instructions are here. while the main musikcube app runs in the console, you can also stream audio from (and even remote control) musikcube using the musikdroid android app, which can be downloaded in the releases section above. it looks like this: musikcube runs well on a raspberry pi, connected to your home stereo. see here for detailed setup instructions. if you'd like to compile the project yourself, you can check out the build instructions. musikcube ships with a streaming audio server enabled by default. it runs a websocket server on port 7905, used for metadata retrieval. an http server runs on port 7906, and is used to serve (optionally transcoded) audio data to clients. it's important to understand that, out of the box, the server (and remote api) should NOT be considered safe for use outside of a local network . the websockets service only supports a simple password challenge, and the audio http server just handles Basic authorization. it does not provide ssl or tls. the server also stores the password in plain text in a settings file on the local machine. you can fix some of this using a reverse proxy to provide ssl termination. details in the ssl-server-setup section. while this improves things, you should exercise caution exposing these services over the internet. if you're interested in writing your own frontend, api documentation is available here. the musikcube sdk is a set of small, pure-virtual c++ classes and a handful of enums and constants. they're still in the process of being slimmed down. you can see what they currently look like here: sqlite ffmpeg alsa taglib websocketpp rxjava ncurses utfcpp libopenmpt pulseaudio glide libmicrohttpd rxandroid pdcurses (win32a variant) nlohmann json libgme core audio libcurl stetho recycler-fast-scroll kissfft exoplayer wasapi.aspx) openssl fabric sigslot directsound.aspx) nv-websocket-client AndroidVideoCache wcwidth.c waveout.aspx) okhttp pipewire
Excerpt from the source-code README · 10,637 chars · not written by Vinony
Wikidata facts
- Official website
- musikcube.com
- Image
- Musikcube screenshot.png
Show 3 more facts
- software version identifier
- 3.0.5
- source code repository URL
- github.com/clangen/musikcube
- Commons category
- MusikCube
Sources (7)
via Wikidata · CC0
~1 min read
Article
4 sectionsContents
- Features
- Licensing
- See also
- External links
musikcube is a free and open-source cross-platform, terminal-based audio player software and streaming server.
==Features== musikcube is based on a modular plug-in architecture, and uses plug-ins written in C++. Plug-ins provide core functionality for audio decoding, data streaming, output device handling, metadata parsing, digital signal processing, and more. Plugins currently exist to provide support for many popular audio codecs, including MP3, M4A, Ogg Vorbis, and FLAC.