Control your Feishin music playback directly from your Elgato Stream Deck!
Shown in OpenDeck on Linux.
🎵 Play/Pause: Start or stop your music with a single tap.
⏭️ Skip: Jump to the next/previous track effortlessly.
⏩ Fast Forward / Rewind: Jump through the current track (5–60 seconds per press, hold to keep going).
🔊 Volume: Volume up/down (hold to keep going) and mute, with the current volume shown on the key.
🎛️ Stream Deck +: A volume dial and a seek dial that shows the current track and its progress on the touch strip.
🔀 Shuffle: Mix up your playlist for a fresh listening experience.
🔁 Repeat: Switch between repeat off, repeat all and repeat one.
🔌 Guided setup: Every action shows whether Feishin is connected and walks you through the setup if it isn't.
🌐 Multilingual: Full support for English and German.
- Download the latest release from the Elgato Marketplace here
Requires Stream Deck 7.1 or later on Windows 10+ or macOS 12+ (on Linux, OpenDeck with Node.js 20+ works too), and the Feishin desktop app.
The plugin talks to Feishin's built-in remote control server. You'll find these steps (and the current connection status) in the settings of every Feishin action in the Stream Deck app, too.
- Open Feishin and go to Settings → Window → Remote
- Turn on Enable remote control server
- Set the username to
feishinand the password tostreamdeck - Keep the port at
4333
That's it – the status in the action settings turns green as soon as the plugin is connected.
Already using the remote control server with other credentials or a different port (or running Feishin on another computer)? Open the settings of any Feishin action in the Stream Deck app, expand Connection settings and enter your host, port, username and password there. They apply to all Feishin actions.
The status at the top of the action settings tells you what's wrong:
| Status | What to do |
|---|---|
| Feishin can't be reached | Make sure Feishin is running and Enable remote control server is on. Check that the port matches the one in Feishin. |
| Wrong username or password | Use the same username and password in Feishin and in the plugin's connection settings. |
| Can't connect to Feishin | Something else answered on that port – check host and port. |
A key showing a warning triangle when pressed means the plugin couldn't send the command, usually because Feishin isn't connected.
Feishin only reports its volume after the volume changes. If the volume actions show a hint that the volume is unknown, change the volume in Feishin once – the plugin remembers it from then on.
Simply drag and drop the desired Feishin actions onto your Stream Deck. Each button will display an icon representing its function. Actions with options (volume step, how far to jump, …) show them in their settings.
The plugin is built with the Stream Deck SDK (Node.js, TypeScript).
npm install
npm run build # builds de.felitendo.feishin.sdPlugin/bin/plugin.js
npx streamdeck link de.felitendo.feishin.sdPlugin # installs the plugin in Stream Deck for development
npm run watch # rebuilds and restarts the plugin on changes
npm run pack # creates dist/de.felitendo.feishin.streamDeckPluginsrc/feishin.ts– client for Feishin's remote control WebSocketsrc/actions/– the Stream Deck actionsde.felitendo.feishin.sdPlugin/ui/– the settings shown in the Stream Deck app (property inspector)
If you encounter any issues or have suggestions for improvements, please open an issue or contact me here.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the GPL 3.0 license.
