regorxxx / Playlist-Tools-SMP

A collection of Spider Monkey tools for foobar2000: from removing duplicates, to dynamic queries or "spotify-like" playlist creation.
https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/playlist-tools-smp/
GNU Affero General Public License v3.0
41 stars 6 forks source link
foobar2000 foobar2000-component foobar2000-smp-script lastfm music-player playlist-generator playlist-tools-addon spidermonkey-engine

Playlist-Tools-SMP

version CodeFactor CodacyBadge GitHub
A collection of Spider Monkey Panel Scripts for foobar2000, built within a menu, which serves as a hub for 'usage examples' and shortcuts to the most requested foobar missing functionalities: remove duplicates by tags, revive dead items, check errors on tags, spotify-like playlist creation, advanced queries, etc.

WARNING: MOST OF THESE TOOLS FULLFILL MY PERSONAL NEEDS AND/OR OFFER FEATURES I CONSIDER NOT COVERED BY NATIVE FOOBAR2000, OUTDATED PLUGINS OR ARE LIMITED IN THEIR ORIGINAL COMPONENTS. THESE ARE ADVANCED TOOLS, IF YOU ARE EXPECTING A FOOLPROOF TOOL, LOOK ELSEWHERE. PLEASE, WHILE BUG REPORTS AND CONSTRUCTIVE FEEDBACK ARE WELCOME, DON'T COMPLAIN ABOUT THINGS BEING TOO COMPLEX. THEY ARE MEANT THIS WAY. IF YOU WANT SOMETHING DESIGNED JUST FOR YOU, FEEL FREE TO CONTACT ME FOR PAID WORK.

pt_topplayed

Features

pt_searchbygraph

It's impossible to offer a complete list of the things that can be done with these tools, in a few words: anything related to playlist creation, sorting, library maintenance, automation, etc. but a readme for every utility can be found using the corresponding menu (on configuration).

The collection of scripts provided here are not only an alternative to Random Pools or MusicIp but an improvement and generalization in many aspects of those tools. To use this plugin at its best and to benefit the most from your library, you will want to make sure that your songs have the most possible information on genre, style, key, moods, etc.

pt_customizable

pt_ssametages

The sky is the limit once you use the current scripts to create your own buttons and tools. Currently contains pre-defined use-cases for these scripts:

The menus are highly customizable. They are created on demand according to the selected tracks or current playlist, and many entries can be added, removed or edited to suit your needs. Also if some scripts are missing, the menu is rebuilt skipping those entries (letting you to install selectively what you need).

[^pools]: Note for sensitive souls: SQL database functionality from Random Pools will not be replicated since I consider it an inferior and user-inaccessible feature -with slower performance- which may be easily replicated by other means. On the other hand, things like duplication removal are totally absent on the original plugin, which may be a reason to switch to this alternative in some libraries. Advanced pools may be created using JSON presets, which allow to create really complex actions with different sources or built-in harmonic mixing. It's not a matter of which implementation is "better"; so if you feel some functionality is missing (not replicable in conjuction with the other tools available), let me know. ;)

pt_availablemenus

pt_dynamicqueries

Compatible with (toolbar)

  1. Search-by-Distance-SMP: creates intelligent "spotify-like" playlist using high-level data from tracks and computing their similarity using genres/styles.
  2. ListenBrainz-SMP: Integrates Listenbrainz's feedback and recommendations.
  3. Autobackup-SMP: Automatic saving and backup of configuration and other data in foobar2000.
  4. Device-Priority-SMP: Automatic output device selection.
  5. Fingerprint-Tools-SMP: ChromaPrint and FooId fingerprinting tools.
  6. Wrapped-SMP: Outputs a report similar to Spotify's wrapped and personalized playlists.

Also integrates

  1. Search-by-Distance-SMP: creates intelligent "spotify-like" playlist using high-level data from tracks and computing their similarity using genres/styles.
  2. Music-Graph: An open source graph representation of most genres and styles found on popular, classical and folk music.
  3. Camelot-Wheel-Notation: Javascript implementation of the Camelot Wheel, ready to use "harmonic mixing" rules and translations for standard key notations.
  4. Menu-Framework-SMP: Helper which allows to easily create customizable and dynamic menus.

pt_Toprated

Installation

See _TIPS and INSTALLATION (txt) and the Wiki. Not properly following the installation instructions will result in scripts not working as intended. Please don't report errors before checking this.