An open API service indexing awesome lists of open source software.

https://github.com/mwdle/musictools

A small collection of basic tools and scripts for bulk management of a local music library.
https://github.com/mwdle/musictools

m3u m3u-playlist m3u-playlist-generator music music-library music-tools playlist-generator python3 rename-files rename-folders rename-script renamer-utility

Last synced: 8 months ago
JSON representation

A small collection of basic tools and scripts for bulk management of a local music library.

Awesome Lists containing this project

README

          

# MusicTools

A small collection of basic tools and scripts for management of a local music library.

## Table of Contents

* [Description](#musictools)
* [M3U Playlist Generator](#playlist-generator)
* [Repair File/Folder Name Utility](#name-normalizer)
* [License](#license)
* [Disclaimer](#disclaimer)

## Playlist Generator

This script allows you to quickly generate a .m3u playlist containing all music in a given folder and subfolders. Has support for excluding files/folders using regex.
To learn more, execute the following from a shell in the same folder as this README:

```shell
python3 generatePlaylist.py --help
```

or

```shell
python3 generatePlaylist.py -h
```

## Name Normalizer

Some song, album, and artist names have characters that don't play nicely with some systems, resulting in poor portability of your music library when syncing across devices.
This script automates the process of removing and replacing such characters from your music library.
To learn more, execute the following from a shell in the same folder as this README:

```shell
python3 normalizeNames.py --help
```

or

```shell
python3 normalizeNames.py -h
```

## Playlist File Structure Flattener

> This script assumes all filepaths in your .m3u playlist follow UNIX conventions.

I recently wanted to migrate my music library file structure from `Playlist/Artist/Album/song.ext` to `Artist/Album/song.ext` which required adjusting many filepaths across many .m3u playlists.
This script automates the process of updating a .m3u playlist to use filepaths one level up.
Essentially the script removes the leading directory of every filepath in the playlist, so `some/path/song.ext` becomes `path/song.ext`.

> This script only modifies the .m3u file you provide, it doesn't update your music library structure, that is something that can easily be done manually in a file explorer.

To learn more, execute the following from a shell in the same folder as this README:

```shell
python3 flattenPlaylist.py --help
```

or

```shell
python3 flattenPlaylist.py -h
```

## License

This project is licensed under the GNU General Public License v3.0 (GPL-3.0). See the [LICENSE](LICENSE.txt) file for details.

## Disclaimer

This repository is provided as-is and is intended for informational and reference purposes only. The author assumes no responsibility for any errors or omissions in the content or for any consequences that may arise from the use of the information provided. Always exercise caution and seek professional advice if necessary.