Struct WebRTCStreamer::Impl#

Nested Relationships#

This struct is a nested type of Class WebRTCStreamer.

Struct Documentation#

struct Impl

Public Functions

inline ~Impl()
inline void cleanup()
inline void set_state(StreamState new_state)
inline void report_error(WebRTCError error, const std::string &message = "")
inline auto build_source_element() const -> std::string
inline auto build_pipeline_description() -> std::string

Public Members

StreamConfig config
GstElement *pipeline = {nullptr}
GstElement *webrtcsink = {nullptr}
GMainLoop *main_loop = {nullptr}
std::thread main_loop_thread
std::atomic<StreamState> state = {StreamState::Idle}
StateCallback state_callback
ErrorCallback error_callback
std::string producer_id
std::mutex callback_mutex

Public Static Functions

static inline auto on_bus_error(GstBus*, GstMessage *msg, gpointer user_data) -> gboolean
static inline auto on_bus_state_changed(GstBus*, GstMessage *msg, gpointer user_data) -> gboolean
static inline auto on_bus_eos(GstBus*, GstMessage*, gpointer user_data) -> gboolean
static inline auto on_bus_element(GstBus*, GstMessage *msg, gpointer user_data) -> gboolean