Tuneshine
Tuneshine is a wifi-connected hardware device with an aesthetic, low-count LED display for showcasing the album art of the music you are currently listening to.
You can use Multi-Scrobbler to push Now Playing activity from any of your Sources (that include album art) to Tuneshine.
Tuneshine requires that artwork is sent with Now Playing data. Therefore, if your Source does not provide artwork (no album art is shown in MS dashboard) then MS will not send Now Playing to Tuneshine.
Consider using Transforms from Rocksky, Spotify, or Musicbrainz + Cover Art Archive to fill in missing artwork.
Artwork URL Reachability
MS sends resized, formatted image data directly to Tuneshine.
To do this it downloads the art image from the URL reported by your Sources, converts it in-memory, and sends that to Tuneshine. Consequently, the image URLs must be reachable by MS: they cannot be protected by authentication or otherwise unreachable on the network from wherever MS is hosted.
Setup
Your Tuneshine will need to be connected to wifi in order for Multi-Scrobbler to talk to it.
Find the IP address or advirtised hostname for your Tuneshine, then use that as a URL in your MS config either as host or TUNE_HOST (see configuration below.)
URL Format
If you are using the IP address for your Tuneshine then then URL used for host should be like
http://192.168.YOUR.IP
If you are using the advirtised hostname on your local network then host should be like
http://tuneshine-4064.local
If you are reaching your Tuneshine in some other form (like behind a reverse proxy) then just treat it as a normal web server when forming your URL.
Configuration
- ENV
- File
- AIO
This is configuration for the ENV Config Type.
| Environmental Variable | Type | Default | Description |
|---|---|---|---|
TUNE_ID | string | A globally unique ID EX myComponentId | |
TUNE_NAME | string | Value of TUNE_ID | A vanity name EX My Cool Component |
TUNE_ENABLE | boolean | true | Should this component be used? |
TUNE_HOST | string | IP or http(s)://hostname for the Tuneshine device |
Bold/Italic = Required
Config Structure
This displays the structure of the File Configuration for a tuneshine type Client with all possible properties, their shape, and descriptions/types. Use this to understand how to write a valid config.
Config Example
This displays an example config file of a tuneshine Client File Configuration that adheres to the shown Config Structure.
- text mode lets you edit the JSON directly.
- tree mode gives you a guided point-and-click editing experience that always keeps the JSON syntax valid.
Both modes validate that the configuration is correct. Any errors show up as squiggly lines.
Only client tuneshine configs will validate correctly in the editor but both source and client tuneshine configs are allowed in the real CONFIG/tuneshine.json
After you finish editing, switch to text and then copy all text to get a completed config.
Config Example Mobile Experience
This displays an example config file of a tuneshine Client File Configuration that adheres to the shown Config Structure.
The example config file editor is meant for a larger screen experience so only the read-only example is shown. Please use this site on a tablet/laptop/desktop to enable file editor features.
[
{
"enable": true,
"id": "MyTuneshine",
"name": "MyCoolTuneshine",
"data": {
"host": "http://tuneshine-4064.local"
}
}
]
Config Structure
This displays the structure of the all-in-one (config.json) configuration with all possible properties, their shape, and descriptions/types. Use this to understand how to write a valid config.
Select the tuneshine type from the respective clients node below, then expand it.
Config Example
This displays an example config file of a all-in-one (config.json) configuration that includes a tuneshine Client that adheres to the shown Config Structure.
- text mode lets you edit the JSON directly.
- tree mode gives you a guided point-and-click editing experience that always keeps the JSON syntax valid.
Both modes validate that the configuraion is correct. Any errors show up as squiggly lines.
After you finish editing, switch to text and then copy all text to get a completed config.
Config Example Mobile Experience
This displays an example config file of a all-in-one (config.json) configuration that includes a tuneshine Client that adheres to the shown Config Structure.
The example config file editor is meant for a larger screen experience so only the read-only example is shown. Please use this site on a tablet/laptop/desktop to enable file editor features.
{
"clients": [
{
"enable": true,
"id": "MyTuneshine",
"name": "MyCoolTuneshine",
"data": {
"host": "http://tuneshine-4064.local"
},
"type": "tuneshine"
}
]
}