Commit Graph

9 Commits

Author SHA1 Message Date
Luke Bermingham
a7599949b7 Update Samples/PixelStreaming with early work from 5.1. (Multiple authors)
*************
Features
*************
- Added stat in stats panel to show currently used audio/video codec.
- Added audio bitrate in the stats panel.
- Added toggle in the settings panel to force mono audio.
- Added new info in stats panel to indicate input controlling mode.
- Added Linux platform scripts for the Matchmaker/SFU.
- Added npm commands for signalling server. `npm run $config -- $args` which will work across platforms (`$config` might be `start-signalling-server` and args might be `--debug`)

*************
Bugfixes
*************
- Fix matchmaker taking up to 45 seconds to display a valid server for use.
- Fix regression where all browser audio was mono (default now stereo).
- Fix Linux SFU and Signalling Server scripts not grabbing the public IP correctly.
- Fix linux setup scripts not working when being run from a location that has a space in the path.
- Fix SFU run_cloud.bat tries to call non-existent run.bat.
- Fix being unable to type in console of a streamed application.
- Fix docker scripts running only TURN when we needed both TURN and cirrus.
- Fix docker scripts not starting correctly.

*************
Refactors
*************
- Bash scripts have been refactored for readability.

#rb self
#fyi Mattias.Jansson, Aidan.Possemiers
#preflight https://horde.devtools.epicgames.com/job/628c894f5665463c21effaa9

[CL 20345056 by Luke Bermingham in ue5-main branch]
2022-05-24 03:43:51 -04:00
Luke Bermingham
a050144f1b Remove admin requirement from Windows Pixel Streaming scripts.
Remove choco requirement from Windows Pixel Streaming scripts.
Make node installation folder specific and not pollute system or clash with existing node installations.
Make SFU/Matchmaker Windows scripts have similar installation and run procedure to signalling server scripts.
Make SFU order independent of whether it should start before or after signalling server by making it attempt a reconnect (every 2 seconds) to the signalling server after a disconnect.

#jira UE-146769
#fyi Nick.Pace, William.Belcher, Phillipe.Rebours
#rb self
#preflight 62397417b3653cf6afd5c1e7

[CL 19464364 by Luke Bermingham in ue5-main branch]
2022-03-22 03:47:18 -04:00
Luke Bermingham
716a28fca4 Fix resolution changing and fix match viewport resolution browser side option.
#rb Aidan.Possemiers
#fyi Mattias.Jansson, William.Belcher
#preflight none

[CL 18992874 by Luke Bermingham in ue5-main branch]
2022-02-15 01:39:18 -05:00
william belcher
be55394a88 Remove the Kick All button from the Pixel Streaming front end. Replace this functionality with a Kick Player blueprint.
#jira none
#preflight 61f7a5f86a7c7b134f34ba36
#rb luke.bermingham
[FYI] mattias.jansson

#ROBOMERGE-AUTHOR: william.belcher
#ROBOMERGE-SOURCE: CL 18803013 in //UE5/Release-5.0/... via CL 18803028 via CL 18821570
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18821651 by william belcher in ue5-main branch]
2022-02-02 01:48:23 -05:00
luke bermingham
4e548355ef Exposed three new settings for the Pixel Streaming JavaScript/settings panel. These can used in the settings panel by clicking the appropriate input toggle before clicking connect or by appending the following to the url:
/?preferSFU which lets the user indicate whether they would like to try to connect to the SFU,
/?ForceTURN which lets the user indicate they will only make a peer connection using a relay candidate (this is useful on Chrome when debugging TURN servers),
/?useMic which lets the user indicate they would like to use their microphone to send audio back into Unreal Engine, which can be then be consumed by a PixelStreamingAudioComponent in the scene.

#rb William.Belcher
[FYI] Mattias.Jansson, Aidan.Possemiers, Matthew.Cotton, Nick.Pace, Michael.Wallace
#preflight trivial

#ROBOMERGE-AUTHOR: luke.bermingham
#ROBOMERGE-SOURCE: CL 18787077 in //UE5/Release-5.0/... via CL 18787080 via CL 18787273
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18787275 by luke bermingham in ue5-main branch]
2022-01-31 02:40:37 -05:00
luke bermingham
be6357d7a2 Rework PixelStreaming stats to use internal WebRTC stats.
- Stats can now be queried.
- Stats can be listened to for changes using IPixelStreamingModule::AddAnyStatChangedCallback.
- Web frontend stats/settings cleaned up to reflect only important settings a user can change.
- Removed latency tester in favour of a stats report.

#jira UE-136118
#rb self
[FYI] Aidan.Possemiers, Nick.Pace, Matthew.Cotton, William.Belcher
#preflight 61d24a8921763c62c97d1378

#ROBOMERGE-AUTHOR: luke.bermingham
#ROBOMERGE-SOURCE: CL 18499770 in //UE5/Release-5.0/... via CL 18499772
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18499773 by luke bermingham in ue5-release-engine-test branch]
2022-01-02 20:27:41 -05:00
luke bermingham
5b7cd93fdb Fix for Firefox and TURN on AWS. The shim we were using was broken.
- Improve JS logging with formatting and colouring, removed redundant logs.
- Added url parameter ?ForceTURN because Firefox method of forcing TURN seems problematic and Chrome does not have a method to force TURN.

#JIRA UE-136873
#rb Matthew.Cotton
[FYI] Nick.Pace, Mattias.Jansson, Aidan.Possemiers, Marco.Anastasi

#ROBOMERGE-AUTHOR: luke.bermingham
#ROBOMERGE-SOURCE: CL 18428596 in //UE5/Release-5.0/... via CL 18428600
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18428605 by luke bermingham in ue5-release-engine-test branch]
2021-12-09 23:32:07 -05:00
matthew cotton
1363134cbe Merging //UE5/Dev-TensorWorks CLs 18200048 and 18306147 to Release-5.0 (//UE5/Release-5.0)
- Changing the offer/request order
- Adding sfu support
- Adding simulcast support
- Largish structural changes
- adding reference SFU server

#jira UE-136239, UE-136238
#rb aidan.possemiers, luke.bermingham, nick.pace
[FYI] Mattias.Jansson

#ROBOMERGE-AUTHOR: matthew.cotton
#ROBOMERGE-SOURCE: CL 18345619 in //UE5/Release-5.0/... via CL 18345653
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18345683 by matthew cotton in ue5-release-engine-test branch]
2021-12-01 16:57:33 -05:00
nick pace
fa7ea09416 Add sample files for Pixel Streaming Matchmaker and Signalling Web Server
#JIRA UCS-1831
#rb luke.bermingham
[FYI] aidan.possemiers, marco.anastasi

#ROBOMERGE-AUTHOR: nick.pace
#ROBOMERGE-SOURCE: CL 17919803 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v885-17909292)

[CL 17919815 by nick pace in ue5-release-engine-test branch]
2021-10-25 23:30:36 -04:00