{"repo":"vnghia/nghe","free":true,"listed":false,"github":"https://github.com/vnghia/nghe","clone":"git clone https://github.com/vnghia/nghe.git","description":"An OpenSubsonic implementation in Rust","language":"Rust","stars":38,"topics":["audio","music","music-server","opensubsonic","rust","self-hosted","streaming-audio"],"license":"AGPL-3.0","category":"media-processing","readme_excerpt":"Nghe An implementation of OpenSubsonic API in Rust - Nghe - Features - Getting started - Client - Configuration - Server - Database - Artist - Parsing - Song - Album - Id3v2 - Number and total - Scan - Transcoding - Art - S3 - Scan process - How a song is uniquely identified ? - Scan mode - Quick - Full - Force - How an artist is uniquely identified ? - How an album is uniquely identified ? - Permission model - Access to a song-level resource - Access to an artist or album level resource - Compilation album - Roadmap Features - Written in Rust with performance in-mind. - All tags are multiple by default (artists, album artists, languages, etc). - Well-tested and highly customizable. - Well-defined permission model with music folders. - Multi-platform, runs on Linux, FreeBSD, MacOS and Windows. Docker images with two variants GNU or MUSL are also provided. - Bridging with ffmpeg c api for in-memory transcoding and smooth stream experience. Most common formats (opus, mp3, acc, wav, etc) are supported. Does not required any manual configuration beforehand, just maxBitRate and format in the request parameters are enough. - Synchoronized lyrics from external lrc files. - AWS S3 compatible storage support. Tested with Minio for every commit. Getting started The easiest way for getting started is using docker. Below is a docker-compose.yaml example. A random hex key can be generated using openssl rand -hex 16 . The minimum required postgres version is 16. Alternatively, you can also","default_branch":null,"files":null,"tree":[],"storefront":"/r/vnghia","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/vnghia/nghe/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}