I come from the movies/tv shows i.e. radarr/sonarr side of things. This method does not work for music and I’m wondering what other options I have to auto-find downloads at a reasonable bitrate to fill out my library without having to download entire albums all of the time.

What is your setup?

  • Hellow2@lemmy.fmhy.ml
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    I realized no software I know really does this how I want so I made my own.

    Music Kraken

    also my logo is cute

    I am developing my own tool, music kraken. The PyPI build is outdated and doesn’t work properly but I will make a new one soon.

    Problem I am trying to solve

    Even when torrenting or downloading music, the metadata isn’t consistent and looks really messy in your music player.

    Lyrics are only rarely in the file. The notes contain adds for the page it is downloaded from, which is like fair… but fuck it I don’t like it.

    So I use web scraping and data structures, to make the metadata consistent. As far as I am aware there is nothing like it.

    Functionality

    It can download songs from:

    • YouTube Music
    • musify.club

    and more stuff like bandcamp are yet to come. It can also get additional metadata from musicbrainz, discogs or metal archives. As a matter of fact metal archives is already implemented.

    It downloads the audio and converts it to an audio format like mp3, the only limmitation it needs to support ID3 metadata. Then ofc all possible metadatas will be saved and embedet in the file

    Interface

    usage: __main__.py [-h] [-v] [-m] [-t] [-a] [-g GENRE] [-u URL] [--settings]
                       [-s SETTING SETTING] [--paths] [-r] [--frontend]
    
    A simple yet powerful cli to download music with music-kraken.
    
    options:
      -h, --help            show this help message and exit
      -v, --verbose         Sets the logging level to debug.
      -m, --force-post-process
                            If a to downloaded thing is skipped due to being found
                            on disc, it will still update the metadata
                            accordingly.
      -t, --test            For the sake of testing. Equals: '-vp -g test'
      -a, --all             If set it will download EVERYTHING the music
                            downloader can find. For example weird compilations
                            from musify.
      -g GENRE, --genre GENRE
                            Specifies the genre. (Will be overwritten by -t)
      -u URL, --url URL     Downloads the content of given url.
      --settings            Opens a menu to modify the settings
      -s SETTING SETTING, --setting SETTING SETTING
                            Modifies a setting directly.
      --paths, -p           Prints an overview over all music-kraken paths.
      -r                    Resets the config file to the default one.
      --frontend, -f        Set a good and fast invidious/piped instance from your
                            homecountry, to reduce the latency.
    
    to search:
    > s: {query or url}
    > s: https://musify.club/release/some-random-release-183028492
    > s: #a {artist} #r {release} #t {track}
    
    to download:
    > d: {option ids or direct url}
    > d: 0, 3, 4
    > d: 1
    > d: https://musify.club/release/some-random-release-183028492