Skip to main content


Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Device-Priority-SMP (Read 428 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.


Spider Monkey Panel Script for, built within a button. Automate foobar2000's output without having to select devices manually every time one is disconnected/connected. Wireless, headphone, and server devices auto-switch made easy.

  • Export Device List: after connecting all devices desired to be used at some point, the list can be exported to be able to set them at a later point as prioritized devices (even if they are not connected).
  • 1-5 slots for prioritized devices: set the order in which the devices must be set as output. Device 1 would be used (if available) before Device 2 and so on...
  • Server friendly: some wireless devices pause playback when they are disconnected, thus requiring to manually start playback again even if the device has been changed (manually or automatically). The script checks if playback is paused after swapping devices and will continue it automatically in those cases for a seamless change between devices when you switch them off/on.
  • Toolbar: the button can be loaded within a toolbar or as an independent button. It's fully compatible with my other scripts which also use a toolbar (see at bottom), so the button can be simply merged with your already existing toolbar panel easily.

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. Playlist-Tools-SMP: Offers different pre-defefined examples for intelligent playlist creation.

Copy all files from the zip into YOUR_FOOBAR_PROFILE_PATH\scripts\SMP\xxx-scripts 
Any other path WILL NOT work without editing the scripts.
For ex: mine is c:\Users\xxx\AppData\Roaming\foobar2000\scripts\SMP\xxx-scripts\... 
For portable installations >= 1.6: .\foobar2000\profile\scripts\SMP\xxx-scripts\... 
For portable installations <= 1.5: .\foobar2000\scripts\SMP\xxx-scripts\... 
Then load 'buttons_device_priority.js' (button) into a SMP panel within foobar.

If you already have the toolbar from any of my other scripts, just load the button using the config menu on the toolbar within foobar2000 (see previous gif). Also read file '_TIPS and INSTALLATION.txt for additional comments about foobar portable installations, not properly following the installation instructions will result in scripts not working as intended. Please don't report errors before checking this.

Download latest release (or nightly releases) at github:

Re: Device-Priority-SMP

Reply #1
New update, idiot of me.. I missed a file on the release so it could not work. Now fixed. No more changes.
Check 1.0.1.


Re: Device-Priority-SMP

Reply #2
Made it easier populating the list of available devices by adding new connected ones instead of recreating the entire list.
   ### Added
   - New menu entry 'Add new devices to list' which adds any non present device to the list of available options. This can be used as workaround instead of connecting all devices which will be used to create the complete list, adding devices on demand in an incremental way... much easier than recreating the entire list whenever a change has to be made.
   ### Changed
   - Helpers: additional checks at json loading on all scripts. Warnings via popup when a corrupted file is found.
   ### Removed
   ### Fixed
   - Fixed crash when loading corrupt devices json file. Now warns about it with a popup.

Re: Device-Priority-SMP

Reply #3
Minor update for compatibility with latest Playlist Tools.