All Projects → epoupon → Lms

epoupon / Lms

Licence: gpl-3.0
Lightweight Music Server. Access your self-hosted music using a web interface.

Projects that are alternatives of or similar to Lms

React Cassette Player
Simple ReactJS HTML5 audio player component built with SVG icons from The Noun Project.
Stars: ✭ 93 (-70.48%)
Mutual labels:  audio, music, music-player
Tonejs Instruments
A small instrument sample library with quick-loader for tone.js
Stars: ✭ 172 (-45.4%)
Mutual labels:  audio, music, music-player
Smusic
html5音乐列表播放器
Stars: ✭ 106 (-66.35%)
Mutual labels:  audio, music, music-player
Airsonic
📡 ☁️ 🎶Airsonic, a Free and Open Source community driven media server (fork of Subsonic and Libresonic)
Stars: ✭ 1,876 (+495.56%)
Mutual labels:  self-hosted, audio, music
Amplipi
Whole House Audio System 🔊
Stars: ✭ 125 (-60.32%)
Mutual labels:  raspberry-pi, audio, music
Vyplayindicator
PlayIndicator inspired by Apple's Music Player.
Stars: ✭ 47 (-85.08%)
Mutual labels:  audio, music, music-player
Musicplayer
A minimal music player built on electron.
Stars: ✭ 145 (-53.97%)
Mutual labels:  audio, music, music-player
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: ✭ 600 (+90.48%)
Mutual labels:  audio, music, music-player
Soundspice Mobile
A light-weight and minimalist music player for Android
Stars: ✭ 289 (-8.25%)
Mutual labels:  audio, music, music-player
Raveberry
A multi-user music server with a focus on participation
Stars: ✭ 442 (+40.32%)
Mutual labels:  raspberry-pi, music, music-player
Supysonic
Supysonic is a Python implementation of the Subsonic server API.
Stars: ✭ 187 (-40.63%)
Mutual labels:  self-hosted, audio, music
Otto
Sampler, Sequencer, Multi-engine synth and effects - in a box! [WIP]
Stars: ✭ 2,390 (+658.73%)
Mutual labels:  raspberry-pi, audio, music
Pandoraplayer
🅿️ PandoraPlayer is a lightweight music player for iOS, based on AudioKit and completely written in Swift.
Stars: ✭ 1,037 (+229.21%)
Mutual labels:  audio, music, music-player
Audio player flutter
🎧 Apple Music / Tidal Audio Player for Flutter
Stars: ✭ 52 (-83.49%)
Mutual labels:  audio, music, music-player
Strawberry
🍓 Strawberry Music Player
Stars: ✭ 972 (+208.57%)
Mutual labels:  audio, music, music-player
Sbplayerclient
支持全格式的mac版视频播放器
Stars: ✭ 110 (-65.08%)
Mutual labels:  audio, music, music-player
Tauonmusicbox
The Linux desktop music player from the future! 🌆
Stars: ✭ 494 (+56.83%)
Mutual labels:  audio, music, music-player
Audio Visualizer Android
🎵 [Android Library] A light-weight and easy-to-use Audio Visualizer for Android.
Stars: ✭ 581 (+84.44%)
Mutual labels:  audio, music, music-player
Swift Radio Pro
Professional Radio Station App for iOS!
Stars: ✭ 2,644 (+739.37%)
Mutual labels:  audio, music, music-player
Multi Room Audio Centralized Audio For Home
🎵 This Github Repository provides details on setting up a centralized audio system for your home using nothing but Raspberry Pi's and Old Speakers.
Stars: ✭ 189 (-40%)
Mutual labels:  raspberry-pi, audio, music-player

LMS - Lightweight Music Server

GitHub release (latest by date) Build Status Language grade: C/C++

LMS is a self-hosted music streaming software: access your music collection from anywhere using a web interface!

A demo instance is available. Note the administration panel is not available.

Main features

  • Low memory requirements: the demo instance runs on a Raspberry Pi Zero W
  • Recommendation engine
  • Audio transcode for maximum interoperability and low bandwith requirements
  • Multi-value tags: artists, genres, composers, lyricists, moods, ...
  • Compilation support
  • MusicBrainz Identifier support to handle duplicated artist and release names
  • Disc subtitles support
  • ReplayGain support
  • Persistent play queue across sessions
  • Systemd integration
  • User management
  • Subsonic API, with the following additional features:
    • Playlists
    • Bookmarks

Music discovery

LMS provides several ways to help you find the music you like:

  • Tag-based filters (ex: Rock, Metal and Aggressive, Electronic and Relaxed, ...)
  • Recommendations for similar artists and albums
  • Radio mode, based on what is in the current playqueue
  • Searches in album, artist and track names (including sort names)
  • Starred Albums/Artists/Tracks
  • Various tags to help you filter your music: mood, albummood, albumgenre, albumgrouping, ...
  • Random/Starred/Most played/Recently played/Recently added for Artist/Albums/Tracks, allowing you to search for things like:
    • Recently added Electronic artists
    • Random Metal and Aggressive albums
    • Most played Relaxed tracks
    • Starred Jazz albums
    • ...

The recommendation engine uses two different sources:

  1. Tags that are present in the audio files
  2. Acoustic similarities of the audio files, using a trained Self-Organizing Map

Notes on the self-organizing map:

  • training the map requires significant computation time on large collections (ex: half an hour for 40k tracks)
  • audio acoustic data is pulled from AcousticBrainz. Therefore your audio files must contain the MusicBrainz Identifier.
  • to enable the audio similarity source, you have to enable it first in the administration panel.

Subsonic API

The API version implemented is 1.12.0 and has been tested on Android using the official application, Ultrasonic and DSub.

Since LMS uses metadata tags to organize music, a compatibility mode is used to navigate through the collection using the directory browsing commands.

The Subsonic API is enabled by default.

Note: since LMS may store hashed and salted passwords or may forward authentication requests to external services, it cannot handle the token authentication method defined from version 1.13.0.

Keyboard shortcuts

  • Play/pause: Space
  • Previous track: Ctrl + Left
  • Next track: Ctrl + Right

Installation

See INSTALL.md file.

Contributing

Contributions are welcome! Please submit your pull requests against the develop branch.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].