Apple Music decryption tool, based on zhaarey/apple-music-alac-atmos-downloader
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.
 
 
zhaarey 0308011f72 add find m3u8 from API 5 months ago
.github/workflows Update main.yml 5 months ago
.idea Initial commit 5 months ago
assets fix: format code 5 months ago
src add find m3u8 from API 5 months ago
.gitignore Initial commit 5 months ago
LICENSE.txt Initial commit 5 months ago
README.md docs: remove redundant content 5 months ago
agent.js fix: format code 5 months ago
config.toml add find m3u8 from API 5 months ago
main.py fix: format code 5 months ago
poetry.lock feat: mitm download 5 months ago
pyproject.toml feat: mitm download 5 months ago

README.md

AppleMusicDecrypt

Apple Music decryption tool, based on zhaarey/apple-music-alac-atmos-downloader

WARNING: This project is currently in an extremely early stage, and there are still a large number of undiscovered bugs and unfinished features. USE IT WITH CAUTION.

Usage

# Download song/album with default codec (alac)
download https://music.apple.com/jp/album/nameless-name-single/1688539265
# Download song/album with specified codec
download https://music.apple.com/jp/song/caribbean-blue/339592231 -c aac
# Download song from specified m3u8 with default codec (alac)
m3u8 https://aod.itunes.apple.com/itunes-assets/HLSMusic116/v4/cb/f0/91/cbf09175-ce98-d133-1936-2e46b6992aa5/P631756252_lossless.m3u8
# Start Mitm mode
mitm

Support Codec

  • alac (audio-alac-stereo)
  • ec3 (audio-atmos / audio-ec3)
  • ac3 (audio-ac3)
  • aac (audio-stereo)
  • aac-binaural (audio-stereo-binaural)
  • aac-downmix (audio-stereo-downmix)

Support Link

Deploy

Prepare Local Environment

  1. Install GPAC
  2. Download Bento4 MP4Tools and add the executable files to the environment variables
  3. Run gpac -version, mp4box -version, mp4extract, mp4edit and make sure all the commands run fine

Prepare Android Environment

For WSA (Recommend):

  1. Install Apple Music (3.6.0-beta) and login
  2. Play a song in Apple Music
  3. Install WSA from LSPosed/MagiskOnWSALocal. Choose the version that includes Magisk but not GApps
  4. Install following Magisk modules: magisk-frida, sqlite3-magisk-module
  5. Edit config.toml
[[devices]]
host = "127.0.0.1"
port = 58526 # Replace this value to your WSA ADB port!
agentPort = 10020
suMethod = "su -c"

For Google Android Emulator

  1. Install Apple Music (3.6.0-beta) and login
  2. Play a song in Apple Music
  3. Manually install Frida and start frida-server in background
  4. Edit config.toml
[[devices]]
host = "127.0.0.1"
port = 5555
agentPort = 10020
suMethod = "su 0"

Run Script

Use pre-built script (For Windows)

Download latest build from Actions (need login your GitHub account). Unzip it, and run main.exe

Manually Run

git clone https://github.com/WorldObservationLog/AppleMusicDecrypt.git
cd AppleMusicDecrypt
poetry install
poetry run python main.py

Mitm Mode

Prepare Environment

  1. Install Proxifier and Apple Music Windows
  2. Sign in to Apple Music Windows with your Apple account
  3. Run poetry run mitmproxy under the script directory and quit
  4. Install the CA certificate according to Mitmproxy's instructions
  5. Create a new proxy server in Proxifier(Profile -> Proxy Servers -> Add). Address and Port are values of mitm.host and mitm.port in config.toml, and Protocol is SOCKS Version 5
  6. Create a new proxification rule in Proxifier(Profile -> Proxy Servers -> Add). Fill in Applications field with amplibraryagent.exe; applemusic.exe and select the proxy server just created in Action

Start Mitm

  1. Run the script, type command mitm
  2. Start Proxifier
  3. Start Apple Music Windows and play a song or an album.
  4. Now the script should catch the m3u8 link and start ripping