Janus VideoRoom plugin. More...
#include "plugin.h"#include <jansson.h>#include <netdb.h>#include "../debug.h"#include "../apierror.h"#include "../config.h"#include "../mutex.h"#include "../rtp.h"#include "../rtpsrtp.h"#include "../rtcp.h"#include "../record.h"#include "../sdp-utils.h"#include "../utils.h"#include "../ip-utils.h"#include <sys/types.h>#include <sys/socket.h>
Data Structures | |
| struct | janus_videoroom_message | 
| struct | janus_videoroom | 
| struct | janus_videoroom_session | 
| struct | janus_videoroom_rtp_forwarder | 
| struct | janus_videoroom_srtp_context | 
| struct | janus_videoroom_rtcp_receiver | 
| struct | janus_videoroom_publisher | 
| struct | janus_videoroom_subscriber | 
| struct | janus_videoroom_rtp_relay_packet | 
Typedefs | |
| typedef enum janus_videoroom_p_type | janus_videoroom_p_type | 
| typedef struct janus_videoroom_message | janus_videoroom_message | 
| typedef struct janus_videoroom | janus_videoroom | 
| typedef struct janus_videoroom_session | janus_videoroom_session | 
| typedef struct janus_videoroom_srtp_context | janus_videoroom_srtp_context | 
| typedef struct janus_videoroom_rtp_forwarder | janus_videoroom_rtp_forwarder | 
| typedef struct janus_videoroom_rtcp_receiver | janus_videoroom_rtcp_receiver | 
| typedef struct janus_videoroom_publisher | janus_videoroom_publisher | 
| typedef struct janus_videoroom_subscriber | janus_videoroom_subscriber | 
| typedef struct janus_videoroom_rtp_relay_packet | janus_videoroom_rtp_relay_packet | 
Enumerations | |
| enum | janus_videoroom_p_type { janus_videoroom_p_type_none = 0, janus_videoroom_p_type_subscriber, janus_videoroom_p_type_publisher } | 
Janus VideoRoom plugin.
Check the VideoRoom plugin documentation for more details.
| #define JANUS_VIDEOROOM_AUTHOR "Meetecho s.r.l." | 
| #define JANUS_VIDEOROOM_DESCRIPTION "This is a plugin implementing a videoconferencing SFU (Selective Forwarding Unit) for Janus, that is an audio/video router." | 
| #define JANUS_VIDEOROOM_ERROR_ALREADY_JOINED 425 | 
| #define JANUS_VIDEOROOM_ERROR_ALREADY_PUBLISHED 434 | 
| #define JANUS_VIDEOROOM_ERROR_ID_EXISTS 436 | 
| #define JANUS_VIDEOROOM_ERROR_INVALID_ELEMENT 430 | 
| #define JANUS_VIDEOROOM_ERROR_INVALID_JSON 422 | 
| #define JANUS_VIDEOROOM_ERROR_INVALID_REQUEST 423 | 
| #define JANUS_VIDEOROOM_ERROR_INVALID_SDP 437 | 
| #define JANUS_VIDEOROOM_ERROR_INVALID_SDP_TYPE 431 | 
| #define JANUS_VIDEOROOM_ERROR_JOIN_FIRST 424 | 
| #define JANUS_VIDEOROOM_ERROR_MISSING_ELEMENT 429 | 
| #define JANUS_VIDEOROOM_ERROR_NO_MESSAGE 421 | 
| #define JANUS_VIDEOROOM_ERROR_NO_SUCH_FEED 428 | 
| #define JANUS_VIDEOROOM_ERROR_NO_SUCH_ROOM 426 | 
| #define JANUS_VIDEOROOM_ERROR_NOT_PUBLISHED 435 | 
| #define JANUS_VIDEOROOM_ERROR_PUBLISHERS_FULL 432 | 
| #define JANUS_VIDEOROOM_ERROR_ROOM_EXISTS 427 | 
| #define JANUS_VIDEOROOM_ERROR_UNAUTHORIZED 433 | 
| #define JANUS_VIDEOROOM_ERROR_UNKNOWN_ERROR 499 | 
| #define JANUS_VIDEOROOM_NAME "JANUS VideoRoom plugin" | 
| #define JANUS_VIDEOROOM_PACKAGE "janus.plugin.videoroom" | 
| #define JANUS_VIDEOROOM_VERSION 9 | 
| #define JANUS_VIDEOROOM_VERSION_STRING "0.0.9" | 
| typedef struct janus_videoroom janus_videoroom | 
| typedef struct janus_videoroom_message janus_videoroom_message | 
| typedef enum janus_videoroom_p_type janus_videoroom_p_type | 
| typedef struct janus_videoroom_publisher janus_videoroom_publisher | 
| typedef struct janus_videoroom_rtcp_receiver janus_videoroom_rtcp_receiver | 
| typedef struct janus_videoroom_rtp_forwarder janus_videoroom_rtp_forwarder | 
| typedef struct janus_videoroom_rtp_relay_packet janus_videoroom_rtp_relay_packet | 
| typedef struct janus_videoroom_session janus_videoroom_session | 
| typedef struct janus_videoroom_srtp_context janus_videoroom_srtp_context | 
| typedef struct janus_videoroom_subscriber janus_videoroom_subscriber | 
| janus_plugin* create | ( | void | ) | 
| void janus_videoroom_create_session | ( | janus_plugin_session * | handle, | 
| int * | error | ||
| ) | 
| void janus_videoroom_data_ready | ( | janus_plugin_session * | handle | ) | 
| void janus_videoroom_destroy | ( | void | ) | 
| void janus_videoroom_destroy_session | ( | janus_plugin_session * | handle, | 
| int * | error | ||
| ) | 
| int janus_videoroom_get_api_compatibility | ( | void | ) | 
| const char * janus_videoroom_get_author | ( | void | ) | 
| const char * janus_videoroom_get_description | ( | void | ) | 
| const char * janus_videoroom_get_name | ( | void | ) | 
| const char * janus_videoroom_get_package | ( | void | ) | 
| int janus_videoroom_get_version | ( | void | ) | 
| const char * janus_videoroom_get_version_string | ( | void | ) | 
| struct janus_plugin_result * janus_videoroom_handle_message | ( | janus_plugin_session * | handle, | 
| char * | transaction, | ||
| json_t * | message, | ||
| json_t * | jsep | ||
| ) | 
| void janus_videoroom_hangup_media | ( | janus_plugin_session * | handle | ) | 
| void janus_videoroom_incoming_data | ( | janus_plugin_session * | handle, | 
| janus_plugin_data * | packet | ||
| ) | 
| void janus_videoroom_incoming_rtcp | ( | janus_plugin_session * | handle, | 
| janus_plugin_rtcp * | packet | ||
| ) | 
| void janus_videoroom_incoming_rtp | ( | janus_plugin_session * | handle, | 
| janus_plugin_rtp * | packet | ||
| ) | 
| int janus_videoroom_init | ( | janus_callbacks * | callback, | 
| const char * | config_path | ||
| ) | 
| json_t * janus_videoroom_query_session | ( | janus_plugin_session * | handle | ) | 
| void janus_videoroom_setup_media | ( | janus_plugin_session * | handle | ) | 
| void janus_videoroom_slow_link | ( | janus_plugin_session * | handle, | 
| int | uplink, | ||
| int | video | ||
| ) |