Module: LCKStreaming | Version: 1.0 | Platforms: Win64, Android (Quest)
What is LCKStreaming?
LCKStreaming adds live streaming to your Unreal Engine project. It connects to the LIV backend to authenticate users, resolve streaming targets, and push video/audio over RTMP to YouTube, Twitch, or any manual RTMP endpoint. The module handles the full lifecycle: device-based authentication, streaming configuration, RTMP connection management, encoder health monitoring, and automatic bitrate selection per platform.Architecture
Module Structure
Prerequisites
- Enable streaming — Set
bEnableStreaming = truein Project Settings → Plugins → LCK SDK → Features. Defaults tofalse. - Valid Tracking ID — Your project must have a Tracking ID configured in LCK Developer Settings.
- RTMP libraries loaded —
librtmpDLLs (Win64) orlibrtmp.so(Android) must be present and loadable at runtime. CheckFLCKStreamingModule::IsRtmpAvailable(). - LIV account with subscription — The end user needs a LIV account with an active streaming subscription.
Platform Support
Streaming Targets
Platform Bitrates
Bitrates are selected automatically based on the target platform and resolution.YouTube
Twitch
Keyframe interval is fixed at 2 seconds for all targets, as required by YouTube and Twitch ingest servers.
Relationship to Recording
Streaming and recording share the same encoder pipeline. When both are active simultaneously, the streaming module piggybacks on the active recording encoder rather than creating a second one. This means you can stream and record at the same time with no additional encoding overhead.Streaming State Machine
Key Timing Constants
Delegates
The subsystem exposes seven delegates for responding to streaming lifecycle events:Log Category
See Also
Quick Start
Get streaming in 5 minutes
Authentication
Device pairing and login flow
Streaming Subsystem API
Full API reference