mirror of
https://github.com/glomatico/gamdl.git
synced 2025-01-23 03:39:03 +00:00
55 lines
2.2 KiB
Markdown
55 lines
2.2 KiB
Markdown
# Glomatico's ✨ Apple Music ✨ Downloader
|
|
A Python script to download Apple Music songs/music videos/albums/playlists.
|
|
|
|
![Windows CMD usage example](https://i.imgur.com/byjqmGF.png)
|
|
|
|
This is a rework of https://github.com/loveyoursupport/AppleMusic-Downloader/tree/661a274d62586b521feec5a7de6bee0e230fdb7d.
|
|
|
|
Some new features that I added:
|
|
- MP4Box for muxing
|
|
- Tags for music videos
|
|
- Multiple URLs input
|
|
- iTunes folder structure
|
|
- Embedded lyrics and .lrc file
|
|
- Auto set region
|
|
- Playlist support
|
|
- And much more!
|
|
|
|
## Setup
|
|
1. Install Python 3.8 or higher
|
|
2. Install the required packages using pip:
|
|
```
|
|
pip install -r requirements.txt
|
|
```
|
|
3. Add MP4Box and mp4decrypt to your PATH
|
|
* You can get them from here:
|
|
* MP4Box: https://gpac.wp.imt.fr/downloads/
|
|
* mp4decrypt: https://www.bento4.com/downloads/
|
|
4. Export your Apple Music cookies as `cookies.txt` and put it in the same folder as the script
|
|
* You can export your cookies by using this Google Chrome extension on Apple Music website: https://chrome.google.com/webstore/detail/open-cookiestxt/gdocmgbfkjnnpapoeobnolbbkoibbcif. Make sure to be logged in.
|
|
5. Put your L3 Widevine Keys (`device_client_id_blob` and `device_private_key` files) on `./pywidevine/L3/cdm/devices/android_generic` folder
|
|
* You can get your L3 Widevine Keys by using Dumper: https://github.com/Diazole/dumper
|
|
* The generated `private_key.pem` and `client_id.bin` files should be renamed to `device_private_key` and `device_client_id_blob` respectively.
|
|
6. (optional) Add aria2c to your PATH for faster downloads
|
|
* You can get it from here: https://aria2.github.io/.
|
|
|
|
## Usage
|
|
```
|
|
python gamdl.py [OPTIONS] [URLS]
|
|
```
|
|
Tracks are saved in `./Apple Music` by default, but the directory can be changed using `--final-path` argument.
|
|
|
|
Use `--help` argument to see all available options.
|
|
|
|
## Songs/Music Videos quality
|
|
* Songs:
|
|
* AAC 256kbps M4A
|
|
* Music Videos (varies depending on the video):
|
|
* HEVC 4K 12~20mbps M4V / AAC 256kbps (achieved by using `--prefer-hevc` argument)
|
|
* AVC 1080p 6.5~10mbps M4V / AAC 256kbps
|
|
* AVC 720p 4mbps M4V / AAC 256kbps
|
|
* AVC 480p 1.5mbps M4V / AAC 256kbps
|
|
* AVC 360p 1mbps M4V / AAC 256kbps
|
|
|
|
Some videos may include EIA-608 captions.
|