Webrtcbin - Pre-offer SDP exchange before pipeline setup possible?

I’ve an application utilising webrtcbin and my intent is to send an SDP before getting the pipeline linked and playing in order to pre-advertise different encodings of the stream and then link the correct pipeline once I get my answer.

I’ve been able to send offers and get answers from the client using both libgstsdp to manually generate and adding the transceivers to webrtcbin then using create-offer but when trying to set-remote-offer I’m getting failures as the transceivers haven’t got a transport stream set up even if I wait until the pipeline has linked and there is data flowing.

When I have a pipeline linked and running then rely on the on-negotiation-needed signal to trigger the create-offer, as in the sendrecv example, everything works ok and we have everything set up.

So can I do this SDP exchange and then hold the answer until after building a running pipeline? If so how can I update the transceivers I used to build the SDP so that they get a transport stream, or should this happen on negotiation/flow?
Do I need to reissue SDP once I have ssrc available?
I can’t seem to find any examples of this so any guidance would be greatly appreciated.

It sounds like what you are doing should work just fine. Setting a remote offer with preconfigured transceivers should work fine. Please open an issue upstream with a test case.

Thanks for the sanity check. I just wanted to confirm the approach was feasible. I’ll double‑check my logic and timing, and if it’s still failing I’ll put together a minimal test with generic code.

Hi there, I’m trying to do something similar to receive video on a Quest3 (Android), and wanted to know if you had any luck.