libmediasoupclient is a C++ library based on libwebrtc for building mediasoup based C++ client side applications.
The application is responsible of using the API exposed by libwebrtc to create instances of webrtc::MediaStreamTrackInterface
(audio and video tracks) and use them to feed the API methods of libmediasoupclient.
This is: libmediasoupclient does not expose any “track factory” API. The application must use libwebrtc for that.
libmediasoup client does not implement multi-threading. All API methods marked as @async
block the current thread until the underlaying operation is terminated. Such underlaying operation can be an operation executed by the libwebrtc stack or an operation executed by the user.
Examples:
RTCPeerConnection
instance and blocks the thread until done.std::future
and waits for the application to fulfil it (once it communicates to the server).