Commit Graph

7 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
William Belcher
24ba7c4cc9 Merge /UE5/Dev-Tensorworks to /UE5/Main. This includes:
Refactor player sessions
Fix PixelStreamingAudioComponent had delayed audio.
Fix audio bitrate from Unreal Engine to browser was set to a low default causing compressed audio quality in stream. The new default is now Opus maximum value of 510kb/s.
Fix the Selective Forwarding Unit (SFU) not being added to the Pixel Streaming samples folder for a packaged project
Fix default max bitrate not being high enough to support 4k.
Fix reconnections not autoplaying in the browser.
Add datachannel support to SFU.
Add WebRTC c++ client behaviour to pixel streaming system. This is used for developing unit tests.
Add a unit test that will start streaming, connect a client and check that a data channel message can be sent.
Add the ability for a user to start/stop streaming as needed through the use of PixelStreaming.StartStreaming and PixelStreaming.StopStreaming
Add the ability for the stream resolution to be changed at runtime

Notes: AVEncoder no longer stores a width and height; These properties have been moved to the FVideoEncoderInput. This input is now the source of truth and both AMF and NVENC will adapt their resolution to the input resolution.

#rb luke.bermingham
#fyi mattias.jansson, nick.pace, matthew.cotton, aidan.possemiers, sandor.hadas
#preflight 6204c7aba65a8a28464df03c
#jira none

[CL 18948482 by William Belcher in ue5-main branch]
2022-02-10 21:16:24 -05:00
william belcher
73eba4e1a8 Add platform specific scripts for launching the reference SFU
#jira none
#rb luke.bermingham
#preflight trivial
[FYI] mattias.jansson

#ROBOMERGE-AUTHOR: william.belcher
#ROBOMERGE-SOURCE: CL 18767209 in //UE5/Release-5.0/... via CL 18767224 via CL 18767475
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18767500 by william belcher in ue5-main branch]
2022-01-27 21:03:48 -05:00
sandor hadas
340aa84aff Add two docker containers (Dockerfile and .dockerignore files) and corresponding scripts to create those docker images, start and stop them. Also, minor script fixes.
#JIRA UE-138171
#rb Luke.Bermingham, Aidan.Possemiers
[FYI] Mattias.Jansson
#preflight trivial

#ROBOMERGE-AUTHOR: sandor.hadas
#ROBOMERGE-SOURCE: CL 18705692 in //UE5/Release-5.0/... via CL 18705717 via CL 18706245
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18706262 by sandor hadas in ue5-main branch]
2022-01-24 02:43:52 -05:00
luke bermingham
caec606945 Added default simulcast settings if none are specified and removed the implicit design that the presence of simulcast parameters implies the use of simulcast. Simulcast usage is instead triggered by the PSPFlag_IsSFU parameter in new peer connections.
- Fix for low bitrate when no SFU connected.
- Fix for no stream connection (black stream) when streamer connecting and no simulcast parameters specified.

#JIRA UE-137206
#rb self
[FYI] Nick.Pace, Aidan.Possemiers, Matthew.Cotton
#preflight 61ce4791ad69446e59129eda

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

[CL 18498102 by luke bermingham in ue5-release-engine-test branch]
2021-12-30 19:20:56 -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