You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.4 KiB
2.4 KiB
!!必须先安装MP4Box,并确认MP4Box已正确添加到环境变量
添加功能
- 调用外部MP4Box自动封装ec3为m4a
- 更改目录结构为 歌手名\专辑名 ;Atmos下载文件则另外移动到AM-DL-Atmos downloads,并更改目录结构为 歌手名\专辑名 [Atmos]
- 运行结束后显示总体完成情况
- 自动内嵌封面和LRC歌词(需要media-user-token,获取方式看最后的说明)
Apple Music ALAC / Dolby Atmos Downloader
Original script by Sorrow. Modified by me to include some fixes and improvements.
How to use
- Create a virtual device on Android Studio with a image that doesn't have Google APIs.
- Install this version of Apple Music: https://www.apkmirror.com/apk/apple/apple-music/apple-music-3-6-0-beta-release/apple-music-3-6-0-beta-4-android-apk-download/. You will also need SAI to install it: https://f-droid.org/pt_BR/packages/com.aefyr.sai.fdroid/.
- Launch Apple Music and sign in to your account. Subscription required.
- Port forward 10020 TCP:
adb forward tcp:10020 tcp:10020
. - Start frida server.
- Start the frida agent:
frida -U -l agent.js -f com.apple.android.music
. - Start downloading some albums:
go run main.go https://music.apple.com/us/album/whenever-you-need-somebody-2022-remaster/1624945511
. - Start downloading singles:
go run main_select.go https://music.apple.com/us/album/whenever-you-need-somebody-2022-remaster/1624945511
input numbers separated by spaces. - Start downloading some playlists:
go run main.go https://music.apple.com/us/playlist/taylor-swift-essentials/pl.3950454ced8c45a3b0cc693c2a7db97b
orgo run main.go https://music.apple.com/us/playlist/hi-res-lossless-24-bit-192khz/pl.u-MDAWvpjt38370N
. - For dolby atmos:
go run main_atmos.go https://music.apple.com/us/album/1989-taylors-version-deluxe/1713845538
.
Downloading lyrics
- Open Apple Music and log in
- Open the Developer tools, Click
Application -> Storage -> Cookies -> https://music.apple.com
- Find the cookie named
media-user-token
and copy its value - Create a file named
media-user-token.txt
in the project root directory - Paste the cookie value obtained in step 3 into the file and save it
- Start the script as usual