RoseCast

No description available.

RoseCast

A low-latency desktop streaming solution that streams your computer's display and audio to a Roku device using HLS (HTTP Live Streaming).

Overview

RoseCast consists of two components:

  1. Roku Channel - A BrightScript channel that plays the HLS stream on your Roku device
  2. FFmpeg Streamer - A Go application that captures your desktop video/audio and serves it as an HLS stream

Features

  • Low Latency Streaming - Optimized for 2-4 second delay
  • High Quality - 1080p @ 30fps with H.264 video and AAC audio
  • Simple Setup - Just build and run
  • Auto Cleanup - Automatically manages HLS segments

Quick Start

1. Install the Roku Channel

The channel is already packaged and uploaded to your Roku device. Just launch "RoseCast" from your Roku home screen.

2. Start the Streamer

cd ffmpeg-streamer
go build -o rosecast-streamer
./rosecast-streamer

The stream will be available at: http://192.168.1.240:8080/stream.m3u8

3. Launch the Channel

Open the RoseCast channel on your Roku and it will automatically connect to the stream.

System Requirements

  • Linux with X11 display server
  • FFmpeg with x11grab and PulseAudio support
  • Go 1.21 or later
  • Roku device with developer mode enabled

Network Configuration

  • Computer IP: 192.168.1.240
  • Roku IP: 192.168.1.131
  • Stream Port: 8080

Project Structure

RoseCast/
├── roku-channel/          # Roku BrightScript channel
│   ├── source/           # Main entry point
│   ├── components/       # UI components and video player
│   ├── images/           # Channel icons and splash screens
│   └── manifest          # Channel metadata
├── ffmpeg-streamer/      # Go streaming application
│   ├── main.go          # Main streamer code
│   ├── go.mod           # Go module definition
│   └── README.md        # Streamer documentation
└── RoseCast.zip         # Packaged Roku channel

Credits

This entire project was created by GitHub Copilot.

100% of the code, architecture, and implementation was generated by GitHub Copilot CLI in response to user prompts. This includes:

  • The Roku BrightScript channel
  • The Go FFmpeg streaming server
  • HLS encoding configuration
  • Network setup and deployment
  • All documentation

License

Use freely for personal projects.