6 Commits

Author SHA1 Message Date
1765813f08 bump version to 1.7.2 2024-11-25 14:04:01 +08:00
c11fbf88db chore: modified go mod name 2024-11-25 13:59:13 +08:00
88314554d0 release 1.7.1 2024-11-08 15:01:14 +08:00
686bfc79bf fix: rune not supported by encoding. 2024-11-08 14:59:37 +08:00
300a412058 更新 README.md 2024-10-23 19:50:04 +08:00
609bfd03cc update: README.md 2024-10-23 19:31:38 +08:00
5 changed files with 26 additions and 13 deletions

View File

@@ -4,6 +4,18 @@
支持网易云音乐最新的 3.x 版本,但需要注意:从该版本开始网易云音乐不再在 ncm 文件中内置封面图片,本工具支持从网易服务器上自动下载对应歌曲的封面图并写入到最终的音乐文件中
## 安装
你可以使用去 [releases](https://git.taurusxin.com/taurusxin/ncmdump-go/releases/latest) 下载最新版预编译好的二进制文件,或者你也可以用包管理器来安装
```shell
# Windows Scoop
scoop bucket add taurusxin https://git.taurusxin.com/taurusxin/scoop-bucket.git # 添加 scoop 源
scoop install ncmdump-go # 安装 ncmdump-go
# macOS & Linux 之后会支持
```
## 使用方法
使用 `-h``--help` 参数来打印帮助
@@ -54,7 +66,7 @@ ncmdump-go -d source_dir -o output_dir -r
使用 go module 下载 ncmdump-go 包
```shell
go get -u github.com/taurusxin/ncmdump-go
go get -u git.taurusxin.com/taurusxin/ncmdump-go
```
导入并使用
@@ -64,7 +76,7 @@ package main
import (
"fmt"
"github.com/taurusxin/ncmdump-go/ncmcrypt"
"git.taurusxin.com/taurusxin/ncmdump-go/ncmcrypt"
)
func main() {

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
VERSION=1.7.0
VERSION=1.7.2
# Clean up the build directory
rm -rf build
@@ -8,30 +8,30 @@ mkdir build
# Linux amd64
echo "Building for Linux amd64..."
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go github.com/taurusxin/ncmdump-go
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go git.taurusxin.com/taurusxin/ncmdump-go
tar zcf build/ncmdump-go_linux_amd64_$VERSION.tar.gz -C build ncmdump-go
rm build/ncmdump-go
# Linux arm64
echo "Building for Linux arm64..."
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -ldflags="-w -s" -o build/ncmdump-go github.com/taurusxin/ncmdump-go
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -ldflags="-w -s" -o build/ncmdump-go git.taurusxin.com/taurusxin/ncmdump-go
tar zcf build/ncmdump-go_linux_arm64_$VERSION.tar.gz -C build ncmdump-go
rm build/ncmdump-go
# macOS amd64
echo "Building for macOS amd64..."
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go github.com/taurusxin/ncmdump-go
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go git.taurusxin.com/taurusxin/ncmdump-go
tar zcf build/ncmdump-go_darwin_amd64_$VERSION.tar.gz -C build ncmdump-go
rm build/ncmdump-go
# macOS arm64
echo "Building for macOS arm64..."
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -ldflags="-w -s" -o build/ncmdump-go github.com/taurusxin/ncmdump-go
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -ldflags="-w -s" -o build/ncmdump-go git.taurusxin.com/taurusxin/ncmdump-go
tar zcf build/ncmdump-go_darwin_arm64_$VERSION.tar.gz -C build ncmdump-go
rm build/ncmdump-go
# Windows amd64
echo "Building for Windows amd64..."
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go.exe github.com/taurusxin/ncmdump-go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags="-w -s" -o build/ncmdump-go.exe git.taurusxin.com/taurusxin/ncmdump-go
zip -q -j build/ncmdump-go_windows_amd64_$VERSION.zip ./build/ncmdump-go.exe
rm build/ncmdump-go.exe

2
go.mod
View File

@@ -1,4 +1,4 @@
module github.com/taurusxin/ncmdump-go
module git.taurusxin.com/taurusxin/ncmdump-go
go 1.23.0

View File

@@ -2,8 +2,8 @@ package main
import (
"fmt"
"github.com/taurusxin/ncmdump-go/ncmcrypt"
"github.com/taurusxin/ncmdump-go/utils"
"git.taurusxin.com/taurusxin/ncmdump-go/ncmcrypt"
"git.taurusxin.com/taurusxin/ncmdump-go/utils"
"os"
"path/filepath"
@@ -59,7 +59,7 @@ func main() {
}
if *showVersion {
fmt.Println("ncmdump version 1.7.0")
fmt.Println("ncmdump version 1.7.1")
os.Exit(0)
}

View File

@@ -9,7 +9,7 @@ import (
"github.com/go-flac/flacpicture"
"github.com/go-flac/flacvorbis"
"github.com/go-flac/go-flac"
"github.com/taurusxin/ncmdump-go/utils"
"git.taurusxin.com/taurusxin/ncmdump-go/utils"
"io"
"net/http"
"os"
@@ -185,6 +185,7 @@ func (ncm *NeteaseCloudMusic) FixMetadata(fetchAlbumImageFromRemote bool) (bool,
return false, err
}
defer audioFile.Close()
audioFile.SetDefaultEncoding(id3v2.EncodingUTF8)
audioFile.SetTitle(ncm.mMetadata.mName)
audioFile.SetArtist(ncm.mMetadata.mArtist)
audioFile.SetAlbum(ncm.mMetadata.mAlbum)