Configuration
Configuration and initialization the Arcware Pixel Streaming WebSDK is designed to be easily configurable to fit the needs of various web applications.
This section explains the configuration options that can be passed to the Arcware Pixel Streaming WebSDK during initialization.
The most common way to initialize the SDK is through the ArcwareInit function.
export function ArcwareInit(
ids: ConnectionInfo,
configuration?: ArcwareInitConfiguration,
forceRefresh: boolean = false
): ArcwareInitResultArcwareInit initializes the WebSDK and returns the main SDK components required to interact with the stream.
interface ArcwareInitResult {
Config: ArcwareConfig
PixelStreaming: ArcwarePixelStreaming
Application: ArcwareApplication
}These components represent different layers of the SDK:
Config
Holds configuration and connection parameters
PixelStreaming
Manages the WebRTC stream and player
Application
Handles interaction with Unreal Engine (messages, commands, events)
ArcwareInit vs CoreSetup
Most integrations should use ArcwareInit.
ArcwareInit is a high-level helper function that:
creates the internal SDK objects
connects them together
guards against accidental reinitialization
simplifies integration with frameworks such as React, Vue, or Angular
It also prevents multiple instances of the stream from being created during page re-renders.
If you intentionally need fresh SDK objects, you can force reinitialization:
CoreSetup (Advanced Usage)
For advanced integrations, the SDK also exposes a lower-level initialization method called CoreSetup.
CoreSetup allows developers to manually create and connect the SDK components:
ArcwareConfigArcwarePixelStreamingArcwareApplication
This approach is useful if you need:
complete lifecycle control
smaller footprint
custom UI implementations
multiple streaming instances
deeper integration with application architecture
Most applications do not need CoreSetup, and ArcwareInit is recommended for typical use cases.
Configuration Options
The ArcwareInit function takes three parameters:
ids: ConnectionInfoconfiguration: ArcwareInitConfigurationforceRefresh: boolean
1. ConnectionInfo
This parameter defines the connection information required to start a streaming session.
shareId
The Share ID is required and identifies the project that should be streamed.
It can be considered a temporary access token that can be revoked or updated at any time from the Arcware Cloud Platform.
projectId
This is only required if a Share ID is linked to multiple projects.
If the Share ID uniquely identifies a project, this parameter can be omitted.
2. ArcwareInitConfiguration
The second parameter configures the behavior of the WebSDK.
This configuration extends the Epic Games Pixel Streaming frontend configuration with additional Arcware-specific options.
Top-Level Configuration Parameters
settings
Arcware-specific configuration options
envName
Internal Arcware testing environment parameter (ignore in production)
initialSettings
Pixel Streaming frontend configuration
useUrlParams
Allows configuration via URL parameters
webSocketProtocols
Optional WebSocket protocol configuration
2.1 initialSettings
The initialSettings object exposes configuration parameters from the Epic Games Pixel Streaming frontend.
These settings are forwarded directly to the underlying Pixel Streaming infrastructure used by the WebSDK.
Because Arcware Cloud manages parts of the streaming infrastructure automatically, not all parameters exposed by the upstream Pixel Streaming frontend are recommended or meaningful when used with Arcware Cloud.
Settings generally fall into three categories:
Recommended Settings – safe and commonly used with Arcware Cloud
Advanced Pixel Streaming Settings – supported but rarely needed
Platform Controlled Settings – usually overridden by Arcware Cloud configuration
The upstream Pixel Streaming documentation can be found here:
The WebSDK forwards the initialSettings object to the Pixel Streaming frontend. Parameters introduced in newer versions of the Pixel Streaming infrastructure may work automatically even if they are not explicitly listed here.
Recommended Settings
These settings are tested and commonly used with Arcware Cloud.
AutoConnect
boolean
false
Automatically starts the connection to a streaming instance
AutoPlayVideo
boolean
true
Automatically starts video playback once the stream is ready
StartVideoMuted
boolean
true
Starts the video muted to avoid browser autoplay restrictions
HoveringMouse
boolean
true
Allows the cursor to hover instead of locking it inside the player
FakeMouseWithTouches
boolean
false
Converts touch input to mouse events
KeyboardInput
boolean
true
Enables keyboard input forwarding
MouseInput
boolean
true
Enables mouse input forwarding
TouchInput
boolean
true
Enables touch input forwarding
GamepadInput
boolean
true
Enables gamepad input forwarding
XRControllerInput
boolean
true
Enables XR controller input forwarding
SuppressBrowserKeys
boolean
true
Prevents browser keyboard shortcuts from interfering with the stream
UseMic
boolean
true
Enables microphone input forwarding
ForceMonoAudio
boolean
false
Forces mono audio output
Advanced Pixel Streaming Settings
These parameters originate from the Pixel Streaming infrastructure and are available through the WebSDK. They should only be modified if their behavior and implications are fully understood.
WebRTCFPS
number
Target framerate for the WebRTC stream
WebRTCMinBitrate
number
Minimum bitrate for WebRTC streaming
WebRTCMaxBitrate
number
Maximum bitrate for WebRTC streaming
MinQP
number
Minimum encoder quantization parameter
MaxQP
number
Maximum encoder quantization parameter
MinQuality
number
Minimum allowed quality level
MaxQuality
number
Maximum allowed quality level
PreferredCodec
string
Preferred video codec used by the stream
PreferredQuality
number
Preferred quality level when quality control is enabled
StreamerId
string
Identifier of the streamer to connect to
Changing these values may affect:
bandwidth consumption
visual quality
latency
stream stability
In most Arcware Cloud deployments these parameters are automatically optimized by the platform.
Platform Controlled Settings
Some parameters exist in the Pixel Streaming frontend but are typically controlled by the Arcware Cloud platform.
If configured in code, they may be overridden by platform settings.
TimeoutIfIdle
boolean
Enables AFK detection
AFKTimeout
number
Idle timeout in seconds
AFKCountdown
number
Countdown duration before disconnection
ForceTURN
boolean
Forces TURN relay usage
WaitForStreamer
boolean
Waits for streamer availability
AFK behavior and relay usage are controlled through Arcware Cloud project or Share ID settings.
Signalling Server
The signalling server parameter is internally handled by the WebSDK.
ss
string
WebSocket URL of the signalling server
Example:
This parameter should not be modified manually when using Arcware Cloud.
2.2 settings (Arcware-specific settings)
The settings object configures Arcware WebSDK specific features.
Example:
UI Controls
fullscreenButton
boolean
true
Show fullscreen button
settingsButton
boolean
false
Show settings menu
infoButton
boolean
false
Show debug overlay
audioButton
boolean
true
Show audio toggle
micButton
boolean
false
Show microphone toggle
stopButton
boolean
false
Show stop stream button
connectionStrengthIcon
boolean
false
Show connection quality indicator
Note: The connection strength indicator is derived from browser heuristics and may not accurately reflect network quality.
Session Parameters
session
string
Manually specify session ID
token
string
Platform authentication token
shareId
string
Share identifier used to start a stream
projectId
string
Required if Share ID maps to multiple projects
Display Settings
startWidth
number
Preferred instance start width
startHeight
number
Preferred instance start height
orientationZoom
Type:
Example:
This setting sends zoom hints to the Unreal application.
The Unreal application must implement support for this feature.
White Labelling
The WebSDK supports branding customization via the whiteLabelling object.
Example:
White Labelling Schema
splashScreenUrl
string
Image or video displayed while the stream loads
splashScreenMode
string
Display mode (contain, cover, stretch, repeat)
splashScreenPosition
string
CSS background-position value
splashScreenBgColor
string
Background color (CSS format)
loadingIconUrl
string
Custom loading icon
loadingIconFadeMs
number
Fade animation duration
hideLoveLetters
boolean
Hide loading messages
hideAfkOverlay
boolean
Hide AFK countdown overlay
URL Format
All asset URLs must be valid absolute URLs or relative paths.
Examples:
Supported file types:
Remote White Labelling
If enabled:
The WebSDK will request branding configuration from the Arcware backend and apply it dynamically.
URL-based White Labelling
If useUrlParams is enabled, branding configuration can also be provided via URL:
Example decoded object:
Last updated