Skip to content

Conversation

lminiero
Copy link
Member

@lminiero lminiero commented Sep 8, 2025

This PR implements the restored support for server-sent offers, as described in v03 of the WHEP draft. Specifically, depending on the Janus plugin acting as a backend for a specific WHEP endpoint, it replies either with an SDP answer via a 201 right away (as before) or, if the Janus plugin is known not to support it, it replies with its own offer via a 406 instead.

In order to test this more effectively, this PR is built on top of #8, so that this dynamic behaviour can be seen in action: attempting to establish a session with a Janus 0.x instance, or with the VideoRoom/Record&Play plugins in Janus 1.x, will enable the fallback to server-sent offers. Connecting to a Streaming plugin mountpoint on Janus 1.x will always use client-sent offers instead, since that plugin was modified to have support for that.

There are still a couple of ambiguities in the spec (e.g., in terms of how to reply under specific circumstances), but those can be discussed as part of the standardization process.

In order to test this, I modified both my WHEP players, that is:

  • the basic web-based WHEP player embedded in the examples of this repo, and
  • the GStreamer based WHEP player (for which you'll need to use this branch).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant