Skip to main content

A tool for appending metadata to music files from Apple Music.

Project description

Apple Music Metadata Grabber (ammg)

ammg is a tool for appending metadata to music files from Apple Music. Mainly files downloaded from Youtube Music (not youtube), because Youtube Music (albums/singles/ep) and Apple Music (albums) holds the same song info...

With ammg you choose your youtube music songs, and you choose which metadata.

Usage

  • First: Choose your song, album, or single.
  • Second: Download the album playlist from Youtube Music.
  • Third: Copy the album ID from the search bar from Apple Music.

Example: We will be downloading Scary Pockets, Elise Trouw - Careless Whisper (feat. Dave Koz).

Notice: the Youtube Music link is a playlist. By downloading using the playlist (album link), you will be able to add metadata without manual intervetion.

Command Process: Download the music using yt-dlp (make sure you download yt-dlp first).

  • For android (VLC, Metro...), and linux (MPD...) .opus files will work. (Supported)
  • If you want to be able to sync to the Itunes application on Apple devices, .opus files are not supported in the Itunes windows application, so m4a will be supported in future versions.

Downloading .opus file using yt-dlp:

yt-dlp -cw -o "music/%(title)s.%(ext)s" -x --audio-quality "0" "https://music.youtube.com/playlist?list=OLAK5uy_kVIMiCrxX4gmnZI-IufqRvJte6Hk3NTbY"

This will download Careless Whisper in the music folder. So the path of the song will be music/Careless Whisper (feat. Dave Koz).opus.

Adding the metadata using ammg:

ammg get -i 1681177202 -o Ordered_Music music

After embedding metadata, the file will be moved to Ordered_Music/S/Scary Pockets & Elise Trouw/Careless Whisper (feat. Dave Koz) - Single/. That way we will have an ordered music library.

Simplifying our work

We can using bash scripting on Linux, to created alias or functions that simplify our work, and make the process faster.

Alias domus to download music:

alias domus='yt-dlp -cw -o "music/%(title)s.%(ext)s" -x --audio-quality "0"'

A shell function that accepts a link and album id:

domuspp() {
    domus "$1";
    ammg get -i "$2" -o Ordered_Music music;
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ammg-0.2.0.tar.gz (35.9 kB view details)

Uploaded Source

Built Distribution

ammg-0.2.0-py3-none-any.whl (36.7 kB view details)

Uploaded Python 3

File details

Details for the file ammg-0.2.0.tar.gz.

File metadata

  • Download URL: ammg-0.2.0.tar.gz
  • Upload date:
  • Size: 35.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ammg-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7e28c3fb979a40f3abe15537233a22c8e110be7591e4ce68b321bb1c6db7f436
MD5 462b474532d1b5b3034ff3cfc5752982
BLAKE2b-256 ca7ca0ff7ef9e8ff903817580abbbb87c2a3bcfb3de14f363ebd942b59526c92

See more details on using hashes here.

File details

Details for the file ammg-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ammg-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 36.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ammg-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50ef43f82852feda31cc28aa6115594035cee304224dd59a60d82c17dbb6d012
MD5 22628cb5177057cab92dfc1781af88fc
BLAKE2b-256 702779fd641723588f0adb139028bb0395de5b28862c3e4cee4b73ec900456cc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page