Skip to content

Latest commit

 

History

History
93 lines (66 loc) · 2.64 KB

File metadata and controls

93 lines (66 loc) · 2.64 KB

PS5/XBOX Console Twitch relay for OBS to Kick/TikTok/Etc

Author: Harry Scanlan
Date Created: May 31, 2025

Created for my friend; you know who you are.

This application allows you to open at 1920x1080 Browser window full screen that you can then attach to OBS in order to stream your PS5/XBOX/Console to other streaming services, without having to pay for a stream relay.

A minimal Node.js/Express application that serves a full-screen Twitch embed plus a cropped, scaled-up overlay of a specific rectangle (e.g. where an “error” message appears). The app uses EJS for templating and serves static assets from public/.

Features

  • Full-screen Twitch player (16:9) served at http://localhost:3000
  • Built with Express (ESM) and EJS.
  • Customizable CSS offsets to target any rectangle in the 1920×1080 embed.

Prerequisites

  • Node.js ≥ 14
  • npm

Installation

  1. Clone or download this repository.
  2. From the project root, run:
    npm install
    This installs:
    • express
    • ejs

Configuration

1. Twitch Channel & Host

In views/index.ejs, locate the <iframe> tag:

<iframe
  id="twitch-base"
  src="https://player.twitch.tv/?channel=TWITCH_USERNAME&parent=localhost"
  allowfullscreen="true"
  scrolling="no">
</iframe>
  • Replace TWITCH_USERNAME with your Twitch channel name.
  • If you serve from a domain other than localhost, change parent=localhost to your domain (e.g. parent=example.com).

Running the App in Browser (NOT OBS)

  1. From project root:
    node server.js
  2. Open your browser to:
    http://localhost:3000
    
  3. You should see:
    • The full-screen Twitch player in the background
  • Parent mismatch error
    • Twitch requires the parent= parameter to exactly match your host (no http://).
    • If testing on localhost:3000, use parent=localhost.
    • If deployed to example.com, use parent=example.com.

Running in OBS

  • Open OBS
  • Add a new source by clicking the + button
  • Select "Browser", create new
  • set the URL to http://localhost:3000
  • set the width to 1920
  • set the height to 1080
    • This is not where you setup your vertical resolution. It must be 1920x1080 to get the best quality and retain aspect ratio

Setting up Vertical layout in OBS

  • You can likely google this for now, but I will add more if required.

Setting up TIKTOK Stream in OBS

  • You can likely google this for now, but I will add more if required.

License

This project is provided “as-is” without warranty. Feel free to modify and use in your own projects.