Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5183dfef22 | |||
| a8ba3db401 | |||
| 8b7be1aadf | |||
| b7c0a0fba8 | |||
| 37bbc82ee0 |
5
.gitignore
vendored
5
.gitignore
vendored
@@ -1,2 +1,5 @@
|
|||||||
ncmdump*.exe
|
*.exe
|
||||||
ncmdump
|
ncmdump
|
||||||
|
|
||||||
|
.vscode
|
||||||
|
.idea
|
||||||
14
Makefile
14
Makefile
@@ -1,11 +1,23 @@
|
|||||||
|
default:
|
||||||
|
@echo "Please choose a platform: linux, macos, win32"
|
||||||
|
|
||||||
linux:
|
linux:
|
||||||
g++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag
|
g++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag
|
||||||
strip ncmdump
|
strip ncmdump
|
||||||
|
|
||||||
macos:
|
macos-intel:
|
||||||
|
clang++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag
|
||||||
|
strip ncmdump
|
||||||
|
|
||||||
|
macos-arm64:export CPATH=/opt/homebrew/include
|
||||||
|
macos-arm64:export LIBRARY_PATH=/opt/homebrew/lib
|
||||||
|
macos-arm64:
|
||||||
clang++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag
|
clang++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag
|
||||||
strip ncmdump
|
strip ncmdump
|
||||||
|
|
||||||
win32:
|
win32:
|
||||||
g++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag -Ltaglib/lib -Itaglib/include -static -O
|
g++ main.cpp cJSON.cpp aes.cpp ncmcrypt.cpp -o ncmdump -ltag -Ltaglib/lib -Itaglib/include -static -O
|
||||||
strip ncmdump.exe
|
strip ncmdump.exe
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f ncmdump ncmdump.exe
|
||||||
36
README.md
36
README.md
@@ -1,17 +1,26 @@
|
|||||||
|
# ncmdump
|
||||||
|
|
||||||
|
使用本程序可将下载的网易云音乐缓存文件(ncm)转换为 mp3 或 flac 格式
|
||||||
|
|
||||||
## 简介
|
## 简介
|
||||||
|
|
||||||
该版本为最早的 C++ 版本,也是作者开发的市面上第一个支持 ncm 转换的程序
|
该版本为最早的 C++ 版本,也是作者开发的市面上第一个支持 ncm 转换的程序
|
||||||
|
|
||||||
源码复刻自 anonymous5l/ncmdump,感谢前辈的付出!
|
源码复刻自 anonymous5l/ncmdump,感谢前辈的付出!
|
||||||
做了 Windows 下的移植,修复了一些编译问题
|
做了 Windows 下的移植,修复了一些编译问题
|
||||||
|
|
||||||
## 便捷式传送门
|
## 传送门
|
||||||
|
|
||||||
2021年10月6日,原作者已经删库
|
2021年10月6日,原作者已经删库
|
||||||
|
|
||||||
## 依赖库及编译方法
|
## 依赖库及不同平台编译方法
|
||||||
#### 依赖库
|
|
||||||
|
### 依赖库
|
||||||
|
|
||||||
* taglib
|
* taglib
|
||||||
|
|
||||||
### Linux / macOS
|
### Linux / macOS
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
# CentOS
|
# CentOS
|
||||||
yum install taglib-devel
|
yum install taglib-devel
|
||||||
@@ -21,9 +30,13 @@ make linux
|
|||||||
apt install libtag1-dev
|
apt install libtag1-dev
|
||||||
make linux
|
make linux
|
||||||
|
|
||||||
# macOS
|
# macOS with Intel chip
|
||||||
brew install taglib
|
brew install taglib
|
||||||
make macos
|
make macos-intel
|
||||||
|
|
||||||
|
# macOS with Apple Silicon (M1 / M2)
|
||||||
|
brew install taglib
|
||||||
|
make macos-arm64
|
||||||
```
|
```
|
||||||
|
|
||||||
注意:Linux / macOS 为动态库支持,Linux 下静态编译需要手动编译 taglib 静态库,macOS 原生库不支持静态链接
|
注意:Linux / macOS 为动态库支持,Linux 下静态编译需要手动编译 taglib 静态库,macOS 原生库不支持静态链接
|
||||||
@@ -32,9 +45,10 @@ make macos
|
|||||||
|
|
||||||
#### MinGW
|
#### MinGW
|
||||||
|
|
||||||
因为部分代码(例如常量引用等)在 msvc 下面编译不通过,本项目需要使用 MinGW 编译
|
~~因为部分代码(例如常量引用等)在 msvc 下面编译不通过,本项目需要使用 MinGW 编译~~
|
||||||
|
已经修改部分代码使得支持 msvc 编译,详见下面的 Visual Studio 部分
|
||||||
|
|
||||||
下载 [mingw-w64](https://winlibs.com/) 的 Windows 版本,这里推荐从 winlibs 这个网站下载,编译器版本始终保持最新
|
下载 mingw-w64 的 Windows 版本,这里推荐从 [winlibs](https://winlibs.com/) 这个网站下载,编译器版本始终跟随上游保持最新
|
||||||
|
|
||||||
将 mingw64/bin 添加到系统环境变量
|
将 mingw64/bin 添加到系统环境变量
|
||||||
|
|
||||||
@@ -54,7 +68,11 @@ git clone https://github.com/taurusxin/ncmdump && cd ncmdump
|
|||||||
make win32
|
make win32
|
||||||
```
|
```
|
||||||
|
|
||||||
## 使用
|
#### Visual Studio
|
||||||
1. 命令行下使用 `ncmdump [files]...`
|
|
||||||
|
|
||||||
|
使用 git 切换到 msvc 分支,使用 Visual Studio 打开 ncmdump.sln,编译即可
|
||||||
|
|
||||||
|
## 使用
|
||||||
|
|
||||||
|
1. 命令行下使用 `ncmdump [files]...`
|
||||||
2. 直接 ncm 拖拽文件到二进制文件上
|
2. 直接 ncm 拖拽文件到二进制文件上
|
||||||
|
|||||||
Reference in New Issue
Block a user