A single media in a PeerConnection. More...
#include <ice.h>

Data Fields | |
| janus_handle_webrtc * | pc |
| WebRTC PeerConnection this m-line belongs to. More... | |
| janus_media_type | type |
| Type of this medium. More... | |
| int | mindex |
| Index of this medium in the media list. More... | |
| char * | mid |
| Media ID. More... | |
| guint32 | ssrc |
| SSRC of the server for this medium. More... | |
| guint32 | ssrc_rtx |
| Retransmission SSRC of the server for this medium. More... | |
| guint32 | ssrc_peer [3] |
| SSRC(s) of the peer for this medium (may be simulcasting) More... | |
| guint32 | ssrc_peer_new [3] |
| guint32 | ssrc_peer_orig [3] |
| guint32 | ssrc_peer_temp |
| guint32 | ssrc_peer_rtx [3] |
| Retransmissions SSRC(s) of the peer for this medium (may be simulcasting) More... | |
| guint32 | ssrc_peer_rtx_new [3] |
| guint32 | ssrc_peer_rtx_orig [3] |
| char * | rid [3] |
| Array of RTP Stream IDs (for Firefox simulcasting, if enabled) More... | |
| gboolean | legacy_rid |
| Whether we should use the legacy simulcast syntax (a=simulcast:recv rid=..) or the proper one (a=simulcast:recv ..) More... | |
| janus_rtp_switching_context | rtp_ctx [3] |
| RTP switching context(s) in case of renegotiations (audio+video and/or simulcast) More... | |
| GList * | payload_types |
| List of payload types we can expect. More... | |
| GHashTable * | rtx_payload_types |
| Mapping of rtx payload types to actual media-related packet types. More... | |
| gint | payload_type |
| RTP payload types for this medium. More... | |
| gint | rtx_payload_type |
| char * | codec |
| Codec used in this medium. More... | |
| gboolean(* | video_is_keyframe )(const char *buffer, int len) |
| Pointer to function to check if a packet is a keyframe (depends on negotiated codec; video only) More... | |
| gboolean | send |
| Media direction. More... | |
| gboolean | recv |
| janus_rtcp_context * | rtcp_ctx [3] |
| RTCP context(s) for the medium (may be simulcasting) More... | |
| GHashTable * | rtx_nacked [3] |
| Map(s) of the NACKed packets (to track retransmissions and avoid duplicates) More... | |
| gint64 | first_ntp_ts [3] |
| First received NTP timestamp. More... | |
| guint32 | first_rtp_ts [3] |
| First received RTP timestamp. More... | |
| guint32 | last_ts |
| Last sent RTP timestamp. More... | |
| gboolean | do_nacks |
| Whether we should do NACKs (in or out) for this medium. More... | |
| GQueue * | retransmit_buffer |
| List of previously sent janus_rtp_packet RTP packets, in case we receive NACKs. More... | |
| GHashTable * | retransmit_seqs |
| HashTable of retransmittable sequence numbers, in case we receive NACKs. More... | |
| guint16 | rtx_seq_number |
| Current sequence number for the RFC4588 rtx SSRC session. More... | |
| gint64 | retransmit_log_ts |
| Last time a log message about sending retransmits was printed. More... | |
| guint | retransmit_recent_cnt |
| Number of retransmitted packets since last log message. More... | |
| gint64 | nack_sent_log_ts |
| Last time a log message about sending NACKs was printed. More... | |
| guint | nack_sent_recent_cnt |
| Number of NACKs sent since last log message. More... | |
| janus_seq_info * | last_seqs [3] |
| List of recently received sequence numbers (as a support to NACK generation, for each simulcast SSRC if needed) More... | |
| janus_media_stats | in_stats |
| Stats for incoming data. More... | |
| janus_media_stats | out_stats |
| Stats for outgoing data. More... | |
| gboolean | noerrorlog |
| Helper flag to avoid flooding the console with the same error all over again. More... | |
| janus_mutex | mutex |
| Mutex to lock/unlock this medium. More... | |
| volatile gint | destroyed |
| Atomic flag to check if this instance has been destroyed. More... | |
| janus_refcount | ref |
| Reference counter for this instance. More... | |
A single media in a PeerConnection.
| char* janus_handle_webrtc_medium::codec |
Codec used in this medium.
| volatile gint janus_handle_webrtc_medium::destroyed |
Atomic flag to check if this instance has been destroyed.
| gboolean janus_handle_webrtc_medium::do_nacks |
Whether we should do NACKs (in or out) for this medium.
| gint64 janus_handle_webrtc_medium::first_ntp_ts[3] |
First received NTP timestamp.
| guint32 janus_handle_webrtc_medium::first_rtp_ts[3] |
First received RTP timestamp.
| janus_media_stats janus_handle_webrtc_medium::in_stats |
Stats for incoming data.
| janus_seq_info* janus_handle_webrtc_medium::last_seqs[3] |
List of recently received sequence numbers (as a support to NACK generation, for each simulcast SSRC if needed)
| guint32 janus_handle_webrtc_medium::last_ts |
Last sent RTP timestamp.
| gboolean janus_handle_webrtc_medium::legacy_rid |
Whether we should use the legacy simulcast syntax (a=simulcast:recv rid=..) or the proper one (a=simulcast:recv ..)
| char* janus_handle_webrtc_medium::mid |
Media ID.
| int janus_handle_webrtc_medium::mindex |
Index of this medium in the media list.
| janus_mutex janus_handle_webrtc_medium::mutex |
Mutex to lock/unlock this medium.
| gint64 janus_handle_webrtc_medium::nack_sent_log_ts |
Last time a log message about sending NACKs was printed.
| guint janus_handle_webrtc_medium::nack_sent_recent_cnt |
Number of NACKs sent since last log message.
| gboolean janus_handle_webrtc_medium::noerrorlog |
Helper flag to avoid flooding the console with the same error all over again.
| janus_media_stats janus_handle_webrtc_medium::out_stats |
Stats for outgoing data.
| gint janus_handle_webrtc_medium::payload_type |
RTP payload types for this medium.
| GList* janus_handle_webrtc_medium::payload_types |
List of payload types we can expect.
| janus_handle_webrtc* janus_handle_webrtc_medium::pc |
WebRTC PeerConnection this m-line belongs to.
| gboolean janus_handle_webrtc_medium::recv |
| janus_refcount janus_handle_webrtc_medium::ref |
Reference counter for this instance.
| GQueue* janus_handle_webrtc_medium::retransmit_buffer |
List of previously sent janus_rtp_packet RTP packets, in case we receive NACKs.
| gint64 janus_handle_webrtc_medium::retransmit_log_ts |
Last time a log message about sending retransmits was printed.
| guint janus_handle_webrtc_medium::retransmit_recent_cnt |
Number of retransmitted packets since last log message.
| GHashTable* janus_handle_webrtc_medium::retransmit_seqs |
HashTable of retransmittable sequence numbers, in case we receive NACKs.
| char* janus_handle_webrtc_medium::rid[3] |
Array of RTP Stream IDs (for Firefox simulcasting, if enabled)
| janus_rtcp_context* janus_handle_webrtc_medium::rtcp_ctx[3] |
RTCP context(s) for the medium (may be simulcasting)
| janus_rtp_switching_context janus_handle_webrtc_medium::rtp_ctx[3] |
RTP switching context(s) in case of renegotiations (audio+video and/or simulcast)
| GHashTable* janus_handle_webrtc_medium::rtx_nacked[3] |
Map(s) of the NACKed packets (to track retransmissions and avoid duplicates)
| gint janus_handle_webrtc_medium::rtx_payload_type |
| GHashTable* janus_handle_webrtc_medium::rtx_payload_types |
Mapping of rtx payload types to actual media-related packet types.
| guint16 janus_handle_webrtc_medium::rtx_seq_number |
Current sequence number for the RFC4588 rtx SSRC session.
| gboolean janus_handle_webrtc_medium::send |
Media direction.
| guint32 janus_handle_webrtc_medium::ssrc |
SSRC of the server for this medium.
| guint32 janus_handle_webrtc_medium::ssrc_peer[3] |
SSRC(s) of the peer for this medium (may be simulcasting)
| guint32 janus_handle_webrtc_medium::ssrc_peer_new[3] |
| guint32 janus_handle_webrtc_medium::ssrc_peer_orig[3] |
| guint32 janus_handle_webrtc_medium::ssrc_peer_rtx[3] |
Retransmissions SSRC(s) of the peer for this medium (may be simulcasting)
| guint32 janus_handle_webrtc_medium::ssrc_peer_rtx_new[3] |
| guint32 janus_handle_webrtc_medium::ssrc_peer_rtx_orig[3] |
| guint32 janus_handle_webrtc_medium::ssrc_peer_temp |
| guint32 janus_handle_webrtc_medium::ssrc_rtx |
Retransmission SSRC of the server for this medium.
| janus_media_type janus_handle_webrtc_medium::type |
Type of this medium.
| gboolean(* janus_handle_webrtc_medium::video_is_keyframe)(const char *buffer, int len) |
Pointer to function to check if a packet is a keyframe (depends on negotiated codec; video only)