Skip to main content

A tool for formatting and organizing music files, mainly for files with no metadata.

Reason this release was yanked:

move to audiodotturn>=0.5.1

Project description

audiodotturn 0.4.0

AudioDotTurn is a tool for formatting and organizing audio files with little to no metadata available. It provides a solution for situations where there are tons of unstandardized, unorganized files with little to no metadata, and sorting via metadata is not an option. With AudioDotTurn, users can quickly format a single file or a whole directory/subdirectories to the style of their choosing.

The tool creates a database for the user, which can be accessed via AudioDotTurn or any program that will interpret sql .db files. The database will be updated as new files are formatted as long as the db file is selected as the default db or selected at runtime.

  • Users can change settings via CLI

  • AudioDotTurn uses pretty output via rich for visually appealing output

  • Dry run mode available for seeing results of a run without making any actual changes

  • When formatting an entire directory, users can produce a report of the results in an MD file or simply print them to the console if either are desired.

Set User Config

Depending on how your system and python PATHs are set the installation path may differ. Usually however, you should be able to find the default config.json in one of the below

/home/user/.local/lib/python{3}.{11}/site-packages/audiodotturn/config/config.json
/usr/local/lib/python{x}.{x}/site-packages/audiodotturn/config/config.json
/usr/lib/python{x}.{x}/site-packages/audiodotturn/config/config.json

Once the default config is found, copy it to one of the below paths with cp <DEFAULT_CONFIG> <NEW_PATH>

~/.config/audiodotturn/
~/config/audiodotturn/
~/audiodotturn/
~/
/usr/local/etc/audiodotturn/
/etc/audiodotturn/

Once copied rename the config file to adt_config.json and change any desired settings, if the config warning is no longer showing up, then your new config has loaded properly.

A config can also be set at runtime with the -c flag

Dependencies

External libraries:

Standard:

  • os

  • re

  • json

  • argparse

  • shutil

Choosing a formatter

TODO

Currently standard formatter will always be ran. It should format most files fairly well.

Choosing a constructor

TODO: explain

  • “simple”:

  • “block”:

Creating a database

Database path is set in config or during runtime.

A new database will be created if one isnt already when running the create or view commands. Populate the database by using the format file or format directory commands, this will update a database as well. I recommend doing this with dry run if you just want to create a database without formatting any files.

Disclaimer

AudioDotTurn is currently in alpha testing and is provided as is with no warranties or guarantees of any kind. The author of the program is not responsible for any damages or issues caused by the use of this program. Use at your own risk.

Roadmap

  • General regex adjusting for broader use

  • Bug fixes and optimization

License

MIT

This project is licensed under the MIT License. See the LICENSE file for

GENERAL USAGE

audiodotturn [-h] [-v] [-c CONFIG] [-D DATABASE] [--defaults [{program,format,all}]] [--options [{program,format,all}]] {set,create,view} ...

Format, organize and retrieve data from audio files.

positional arguments:
{set,create,view}
    set                 Set defaults
    create              Create subcommands
    view                View subcommands

options:
-h, --help            show this help message and exit
-v, --version         Show current version of audiodotturn
-c CONFIG, --config CONFIG
                        Path to a specific configuration file to use for the session.
-D DATABASE, --database DATABASE
                        Path to .db file for library database
--defaults [{program,format,all}]
                        Show default settings
--options [{program,format,all}]
                        Show default settings

SET COMMAND USAGE

audiodotturn set [-h] [-d] [-a ARTIST] [-t TITLE] [-f FEATURES] [-m MISC] [-y YOUTUBE_ID] [--filetype FILETYPE] [-s {true,false}] [-q DATA] [-p DIRECTORY]
                        [-x {default,standard,normal,yt,youtube}] [-b CONSTRUCTOR] [-e ERRORMSG] [--exts EXTS]

options:
-h, --help            show this help message and exit
-d, --dry             Dry run

formatting options:
-a ARTIST, --artist ARTIST
                        Default artist name for audio files
-t TITLE, --title TITLE
                        Default title for audio files
-f FEATURES, --features FEATURES
                        Default features for audio files
-m MISC, --misc MISC  Default miscellaneous info for audio files
-y YOUTUBE_ID, --youtube-id YOUTUBE_ID
                        Default YouTube ID for audio files
--filetype FILETYPE   Default audio file type

program options:
-s {true,false}, --dryset {true,false}
                        Default dry run setting
-q DATA, --data DATA  Default JSON filename
-p DIRECTORY, --path DIRECTORY
                        Default working directory
-x {default,standard,normal,yt,youtube}, --extractor {default,standard,normal,yt,youtube}
                        Default extractor
-b CONSTRUCTOR, --constructor CONSTRUCTOR
                        Default constructor
-e ERRORMSG, --error ERRORMSG
                        Default error message options. comma seperated string of options.
--exts EXTS           Default formattable file extensions. comma seperated string of options.

CREATE COMMAND USAGE

audiodotturn create [-h] [-f FORMAT] [-x EXTRACTOR] [-b CONSTRUCTOR] [-F] [-o] [--dry] [-p DIRECTORY]

options:
-h, --help            show this help message and exit
-f FORMAT, --format FORMAT
                        Format single file
-x EXTRACTOR, --extractor EXTRACTOR
                        Define the extractor to use
-b CONSTRUCTOR, --constructor CONSTRUCTOR
                        Define the constructor to use
-F, --formatdir       Format all files in directory
-o, --organize        Organize all files in directory and create database entries if they dont exist.
--dry                 Dry run
-p DIRECTORY, --path DIRECTORY
                        Directory to organize or format files, the programs working directory

VIEW COMMAND USAGE

audiodotturn view [-h] {artists,songs} ...

positional arguments:
{artists,songs}
    artists        View list of artists
    songs          View list of songs

options:
-h, --help       show this help message and exit

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

audiodotturn-0.4.0.tar.gz (30.1 kB view hashes)

Uploaded Source

Built Distribution

audiodotturn-0.4.0-py3-none-any.whl (35.1 kB view hashes)

Uploaded Python 3

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