8dd6aebd8b34a2d76cd10bb38078f9addc210d2b
- app.py: FastAPI 后端,POST /convert 接收文件上传并调用 vipsong.convert_file 转码 GET /download/<filename> 提供下载,GET /health 健康检查 文件名安全过滤保留扩展名,支持多格式输出(mp3/flac/wav/ogg/m4a) - templates/index.html: 纯HTML/CSS/JS单页应用,拖拽上传、格式选择、状态显示、下载链接 - .gitignore: 添加 static/uploads/、static/outputs/、音频输出文件过滤 - requirements.txt: 添加 fastapi、uvicorn、python-multipart 验证 MCP 可用性: - Baota MCP SystemInfo/SiteList/ServiceStatus 全部正常返回 - nginx+mysql+php-fpm-74/82/85 运行中,5个网站正常 - Web API 端对端测试: NCM→MP3/FLAC/OGG 均输出有效音频,错误处理返回 HTTP 400
vipsong - 酷狗/网易云音乐加密格式转码工具
CLI 工具,将酷狗加密格式 (.kgm/.kgma/.vpr) 和网易云加密格式 (.ncm) 解密转码为常见音频格式。
安装依赖
pip install -r requirements.txt
确保系统已安装 FFmpeg(用于格式转换)。
酷狗密钥
首次使用前,需获取酷狗密钥文件 kugou_key.xz:
curl -o kugou_key.xz https://raw.githubusercontent.com/HRuiCcc/music-geshizhuanhuan/master/assets/kugou_key.xz
使用方法
命令行模式
python vipsong.py .ncm python vipsong.py ./music/song.kgm python vipsong.py .ncm -f flac -d python vipsong.py song.ncm -d python vipsong.py ./downloads/.ncm ./music/.kgm
交互模式
python vipsong.py
vipsong> *.ncm # 转换当前目录全部 ncm 文件 vipsong> ./xx/xx/xx.kgm # 转换指定 kgm 文件 vipsong> song.ncm -d # 转码后删除原 ncm 文件 vipsong> /get # 查看转码统计 vipsong> /exit # 退出
命令说明
| 命令/参数 | 说明 |
|---|---|
| *.ncm | 转换当前目录全部 ncm 文件 |
| ./xx/xx/xx.kgm | 转换指定路径的文件 |
| -f <格式> | 指定输出格式:mp3/flac/wav/ogg/m4a/original(默认 mp3) |
| -d | 转码成功后删除原加密文件 |
| /exit | 退出交互模式 |
| /get | 显示转码统计(成功数、失败数、文件列表) |
支持格式
| 输入格式 | 说明 | 输出格式 |
|---|---|---|
| .ncm | 网易云音乐加密格式 | mp3/flac/wav/ogg/m4a |
| .kgm/.kgma/.vpr | 酷狗音乐加密格式 (v3/v4) | mp3/flac/wav/ogg/m4a |
注意
- 转换后保留原始 ID3 标签(歌名、艺术家、专辑、封面)
- KGM 格式需要 kugou_key.xz 密钥文件(存放在项目根目录)
- 仅支持 KGM v3/v4,v5 需要客户端密钥暂不支持
Languages
Python
76.3%
HTML
23.7%