mediasoup

/ home / Documentation / v3 / libmediasoupclient / Design

libmediasoupclient v3 Design

libmediasoupclient is a C++ library based on libwebrtc for building mediasoup based C++ client side applications.

Features

libwebrtc API

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.

Multi Threading

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: