更换为边下边解密

This commit is contained in:
itouakirai 2025-01-09 21:27:28 +08:00
parent 32b5fedc4b
commit 7580418fbc
6 changed files with 1382 additions and 3138 deletions

1
.gitignore vendored
View File

@ -6,3 +6,4 @@
!go.sum
!main.go
!README.md
!utils/

View File

@ -7,14 +7,14 @@
3. 运行结束后显示总体完成情况
4. 自动内嵌封面和LRC歌词需要media-user-token获取方式看最后的说明
5. 自动构建 可以到 [Actions](https://github.com/zhaarey/apple-music-alac-atmos-downloader/actions) 页面下载最新自动构建版本 可以直接`main.exe url`
6. main 支持check 可以填入文本地址 或API数据库.
6. 支持逐词与未同步歌词
7. 新增get-m3u8-from-device 改为true 且设置端口`adb forward tcp:20020 tcp:20020`即从模拟器获取m3u8
8. 文件夹和文件支持模板
9. 支持下载歌手 `go run main.go https://music.apple.com/us/artist/taylor-swift/159260351` `--all-album` 自动选择歌手的所有专辑
10. 新增[wrapper](https://github.com/zhaarey/wrapper/releases)模式 目前只能linux运行解密速度超快基本秒解
11. `limit-max`支持限制长度 默认200
12. 支持逐词与未同步歌词
13. 现已支持arm64解密
12. 现已支持arm64解密
13. 下载解密部分更换为Sendy McSenderson的代码实现边下载边解密
### Special thanks to `chocomint` for creating `agent-arm64.js`

View File

@ -13,8 +13,7 @@ cover-size: 5000x5000
cover-format: jpg #jpg png or original
alac-save-folder: AM-DL downloads
atmos-save-folder: AM-DL-Atmos downloads
check: "" # API or .txt
force-api: false
max-memory-limit: 256 # MB
decrypt-m3u8-port: "127.0.0.1:10020"
get-m3u8-port: "127.0.0.1:20020"
get-m3u8-from-device: true

5
go.mod
View File

@ -3,15 +3,16 @@ module main
go 1.17
require (
github.com/abema/go-mp4 v0.7.2
github.com/Eyevinn/mp4ff v0.46.0
github.com/abema/go-mp4 v1.3.0
github.com/grafov/m3u8 v0.11.1
github.com/schollz/progressbar/v3 v3.14.6
github.com/spf13/pflag v1.0.5
)
require (
github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db // indirect
github.com/rivo/uniseg v0.4.7 // indirect
github.com/schollz/progressbar/v3 v3.14.6 // indirect
golang.org/x/sys v0.22.0 // indirect
golang.org/x/term v0.22.0 // indirect
)

8
go.sum
View File

@ -1,11 +1,15 @@
github.com/abema/go-mp4 v0.7.2 h1:ugTC8gfEmjyaDKpXs3vi2QzgJbDu9B8m6UMMIpbYbGg=
github.com/abema/go-mp4 v0.7.2/go.mod h1:vPl9t5ZK7K0x68jh12/+ECWBCXoWuIDtNgPtU2f04ws=
github.com/Eyevinn/mp4ff v0.46.0 h1:A8oJA4A3C9fDbX38jEw/26utjNdvmRmrO37tVI5pDk0=
github.com/Eyevinn/mp4ff v0.46.0/go.mod h1:hJNUUqOBryLAzUW9wpCJyw2HaI+TCd2rUPhafoS5lgg=
github.com/abema/go-mp4 v1.3.0 h1:vr0PX0jk3E4GO1c28fNRsyZdkLwz38R+XRVncIH1XDk=
github.com/abema/go-mp4 v1.3.0/go.mod h1:vPl9t5ZK7K0x68jh12/+ECWBCXoWuIDtNgPtU2f04ws=
github.com/beevik/etree v1.3.0 h1:hQTc+pylzIKDb23yYprodCWWTt+ojFfUZyzU09a/hmU=
github.com/beevik/etree v1.3.0/go.mod h1:aiPf89g/1k3AShMVAzriilpcE4R/Vuor90y83zVZWFc=
github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg=
github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE=
github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/grafov/m3u8 v0.11.1 h1:igZ7EBIB2IAsPPazKwRKdbhxcoBKO3lO1UY57PZDeNA=

4497
main.go

File diff suppressed because it is too large Load Diff