mStream

A music streaming server with filesystem based API and integrated support for various torrent clients.

mStream screenshot 1

mStream is an open-source music streaming server that allows users to host and manage their own audio libraries. It operates as a web application and server, providing a browser-based interface for music playback and library management. The software is deployed as a server and can be installed via Git or Docker, making it suitable for both local home networks and remote hosting environments.

The application uses a filesystem based API that reflects the user's folder structure, enabling music playback before a database is fully built. It supports various audio formats including flac, mp3, wav, ogg, opus, aac, m4a, and m4b. Users can manage their files directly through the web interface or integrate external tools for library growth, such as torrent clients or video downloaders.

Key features

  • Integrated support for Transmission, Deluge, and qBitorrent clients
  • Built-in YT-dlp support for saving music from YouTube to the filesystem
  • On-the-fly transcoding via ffmpeg
  • Multi-threaded Rust scanner for fast file indexing
  • Subsonic API and DLNA/UPnP protocol support
  • Album art auto-fetch from MusicBrainz, iTunes, and Deezer
  • Milkdrop visualizer and waveform renderer in the web app
  • Playlist sharing via signed links

The server is built with NodeJS and uses SQLite for data storage, removing the need for an external database server. It employs a hybrid scanning system that uses a pre-built Rust binary for efficiency, with a JavaScript fallback for unsupported platforms. For headless setups, the server includes a Rust audio engine for server-side playback. The system supports multiple users and directories, and offers a public mode that allows access without authentication until a user account is created. To maintain compatibility with various Subsonic clients, the software provides flexible authentication methods including API keys and encrypted Subsonic-specific passwords.

mStream is designed for users who want a self-hosted music server with direct filesystem control and compatibility with Subsonic-based clients.

Last Modified
Software TypeWeb App / Server
Platform
Last Activity17 days ago
Repository Age10 years
LicenseGPL-3.0
Open Source Alternative to
Open Source Software.io

Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.