OpenConverter v0.1.0
OpenConverter v0.1.0
First public release. Open-source audio converter for Linux that handles encrypted formats (NCM, QMC, KGM, KWM) via pure-JavaScript decoders.
Status
| Format | Verified |
|---|---|
.ncm (NetEase Cloud Music) |
✅ 14/14 samples, byte-diff = 0 vs Python ncmdump |
.qmc0 / .qmc1 / .qmc2 / .qmcflac |
❌ stubs, no samples |
.kgm / .kwm (KuGou) |
❌ stubs, no samples |
.mp3 / .flac / .wav / .m4a / .aac / .ogg / .opus |
✅ passthrough + ffmpeg re-encode |
Only formats with real samples + byte-diff verification are marked verified. QMC/KGM/KWM throw not yet implemented — no samples available for verification rather than faking success.
What's in the box
- Clean-room rewrite of a previously commercial macOS audio converter
- All commercial elements removed: vip_type / use_num / trialData / LoadUrl / doLoadInfo / iOS receipt validation / remote license servers / native FFI decryption dylib — verified zero matches by
tests/check-no-commercial.sh(30+ grep patterns) - Pure-JS NCM decoder (no native dependencies), works on any Linux without macOS-only .dylib
- Spotify-inspired dark theme UI with macOS-style traffic-light window controls
- Single
process-messageIPC channel (no per-feature commercial handlers) - electron-store holds only non-commercial user preferences (format / quality / outputDir / theme)
- ffmpeg wrapper for format conversion
- CLI mode (
node src/cli.js) for headless testing - electron-builder outputs:
.deb(x64, arm64) +.AppImage(x64, arm64)
Install
# Debian / Ubuntu
sudo apt install ffmpeg
sudo dpkg -i openconverter_0.1.0_amd64.deb
sudo apt install -f # resolve missing deps
openconverter
# Any distro (AppImage)
chmod +x OpenConverter-0.1.0.AppImage
./OpenConverter-0.1.0.AppImageBuild from source
npm install
npm run build:renderer
npx electron-builder --linuxVerify the build
node tests/ncm.test.js # 14 samples, byte-diff vs Python ncmdump
bash tests/check-no-commercial.sh # 30+ commercial-element patterns, 0 matchesHonest limitations
- QMC / KGM / KWM: algorithm stubs only, no real samples — not yet verified, file an issue if you can provide samples
- Audio listening: Docker has no sound card; ffprobe verifies structure only. Listen locally for subjective quality
- GUI interaction: not automated; manual testing required
- macOS / Windows: not supported. Target is Linux only