Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Update common readme, patch bump
  • Loading branch information
lukehb authored Oct 13, 2025
commit 9be54964f8326bd1dada9e943ff3755652cfd499
21 changes: 10 additions & 11 deletions Common/README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,20 @@
# lib-pixelstreamingcommon

The common library for the browser/client side of Pixel Streaming experiences. This library exposes common functionality for frontend applications of the pixel streaming ecosystem.
This library exposes common functionality for Pixel Streaming web applications. Examples include message protocols, logging, events, and various utilities.

For examples of how to implement this library.
- See [lib-pixelstreamingfrontend](/Frontend/library)
- See [lib-pixelstreamingsignalling](/Signalling)
- Also see [Wilbur](/SignallingWebServer) which uses the signalling library to implement a full signalling server.
For examples of how to implement this library, see:
- [lib-pixelstreamingfrontend](https://github.com/EpicGamesExt/PixelStreamingInfrastructure/tree/master/Frontend/library)
- [lib-pixelstreamingsignalling](https://github.com/EpicGamesExt/PixelStreamingInfrastructure/tree/master/Signalling)
- [Wilbur](https://github.com/EpicGamesExt/PixelStreamingInfrastructure/tree/master/SignallingWebServer) (the reference Pixel Streaming signalling server)

### Adding it to your project
`npm i @epicgames-ps/lib-pixelstreamingcommon-ue5.6`
`npm i @epicgames-ps/lib-pixelstreamingcommon-ue5.5`

## Documentation
The API is documented [here](docs).
The API is documented [here](https://github.com/EpicGamesExt/PixelStreamingInfrastructure/tree/master/Common/docs).

### How this library is built
The NPM packages supports:
- ES6 module usage
- CommonJS usage
### NPM package contents
- ES6 modules
- CommonJS
- Type definitions
- Source maps
2 changes: 1 addition & 1 deletion Common/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@epicgames-ps/lib-pixelstreamingcommon-ue5.7",
"version": "0.1.0",
"version": "0.1.1",
"description": "Common utilities library for Unreal Engine 5.7 Pixel Streaming",
"main": "dist/cjs/pixelstreamingcommon.js",
"module": "dist/esm/pixelstreamingcommon.js",
Expand Down
19 changes: 10 additions & 9 deletions SignallingWebServer/README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# Wilbur
# Reference Signalling/Web Server (Wilbur)

A Direct replacement for cirrus.

Wilbur is a small intermediary application that sits between streamers and other peers. It handles the initial connection negotiations and some other small ongoing control messages between peers as well as acting as a simple web server for serving the [Frontend](/Frontend/README.md) web application.

Differences of behaviour from the old cirrus are described [here](from_cirrus.md).
Wilbur is the reference signalling/web server that is shipped with the Pixel Streaming plugin. It is a small intermediary application that sits between streamers and other peers. It handles the initial connection negotiations and some other small ongoing control messages between peers, while also acting as a basic http web server to serve the [Frontend](/Frontend/README.md) web application.

## Building
Building is handled by `npm` and `tsc`. However, the easiest method to install and build everything is to invoke:
Expand All @@ -30,7 +26,7 @@ In the `/common`, `/Signalling`, and `/SignallingWebServer` directories (in that
Each of these will output built files into the `build` or `dist` directory.

## Running
After you have build the server you can run it with both `node` directly or the `npm start` script.
After you have built the server you can run it with both `node` directly or the `npm start` script.
```
npm start -- [arguments]
```
Expand Down Expand Up @@ -95,8 +91,8 @@ Note that `www` being used as the http root assumes your Frontend is in that dir
This implementation is built on the [Signalling](../Signalling) library which is supplied as a library for developing signalling applications. Visit its [documentation](../Signalling/docs) for more information.

A development mode that watches for changes to libraries, frontend and source exists in this project. To utilize it you can invoke `npm run develop`. This will kick off a series of watchers that all watch the individual components of the signalling server and frontend for changes and will auto build and restart the signalling server, or in the case of frontend changes, redeploy the frontend for the signalling server to serve.
#### Note
By default, when the signalling server launches in this mode, the port to access the frontend changes to 1025 and so you will need to visit `http://localhost:1025` to access the frontend. This is to get around the need for elevated permissions for port 80.

**Note:** By default, when the signalling server launches in this mode, the port to access the frontend changes to 1025 and so you will need to visit `http://localhost:1025` to access the frontend. This is to get around the need for elevated permissions for port 80 on Linux.

### Self-signed certificates
During development it may be useful to work with self-signed SSL certificates (e.g. HTTPS is required for some features like XR and microphone usage). Self signed certificates can be generated using the following instructions:
Expand All @@ -116,3 +112,8 @@ During development it may be useful to work with self-signed SSL certificates (e
- [Protocol Messages](../Common/docs/messages.md)
- [Protocol Negotiation](../Common/docs/Protocol.md)

## Migrating from Cirrus
The previous reference signalling server was called Cirrus (UE 5.4 and earlier). Wilbur is a direct replacement for Cirrus.

Differences of behaviour from the old Cirrus server are described [here](from_cirrus.md).