761956f047041fd7b007defb24dcbda67551e2ee
MangTool —— 音乐文件一键导入工具
面向 Navidrome 音乐服务器的音频文件智能导入管线。
一键导入工作流
将待处理的音频文件放入 Input/ 目录,点击「开始一键导入」即可自动完成:
- 扫描 — 递归扫描 Input 目录下的所有音频文件
- 校验 — 检查 Title/Artist/Album 元数据是否完整,缺失文件移入 Rejected/MissingMetadata
- 繁简转换 — 将繁体中文标签自动转为简体
- 格式转换 — 将 WAV/APE/AIFF/WV/TTA 转为 FLAC(需 FFmpeg),失败文件移入 Rejected/ConversionFailed
- 去重 — 基于 Artist+Album+Disc+Track+Title 归一化身份标识对比 Library 已有文件,重复移入 Rejected/Duplicate
- 入库 — 有效文件按
Artist/Album (year)/NN - Title.ext布局移入 Library
目录结构
BasePath/
├── Input/ ← 放入待处理的音频文件
├── Library/ ← 整理后的 Navidrome 兼容曲库
└── Rejected/ ← 被拒绝的文件按原因分类
├── MissingMetadata/
├── Duplicate/
├── ConversionFailed/
├── Unreadable/
└── Other/
构建与运行
# 后端
cd backend && mvn clean package -DskipTests && mvn spring-boot:run
# 前端(开发模式)
cd frontend && npm ci && npm run dev
# Docker
cd docker && docker compose up -d --build
技术栈
- 后端:Spring Boot 2.7 + Java 8 + Maven
- 前端:Vue 3 + Vite + TypeScript + Element Plus
- 音频元数据:jaudiotagger
- 繁简转换:opencc4j
- 格式转换:FFmpeg
Languages
Java
69%
Vue
25.9%
TypeScript
2.8%
Shell
1%
CSS
0.9%
Other
0.2%