NSMusicS | Nine Song Music : 九歌音乐
It should not only implement its own streaming services, but also be compatible with various mainstream open-source streaming servers, And implement cross platform professional music clients for various operating systems, ensuring data interoperability between the client and server of each operating system (desktop:Windows,Linux,MacOs. mobile: Android, IOS. Car System: Android)
The Chinese name of the project is "Nine Songs Music | 九歌", abbreviated as NSMusicS
inspired by ["Chu Ci"] | 楚辞, to commemorate ["Qu Yuan"] | 屈原
In addition, NSMusicS also supports local mode to use local music libraries. And plan to support various types of network cloud drives,such as webdev,onedriver....
After the initial development and improvement of NSMusicS, it will be integrated into various software ecosystems, such as:
- Xiaomi Home Integration for Home Assistant: github: ha_xiaomi_home (米家集成:智能家居系统)
- Xiaomi ecosystem of people, cars, and homes (小米:人车家全生态)
NSMusicS-Electron | NineSong Music(Desktop-client) : 九歌音乐
- supporting the Windows10+、MacOS(arm、x64)、Linux platform (which will soon support Docker)
- music library management
- network cloud drives (webdev , onedriver....)
- compatible with streaming media servers (navidrome , jellyfin , emby)
- compatible with streaming media servers (NineSong、Plex)
- compatible with local music libraries (win10+)
- compatible with local music libraries (which will soon support MacOS(arm、x64)、Linux、Docker)
- mpv -play (win10+、MacOS(arm、x64))
- mpv -play (which will soon support Linux、Docker)
- professional audio playback
- Rich sound effects playback
- internationalization
- various music usage scenarios(For NineSong: Server)
- System backend playback -tray (win10+、MacOS(arm、x64))
- System backend playback -tray (which will soon support Linux)
NineSong | NineSong Multimedia(Server) : 九歌多媒体
- Compatible with streaming media servers (Jellyfin、Emby、Navidrome、Plex)
- General file library management(Audio、Video、Image、Text、Document、Archive、Executable、Database、Unknown)
- Scene of Streaming Music and Karaoke
- Scene of AI-Models deploy
- Scene of Intelligent Gallery album
- Scene of Film and Television Center
- Scene of Online Notes
- Scene of Document Workbench
- Scene of E-book reader
- Knowledge graph Recommendation system
- Internationalization
NSMusicS-Flutter | NineSong Music(Mobile-client) : 九歌音乐
- music library management
- professional audio playback
- Rich sound effects playback
- internationalization
- various music usage scenarios(For NineSong: Server)
Screenshots:
- NSMusicS(Electron, Docker-Web):Under development
- Normal Play Model
- Mini Play Model: Desktop floating mini window
Downloads
Group Chat
- QQ群聊
- NSMusicS交流群(1):228440692
- Other | None
Version:
Project | Development status | Technology Framework | Author/Copyright Owner | Operating systems | LICENSE |
---|---|---|---|---|---|
NSMusicS : 九歌音乐桌面客户端 (Desktop、Docker) |
updateing | electron,nodejs,vue,ts,sqlite,docker |
Xiang Cheng | Windows Linux(ubuntu+) Docker MacOS |
A-GPL 3.0 |
NineSong : 九歌多媒体服务端 (Docker) |
updateing | Go,MongoDB,Gin,JWT,sqlite,docker |
Xiang Cheng | Docker | A-GPL 3.0 |
NSMusicS_For_Flutter | will developed | flutter,dart,androidstudio |
Xiang Cheng | Android11++ IOS HarmonyOS |
A-GPL 3.0 |
NSMusicS_For_Audio | will developed | pytorch,py,jupyter,matlab |
Xiang Cheng | Windows10++ Linux Docker |
A-GPL 3.0 |
NSMusicS_For_KG | will developed | NebulaGraph / Neo4j ![]() |
Xiang Cheng | Windows10++ Linux Docker |
A-GPL 3.0 |
NSMusicS-WPF ?-> WinUI3 ??? https://github.com/Super-Badmen-Viper/NSMusicS_WPF | need to be refactored | .net,cs(C#),sqlite |
Xiang Cheng | Windows10++ | A-GPL 3.0 |
sponsor
爱发电:https://afdian.com/a/fu_zi_qian
Using the source code of NSMusicS-Electron
If you would like to experience the latest development progress of NSMusicS-Electron:
cd NSMusicS\NSMusicS-Electron
# node -v 20.15.0
# npm -v 10.4.0
npm install /or/ cnpm install # Recommended use cnpm install
# Install MPV in the Windows environment (requires its executable file compressed file)
# https://mpv.io/installation/
# [windows] unzip its contents to: NSMusicS\NSMusicS-Electron\resources\mpv-x86_64-20241124
# [macos] unzip its contents to: NSMusicS\NSMusicS-Electron\resources\mpv-x86_64-20241124
# [linux] please waiting....
# You need to recompile the native module better sqlite3 to allow the sqlite database to read normally
# You can use either of the following two methods (Choose method A or B)
## method A. -> Recommend this, Ensure that the node version is 20.15.0
Delete the files in the following path first: NSMusicS\NSMusicS-Electron\node_modules\better-sqlite3\build\Release\better_sqlite3.node
Then copy the file from the following path: NSMusicS\NSMusicS-Electron\resources\node\win | linux | macos -> better-sqlite3.node
Paste the copied file to the following path: NSMusicS\NSMusicS-Electron\node_modules\better-sqlite3\build\Release
## method B.
cd NSMusicS/NSMusicS-Electron/node_modules/better-sqlite3
npm install electron-rebuild -D
# 1.open better-sqlite3/package.json
# 2.scripts addline: "rebuild": "electron-rebuild -f -w better-sqlite3"
npm run rebuild
cd NSMusicS\NSMusicS-Electron
npm run dev # Direct operation NSMusicS\NSMusicS-Electron
cd NSMusicS\NSMusicS-Electron
npm run build # Package into the current system_configs's software package (such as exe)
Related projects:
- NSMusicS Web Of Thanks:
- NSMusicS Web ImageResource Thanks:
- NSMusicS WPF Of Thanks:
- NAudio
- cscore
- LottieSharp
- AudioVisualizer
- .......
Author's Message
- As this project is currently independently developed by Xiang Cheng(myself), programming standards are a personal habit of the Xiang Cheng(myself), and coding standards are not yet standardized enough. However, this project will continue to undergo self refactoring and reverse development. It can be affirmed that in the future, NSMusicS will form a standard coding specification, which will be beneficial for the community to develop third-party NSMusicS plugins, Enable NSMusicS to meet the diverse needs of more potential customers,Most importantly, NSMusicS will always be open source and continuously updated
- The expectation of the NSMusicS series products is to enable people around the world to use free, open-source, and user-friendly music products
- 大道之行,天下为公。人神恋歌,九歌韵世。