One meaningful difference is that anyone who has depending on the old behaviour where a new streamer would override an existing one will have to change their setup.
This fixes the problem where the SFU crashes if multiple streamers attempt to connect.
#fyi William.Belcher, Mattias.Jansson
#rb self
#preflight trivial
#jira UE-143407
[CL 19505643 by Luke Bermingham in ue5-main branch]
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]
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]
Currently it is very delayed.
[FYI] Mattias.Jansson
#rb Aidan.Possemiers
#preflight 61f8f82d8b4112f7cc8ed493
#ROBOMERGE-AUTHOR: luke.bermingham
#ROBOMERGE-SOURCE: CL 18806406 in //UE5/Release-5.0/... via CL 18808528 via CL 18821791
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)
[CL 18822158 by luke bermingham in ue5-main branch]
/?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]
- 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]
- 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]
- adding the ability to connect directly to the streamer even when an sfu is connected. use UseDirect parameter to activate
#jira UE-136649
#rb aidan.possemiers, luke.bermingham, nick.pace
[FYI] Mattias.Jansson
#ROBOMERGE-AUTHOR: matthew.cotton
#ROBOMERGE-SOURCE: CL 18441498 in //UE5/Release-5.0/... via CL 18444774
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)
[CL 18444952 by matthew cotton in ue5-release-engine-test branch]
- 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]
#JIRA
#rb self
[FYI] luke.bermingham, marco.anastasi
#ROBOMERGE-AUTHOR: nick.pace
#ROBOMERGE-SOURCE: CL 18402475 in //UE5/Release-5.0/... via CL 18402479
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)
[CL 18402482 by nick pace in ue5-release-engine-test branch]
//UE5/Main/Samples/PixelStreaming/WebServers/SignallingWebServer/...
to //UE5/Release-5.0/Samples/PixelStreaming/WebServers/SignallingWebServer/...
#ROBOMERGE-AUTHOR: luke.bermingham
#ROBOMERGE-SOURCE: CL 18298347 in //UE5/Release-5.0/... via CL 18298353
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
[CL 18298357 by luke bermingham in ue5-release-engine-test branch]
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971
[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]