Skip to content

Conversation

lukehb
Copy link
Contributor

@lukehb lukehb commented Oct 2, 2025

Relevant components:

  • Frontend library

Problem statement:

As a result of #694 sometimes Firefox was unable to connect. It would error with uncaught (in promise) DOMException: Cannot set ICE candidate for level=<Nothing> mid=: No such transceiver.

Solution

This PR patches the previous fix by hard coding the sdpMLineIndex to 0 which resolves the issue on Firefox and maintains working connectivity on the other browsers. This change means we assume:

  1. Bundle is being used for WebRTC media
  2. The master media line of the bundle is in index 0.

Both of these assumptions hold for all versions of Pixel Streaming 1 and 2 to date.

Documentation

N/A - This is very implementation specific, but this PR should serve as a good record.

Test Plan and Compatibility

Tested:

Chrome + AWS
Chrome + TailScale
Firefox + AWS
FireFox + TailScale
Safari + AWS
Safari + TailScale

All these combinations were able to stream correctly.

@lukehb lukehb added auto-backport Used to specify we want a PR to auto backport to a branch, must be paired with auto-backport-to-UEX. auto-backport-to-UE5.6 auto-backport-to-UE5.7 labels Oct 2, 2025
@changeset-bot
Copy link

changeset-bot bot commented Oct 2, 2025

🦋 Changeset detected

Latest commit: 39d76ab

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@epicgames-ps/lib-pixelstreamingfrontend-ue5.7 Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@lukehb lukehb merged commit 7790838 into master Oct 2, 2025
11 checks passed
github-actions bot pushed a commit that referenced this pull request Oct 2, 2025
github-actions bot pushed a commit that referenced this pull request Oct 2, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Oct 2, 2025

💚 All backports created successfully

Status Branch Result
UE5.6
UE5.7

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation and see the Github Action logs for details

lukehb added a commit that referenced this pull request Oct 2, 2025
…ripped. (#709) (#711)

(cherry picked from commit 7790838)

Co-authored-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
@lukehb lukehb deleted the ff-sdpmline branch October 2, 2025 03:22
@lukehb
Copy link
Contributor Author

lukehb commented Oct 2, 2025

If this turns out to be an issue because bundle master is no longer 0 we can get bundle master using something like:

const bundleMasterMid = sdp.match(/^a=group:BUNDLE (.*)$/m)[1].split(" ")[0];

Then we can just always add a candidate with that mid, the immediately after, add another candidate with whatever the real mid was. It is a little wasteful in terms of adding known failing ice candidates, but it should fix the issue.

lukehb added a commit that referenced this pull request Oct 2, 2025
…d are stripped. (#709) (#710)

* Fix: Firefox connectivity issues when sdpMLineIndex and sdpMid are stripped. (#709)

(cherry picked from commit 7790838)

* Patch bump lib-pixelstreamingfrontend-ue5.6 version

Assume sdpMLineIndex is always 0 for bundle master media line to restore connectivity with Firefox after changes in PR#694.

---------

Co-authored-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
lukehb added a commit that referenced this pull request Oct 13, 2025
* Fix: Firefox connectivity issues when sdpMLineIndex and sdpMid are stripped. (#709) (#711)

(cherry picked from commit 7790838)

Co-authored-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>

* Updated NPM changelogs (#712)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update signalling library readme, patch bump

* Update readme for ui library, bump patch version

* Update frontend docs, patch bump

* Update common readme, patch bump

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
lukehb added a commit that referenced this pull request Oct 23, 2025
* Bump markdown link checker version for security patch

#691

* Update link checker to permit 429 code from Github as valid

* Update user-agent in link checker action to try prevent 403 forbidden on some sites

* Update link checker to accept HTTP status 403 (forbidden)

* Remove broken link about eslint

* Modify README for mediasoup-sdp-bridge to remove broken link

Updated README to reflect fork status and removed badges.

* Update workflow triggers for markdown files in push and PR

* Fix: Firefox connectivity issues when sdpMLineIndex and sdpMid are stripped. (#709)

* Bring 5.7 changes to master branch (docs + sdpMid fix) (#716)

* Fix: Firefox connectivity issues when sdpMLineIndex and sdpMid are stripped. (#709) (#711)

(cherry picked from commit 7790838)

Co-authored-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>

* Updated NPM changelogs (#712)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update signalling library readme, patch bump

* Update readme for ui library, bump patch version

* Update frontend docs, patch bump

* Update common readme, patch bump

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update copyright notice

* Update copyright notice in CONTRIBUTING.md

* Update copyright notice

* Update copyright in frontend/readme.md

* Delete .changeset/light-games-wonder.md

---------

Co-authored-by: mcottontensor <80377552+mcottontensor@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-backport Used to specify we want a PR to auto backport to a branch, must be paired with auto-backport-to-UEX. auto-backport-to-UE5.6 auto-backport-to-UE5.7

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant