Skip to main content

Manage your music/audio collections.

Project description

Arkive

Manage your music/audio collections.

1. Installation

A package with the same name is available in pypi

  $ pip install --user arkive

This package has been tested mainly on Windows 10 and Linux (Fedora 35), but it should work on all platforms since it only makes use of cross-platform libraries. You may need to use "pip3", "python3 -m pip" or "python -m" when running on other platforms, or different Python setups.

You can also use pipx to only make use of the cli app.

  $ pipx install arkive

2. General usage

$ arkive -h
usage: arkive [-h] [-V] <command> ...

optional arguments:
  -h, --help     show this help message and exit
  -V, --version  show program's version number and exit

commands:
  <command>
    show         display actions collection inside a given folder.
    flat         flatten actions files inside a given folder.
    nest         nesting actions files inside a given folder.

As explained above, you can use one of 3 commands: show, flat and nest, and finally a positional argument indicating a folder path.

show

It will traverse the folders inside the given path and display a table of all the existing (with compatible audio formats) files, showing artist, album and title.

$ arkive show ~/Music

flat

The application will traverse all the subfolders and move the music files up to the given folder while changing their name. The new name given to each file will be a concatenation of its artist, album and title.

e.g. .../folder/subfolder/myfile.mp3 -> .../folder/artist - album - title.mp3

Note: the new name will be sanitized to make sure the result is a valid filename.

$ arkive flat ~/Music

nest

The application will traverse all the subfolders and move the music files up to the given folder while renaming name organizing them in new subfolders. The names given to each file and folder structures will result from taking the artist and album names for the folders, and track title for its name.

e.g. .../folder/subfolder/myfile.mp3 -> .../folder/artist/album/title.mp3

Note: the new names for each file and folder will be sanitized to make sure the result is a valid file/directory.

$ arkive nest ~/Music

Destination folder

An optional argument "-o/-output" may be used to change the destination directory for the audio files.

3. Web storage support (Experimental)

Additionally, arkive includes support for web storage with the same commands shown above. As of now, only pcloud service is supported but other may be included in the future. To use a command with your pcloud account, pass the "--cloud" flag followed by the name if the services (e.g. pcloud), and then your user credentials.

$ arkive show "/My Music" --cloud pcloud --username <USERNAME> --password <PASSWORD>

4. Side-effects

This implementation includes a "cleanup" procedure which removes empty sub-folders from the origin directory. This is a personal decision due to its convenience, but it may be changed in the near future to remove them only under explicit indication.

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

arkive-0.3.1.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

arkive-0.3.1-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file arkive-0.3.1.tar.gz.

File metadata

  • Download URL: arkive-0.3.1.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.16.18-200.fc35.x86_64

File hashes

Hashes for arkive-0.3.1.tar.gz
Algorithm Hash digest
SHA256 4909775b973102b2285350e4feb896b56dc069da8c7bc1f08e556cc4dc5ae304
MD5 220ea2514bf550988c1cdb9b98445dd9
BLAKE2b-256 341a9ef27ea3531462f8fe68ec8f5134194491e232b14c53412bea36ca9e1d5d

See more details on using hashes here.

File details

Details for the file arkive-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: arkive-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.16.18-200.fc35.x86_64

File hashes

Hashes for arkive-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 627f93801daaf59e91c84e7a5bab39f6e21a983106a2b7d716d2cd590fcab283
MD5 4fdf7c12908efe754ad03c0ac76df1b5
BLAKE2b-256 e33f0983a24b8f446f973c466de6b9fb771cee2151ff9b762514d3b9133da975

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