[region]
# Used when the song region cannot be obtained, currently only used for m3u8 command and mitm command
# Recommend value: Your Apple Music's subscription region
defaultStorefront = "jp"
# The language of song metadata. Influence song title, author and other information.
# Simplified Chinese: zh-Hans-CN, Tradidional Chinese(Hong Kong): zh-Hant-HK, Tradidional Chinese(Taiwan): zh-Hant-TW
# English(British): en-GB, English(American): en-US, Japanese: ja, Korean: ko
language = "zh-Hans-CN"

[[devices]]
# ADB service host of Android device
host = "127.0.0.1"
# ADB service port of Android device
port = 58526
# For decryption service. This value should not be repeated when using multiple devices
agentPort = 10020
# The method the script executes commands with Root permissions
# For Magisk user, the recommend value is "su -c". For other Root solutions, the recommend value is "su 0"
# If not sure which method to use, execute “su 0 ls /” and “su -c ls /” respectively in adb shell and choose the output method
suMethod = "su -c"
# Inject multiple scripts into devices to simulate multi-device decryption, which can speed up decryption
# Experimental feature
hyperDecrypt = false
hyperDecryptNum = 2

[m3u8Api]
# Use zhaarey's m3u8 api to get higher song m3u8.
enable = false
# Only use m3u8 api to download song
force = false
endpoint = ""

[download]
# Send request to Apple Music through proxy. Only support http and https protocol
proxy = ""
# Number of concurrent song downloads
parallelNum = 1
# Get m3u8 from device
getM3u8FromDevice = true
# After enabling this feature, if the specified codec does not exist, the script will look for other codec to download
codecAlternative = true
# Priority for script to look for alternative codec
codecPriority = ["alac", "ec3", "ac3", "aac"]
# Encapsulate Atmos(ec-3/ac-3) as M4A and write the song metadata
atmosConventToM4a = true
# Follow the Python Format format (https://docs.python.org/3/library/string.html#formatstrings)
# Write the audio information to the songNameFormat and playlistSongNameFormat
# Only support alac codec
# Available values: bit_depth, sample_rate, sample_rate_kHz, codec
# This feature may slow down the speed of checking for existing songs
# For example:
# audioInfoFormat = " [{codec}][{bit_depth}bit][{sample_rate_kHz}kHz]"
# songNameFormat = "{disk}-{tracknum:02d} {title}{audio_info}"
# When ripping audio with alac codec, the ripped file name is:
# 1-01 名もなき何もかも [ALAC][16bit][44.1kHz]
# When ripping audio with other codecs, the ripped file name is:
# 1-01 名もなき何もかも
audioInfoFormat = ""
# Available values:
# title, artist, album, album_artist, composer,
# genre, created, track, tracknum, disk,
# record_company, upc, isrc, copyright, codec, audio_info
# song_id, album_id, album_created
songNameFormat = "{disk}-{tracknum:02d} {title}"
# Available values:
# title, artist, album, album_artist, composer,
# genre, created, track, tracknum, disk, album_created
# record_company, upc, isrc, copyright, codec, album_id
dirPathFormat = "downloads/{album_artist}/{album}"
# Available values:
# title, artist, album, album_artist, composer,
# genre, created, track, tracknum, disk,
# record_company, upc, isrc, copyright,
# playlistName, playlistCuratorName, codec
playlistDirPathFormat = "downloads/playlists/{playlistName}"
# Available values:
# title, artist, album, album_artist, composer,
# genre, created, track, tracknum, disk,
# record_company, upc, isrc, copyright, audio_info
# playlistName, playlistCuratorName, playlistSongIndex, codec
# song_id, album_id, album_created
playlistSongNameFormat = "{playlistSongIndex:02d}. {artist} - {title}"
# Save lyrics as .lrc file
saveLyrics = true
saveCover = true
coverFormat = "jpg"
coverSize = "5000x5000"
# 192000 96000 48000 44100
alacMax = 192000
# 2768 2448
atmosMax = 2768
# The command to be executed after the song is ripped successfully, passing in the filename parameter.
# Example: "\"C:\\Program Files\\DAUM\\PotPlayer\\PotPlayerMini64.exe\" \"{filename}\""
# Pay attention to escaping issues
afterDownloaded = ""

[metadata]
# Metadata to be written to the song
# Available values:
# title, artist, album, album_artist, composer,
# genre, created, track, tracknum, disk,
# record_company, upc, isrc, copyright,
# lyrics, cover, ratings(rtng)
embedMetadata = ["title", "artist", "album", "album_artist", "composer",
    "genre", "created", "track", "tracknum", "disk", "lyrics", "cover", "copyright",
    "record_company", "upc", "isrc", "rtng"]