Hey,
So I managed to make it work reliably using the following library : GitHub - paullouisageneau/libdatachannel: C/C++ WebRTC network library featuring Data Channels, Media Transport, and WebSockets
I got inspired by these examples : libdatachannel/examples/media-sender at master · paullouisageneau/libdatachannel · GitHub
libdatachannel/examples/media-sfu at master · paullouisageneau/libdatachannel · GitHub
I re used these pieces of code, that receives a RTP stream and sends it via webrtc to a browser. I transformed it, using appsink (appsink), to directly receive RTP buffers in memory, then transferring them to libdatachannel and then to a web browser.
To automate the SDP offers/exchanges with another source, I tweaked the following signaling server :
I adapt it with custom signaling messages, that would trigger the SDP/ICE exchange based on ws signals.