void *user_data;
} webrtc_callbacks_s;
-typedef struct _webrtc_tbm_bo_s {
- bool used;
- void *bo;
-} webrtc_tbm_bo_s;
-
typedef struct _webrtc_tbm_s {
tbm_bufmgr bufmgr;
GStrv excluded_elements;
} element_info_s;
-typedef struct {
- const char *str;
- GstWebRTCRTPTransceiverDirection gst;
-} direction_info_s;
-
typedef struct {
webrtc_transceiver_codec_e codec;
const char *gst_media_type;
int clock_rate;
} rtp_payload_info_s;
-typedef struct _webrtc_signal_s {
- GObject *obj;
- gulong signal_id;
-} webrtc_signal_s;
-
typedef struct _webrtc_websocket_s {
GMutex mutex;
struct lws_context *context;
} webrtc_websocket_s;
-typedef struct _webrtc_client_slot_s {
- struct lws *wsi;
- int id;
- struct lws *peer_wsi;
- int peer_id;
-} webrtc_client_slot_s;
-
-typedef struct _webrtc_signaling_server_s {
- GMutex mutex;
- webrtc_websocket_s *ws;
- GThread *thread;
- bool exit_thread;
-
- GHashTable *clients;
-} webrtc_signaling_server_s;
-
-typedef struct webrtc_signaling_client_s {
- SoupSession *session;
- SoupWebsocketConnection *ws_conn;
- int id;
-
- webrtc_callbacks_s message_cb;
-} webrtc_signaling_client_s;
-
/* ini */
void _load_ini(webrtc_s *webrtc);
void _unload_ini(webrtc_s *webrtc);
bool _add_elements_to_bin(GstBin *bin, GList *element_list);
bool _link_elements(GList *element_list);
bool _remove_elements_from_bin(GstBin *bin, GList *element_list);
-
-void _update_transceivers_fec(webrtc_s *webrtc, bool is_offer);
int _apply_stream_info(GstElement *element, const char *stream_type, int stream_index, int aec_ref_device_id);
int _webrtcbin_create_session_description(webrtc_s *webrtc, bool is_offer, char **desc);
[GST_WEBRTC_BUNDLE_POLICY_MAX_BUNDLE] = { "MAX-BUNDLE", WEBRTC_BUNDLE_POLICY_MAX_BUNDLE },
};
+typedef struct _webrtc_signal_s {
+ GObject *obj;
+ gulong signal_id;
+} webrtc_signal_s;
+
//LCOV_EXCL_START
static const char *__get_error_string(webrtc_error_e error)
{
return TRUE;
}
//LCOV_EXCL_STOP
-
typedef struct _idle_userdata {
webrtc_s *webrtc;
idle_cb_type_e type;
#include "webrtc_private.h"
#include "webrtc_internal.h"
+typedef struct _webrtc_signaling_client_s {
+ SoupSession *session;
+ SoupWebsocketConnection *ws_conn;
+ int id;
+ webrtc_callbacks_s message_cb;
+} webrtc_signaling_client_s;
+
//LCOV_EXCL_START
static int __parse_message(gchar *message, webrtc_signaling_message_type_e *type, gchar **content)
{
VALUE_TYPE_STRING
} value_type_e;
+typedef struct _webrtc_client_slot_s {
+ struct lws *wsi;
+ int id;
+ struct lws *peer_wsi;
+ int peer_id;
+} webrtc_client_slot_s;
+
+typedef struct _webrtc_signaling_server_s {
+ GMutex mutex;
+ webrtc_websocket_s *ws;
+ GThread *thread;
+ bool exit_thread;
+
+ GHashTable *clients;
+} webrtc_signaling_server_s;
+
static void __send_message(struct lws *wsi, const char *message)
{
guchar *buffer;
#include "webrtc_private.h"
+typedef struct {
+ const char *str;
+ GstWebRTCRTPTransceiverDirection gst;
+} direction_info_s;
+
static direction_info_s __direction_info[] = {
[WEBRTC_TRANSCEIVER_DIRECTION_SENDONLY] = { "SENDONLY", GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDONLY },
[WEBRTC_TRANSCEIVER_DIRECTION_RECVONLY] = { "RECVONLY", GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY },