Send a YouTube video from your browser to the Corsair Xeneon Edge screen via iCUE, with a single click.
A button is added to the YouTube player controls. When clicked, it captures the current video and timecode, pauses playback in the browser, and sends it to your Xeneon Edge where it resumes at the exact same position. Playlists and YouTube Mixes are also supported.
- One-click send from YouTube to Xeneon Edge
- Resumes playback at the exact timecode
- Playlist and Mix support with auto-advancement
- Touch-friendly custom controls (play/pause, seek, skip, volume)
- Playlist panel with thumbnails and track selection
- Gesture controls (swipe, long press + drag)
- Controls auto-hide after a few seconds
Chrome (YouTube) ---> Local server (localhost:3654) <--- iCUE widget (Xeneon Edge)
[click] [receives & serves] [polls & displays]
- Chrome extension — Injects a button into the YouTube player. On click, it sends the video ID, title, timecode and playlist data to a local server.
- Local server — A lightweight Node.js server (zero dependencies) that receives video data from the extension and serves a widget page to iCUE.
- Node.js (v18 or later)
- Google Chrome (or Chromium-based browser)
- Corsair iCUE with a Xeneon Edge
git clone https://github.com/Ripolin99/YoutubeToXeneon.git
cd YoutubeToXeneonnode server/server.jsThe server starts on port 3654 by default. To use a different port:
node server/server.js --port 4000If you change the port, you also need to update
SERVER_URLinextension/content.jsand thehost_permissionsinextension/manifest.json.
- Open Chrome and go to
chrome://extensions/ - Enable Developer mode (toggle in the top right)
- Click Load unpacked
- Select the
extension/folder from this repository
In Corsair iCUE, add an iFrame widget to your Xeneon Edge screen and paste the following HTML in the widget's code field:
<iframe src="http://localhost:3654" width="100%" height="100%" frameborder="0" allow="autoplay; encrypted-media"></iframe>Note: The URL Web widget will not work here as it requires HTTPS (
ERR_SSL_PROTOCOL_ERROR). You must use the iFrame widget and paste the HTML code above.
- Make sure the server is running
- Browse YouTube normally
- When you want to send a video to the Xeneon Edge, click the screen icon in the player controls (next to the fullscreen button)
- The video pauses in your browser and starts playing on the Xeneon Edge at the same timecode
You can click the button again at any time to resend at a different position.
Buttons
- Tap anywhere to show/hide controls
- Play/Pause — center button
- Rewind/Forward 10s — left/right buttons
- Previous/Next — visible when a playlist is active
- Progress bar — drag to seek
- Volume — tap the speaker icon to reveal the slider
- Playlist — tap the playlist icon to open the track list
Gestures
- Swipe left — next video (playlist only)
- Swipe right — previous video (playlist only)
- Long press + drag horizontally — seek forward/backward (visual feedback shows the offset)
- Long press + drag vertically — adjust volume (visual feedback shows the percentage)
YoutubeToXeneon/
├── server/
│ ├── server.js # Local server (Node.js, zero dependencies)
│ └── public/
│ └── index.html # Widget page served to iCUE
├── extension/
│ ├── manifest.json # Chrome extension manifest (v3)
│ ├── content.js # Injected into YouTube pages
│ ├── content.css # Button styling
│ ├── icon48.png
│ └── icon128.png
├── .gitignore
├── LICENSE
└── README.md
MIT