Janus ICE stream. More...
#include <ice.h>

Data Fields | |
| janus_ice_handle * | handle |
| Janus ICE handle this stream belongs to. | |
| guint | stream_id |
| libnice ICE stream ID | |
| gboolean | cdone |
| Whether this stream is ready to be used. | |
| gint64 | gathered |
| Monotonic time of when gathering has completed. | |
| guint32 | audio_ssrc |
| Audio SSRC of the server for this stream. | |
| guint32 | video_ssrc |
| Video SSRC of the server for this stream. | |
| guint32 | video_ssrc_rtx |
| Video retransmission SSRC of the peer for this stream. | |
| guint32 | audio_ssrc_peer |
| Audio SSRC of the peer for this stream. | |
| guint32 | audio_ssrc_peer_new |
| guint32 | audio_ssrc_peer_orig |
| guint32 | video_ssrc_peer [3] |
| Video SSRC(s) of the peer for this stream (may be simulcasting) | |
| guint32 | video_ssrc_peer_new [3] |
| guint32 | video_ssrc_peer_orig [3] |
| guint32 | video_ssrc_peer_temp |
| guint32 | video_ssrc_peer_rtx [3] |
| Video retransmissions SSRC(s) of the peer for this stream. | |
| guint32 | video_ssrc_peer_rtx_new [3] |
| guint32 | video_ssrc_peer_rtx_orig [3] |
| char * | rid [3] |
| Array of RTP Stream IDs (for simulcasting, if enabled) | |
| gboolean | disabled_rid [3] |
| Which simulcast rids are currently disabled, as per the latest negotiation. | |
| gboolean | rids_hml |
| Whether the order of the rids in the SDP will be h-m-l (TRUE) or l-m-h (FALSE) | |
| gboolean | legacy_rid |
| Whether we should use the legacy simulcast syntax (a=simulcast:recv rid=..) or the proper one (a=simulcast:recv ..) | |
| janus_rtp_switching_context | rtp_ctx [3] |
| RTP switching context(s) in case of renegotiations (audio+video and/or simulcast) | |
| GList * | audio_payload_types |
| List of payload types we can expect for audio. | |
| GList * | video_payload_types |
| List of payload types we can expect for video. | |
| GHashTable * | rtx_payload_types |
| Mapping of rtx payload types to actual media-related packet types. | |
| int | opusred_pt |
| opus/red payload type, if enabled | |
| GHashTable * | clock_rates |
| Mapping of payload types to their clock rates, as advertised in the SDP. | |
| gint | audio_payload_type |
| RTP payload types of this stream. | |
| gint | video_payload_type |
| gint | video_rtx_payload_type |
| char * | audio_codec |
| Codecs used by this stream. | |
| char * | video_codec |
| gboolean(* | video_is_keyframe )(const char *buffer, int len) |
| Pointer to function to check if a packet is a keyframe (depends on negotiated codec) | |
| gboolean | audio_send |
| Media direction. | |
| gboolean | audio_recv |
| gboolean | video_send |
| gboolean | video_recv |
| janus_rtcp_context * | audio_rtcp_ctx |
| RTCP context for the audio stream. | |
| janus_rtcp_context * | video_rtcp_ctx [3] |
| RTCP context(s) for the video stream (may be simulcasting) | |
| uint32_t | remb_bitrate |
| Latest REMB feedback we received. | |
| uint16_t | nack_queue_ms |
| Size of the NACK queue (in ms), dynamically updated per the RTT. | |
| GHashTable * | rtx_nacked [3] |
| Map(s) of the NACKed packets (to track retransmissions and avoid duplicates) | |
| GHashTable * | pending_nacked_cleanup |
| Map of the pending NACKed cleanup callback. | |
| gint64 | audio_first_ntp_ts |
| First received audio NTP timestamp. | |
| guint32 | audio_first_rtp_ts |
| First received audio RTP timestamp. | |
| gint64 | video_first_ntp_ts [3] |
| First received video NTP timestamp (for all simulcast video streams) | |
| guint32 | video_first_rtp_ts [3] |
| First received video NTP RTP timestamp (for all simulcast video streams) | |
| gint64 | audio_last_ntp_ts |
| Last sent audio NTP timestamp. | |
| guint32 | audio_last_rtp_ts |
| Last sent audio RTP timestamp. | |
| gint64 | video_last_ntp_ts |
| Last sent video NTP timestamp. | |
| guint32 | video_last_rtp_ts |
| Last sent video RTP timestamp. | |
| gint | mid_ext_id |
| SDES mid RTP extension ID. | |
| gint | rid_ext_id |
| RTP Stream extension ID, and the related rtx one. | |
| gint | ridrtx_ext_id |
| gint | audiolevel_ext_id |
| Audio levels extension ID. | |
| gint | videoorientation_ext_id |
| Video orientation extension ID. | |
| gint | playoutdelay_ext_id |
| Playout delay extension ID. | |
| gint | dependencydesc_ext_id |
| Dependency descriptor extension ID. | |
| gint | abs_send_time_ext_id |
| Absolute Send Time ext ID. | |
| gboolean | do_transport_wide_cc |
| Whether we do transport wide cc for video. | |
| gint | transport_wide_cc_ext_id |
| Transport wide cc rtp ext ID. | |
| guint16 | transport_wide_cc_out_seq_num |
| Last sent transport wide seq num. | |
| guint32 | transport_wide_cc_last_seq_num |
| Last received transport wide seq num. | |
| guint32 | transport_wide_cc_last_feedback_seq_num |
| Last transport wide seq num sent on feedback. | |
| guint16 | transport_wide_cc_cycles |
| Transport wide cc transport seq num wrap cycles. | |
| guint | transport_wide_cc_feedback_count |
| Transport wide cc rtp ext ID. | |
| GSList * | transport_wide_received_seq_nums |
| GLib list of transport wide cc stats in reverse received order. | |
| janus_dtls_role | dtls_role |
| DTLS role of the server for this stream. | |
| gchar * | remote_hashing |
| Hashing algorithm used by the peer for the DTLS certificate (e.g., "SHA-256") | |
| gchar * | remote_fingerprint |
| Hashed fingerprint of the peer's certificate, as parsed in SDP. | |
| gchar * | ruser |
| The ICE username for this stream. | |
| gchar * | rpass |
| The ICE password for this stream. | |
| GHashTable * | components |
| GLib hash table of components (IDs are the keys) | |
| janus_ice_component * | component |
| ICE component. | |
| gboolean | noerrorlog |
| Helper flag to avoid flooding the console with the same error all over again. | |
| janus_mutex | mutex |
| Mutex to lock/unlock this stream. | |
| volatile gint | destroyed |
| Atomic flag to check if this instance has been destroyed. | |
| janus_refcount | ref |
| Reference counter for this instance. | |
Janus ICE stream.
| gint janus_ice_stream::abs_send_time_ext_id |
Absolute Send Time ext ID.
| char* janus_ice_stream::audio_codec |
Codecs used by this stream.
| gint64 janus_ice_stream::audio_first_ntp_ts |
First received audio NTP timestamp.
| guint32 janus_ice_stream::audio_first_rtp_ts |
First received audio RTP timestamp.
| gint64 janus_ice_stream::audio_last_ntp_ts |
Last sent audio NTP timestamp.
| guint32 janus_ice_stream::audio_last_rtp_ts |
Last sent audio RTP timestamp.
| gint janus_ice_stream::audio_payload_type |
RTP payload types of this stream.
| GList* janus_ice_stream::audio_payload_types |
List of payload types we can expect for audio.
| gboolean janus_ice_stream::audio_recv |
| janus_rtcp_context* janus_ice_stream::audio_rtcp_ctx |
RTCP context for the audio stream.
| gboolean janus_ice_stream::audio_send |
Media direction.
| guint32 janus_ice_stream::audio_ssrc |
Audio SSRC of the server for this stream.
| guint32 janus_ice_stream::audio_ssrc_peer |
Audio SSRC of the peer for this stream.
| guint32 janus_ice_stream::audio_ssrc_peer_new |
| guint32 janus_ice_stream::audio_ssrc_peer_orig |
| gint janus_ice_stream::audiolevel_ext_id |
Audio levels extension ID.
| gboolean janus_ice_stream::cdone |
Whether this stream is ready to be used.
| GHashTable* janus_ice_stream::clock_rates |
Mapping of payload types to their clock rates, as advertised in the SDP.
| janus_ice_component* janus_ice_stream::component |
ICE component.
| GHashTable* janus_ice_stream::components |
GLib hash table of components (IDs are the keys)
| gint janus_ice_stream::dependencydesc_ext_id |
Dependency descriptor extension ID.
| volatile gint janus_ice_stream::destroyed |
Atomic flag to check if this instance has been destroyed.
| gboolean janus_ice_stream::disabled_rid[3] |
Which simulcast rids are currently disabled, as per the latest negotiation.
| gboolean janus_ice_stream::do_transport_wide_cc |
Whether we do transport wide cc for video.
| janus_dtls_role janus_ice_stream::dtls_role |
DTLS role of the server for this stream.
| gint64 janus_ice_stream::gathered |
Monotonic time of when gathering has completed.
| janus_ice_handle* janus_ice_stream::handle |
Janus ICE handle this stream belongs to.
| gboolean janus_ice_stream::legacy_rid |
Whether we should use the legacy simulcast syntax (a=simulcast:recv rid=..) or the proper one (a=simulcast:recv ..)
| gint janus_ice_stream::mid_ext_id |
SDES mid RTP extension ID.
| janus_mutex janus_ice_stream::mutex |
Mutex to lock/unlock this stream.
| uint16_t janus_ice_stream::nack_queue_ms |
Size of the NACK queue (in ms), dynamically updated per the RTT.
| gboolean janus_ice_stream::noerrorlog |
Helper flag to avoid flooding the console with the same error all over again.
| int janus_ice_stream::opusred_pt |
opus/red payload type, if enabled
| GHashTable* janus_ice_stream::pending_nacked_cleanup |
Map of the pending NACKed cleanup callback.
| gint janus_ice_stream::playoutdelay_ext_id |
Playout delay extension ID.
| janus_refcount janus_ice_stream::ref |
Reference counter for this instance.
| uint32_t janus_ice_stream::remb_bitrate |
Latest REMB feedback we received.
| gchar* janus_ice_stream::remote_fingerprint |
Hashed fingerprint of the peer's certificate, as parsed in SDP.
| gchar* janus_ice_stream::remote_hashing |
Hashing algorithm used by the peer for the DTLS certificate (e.g., "SHA-256")
| char* janus_ice_stream::rid[3] |
Array of RTP Stream IDs (for simulcasting, if enabled)
| gint janus_ice_stream::rid_ext_id |
RTP Stream extension ID, and the related rtx one.
| gint janus_ice_stream::ridrtx_ext_id |
| gboolean janus_ice_stream::rids_hml |
Whether the order of the rids in the SDP will be h-m-l (TRUE) or l-m-h (FALSE)
| gchar* janus_ice_stream::rpass |
The ICE password for this stream.
| janus_rtp_switching_context janus_ice_stream::rtp_ctx[3] |
RTP switching context(s) in case of renegotiations (audio+video and/or simulcast)
| GHashTable* janus_ice_stream::rtx_nacked[3] |
Map(s) of the NACKed packets (to track retransmissions and avoid duplicates)
| GHashTable* janus_ice_stream::rtx_payload_types |
Mapping of rtx payload types to actual media-related packet types.
| gchar* janus_ice_stream::ruser |
The ICE username for this stream.
| guint janus_ice_stream::stream_id |
libnice ICE stream ID
| guint16 janus_ice_stream::transport_wide_cc_cycles |
Transport wide cc transport seq num wrap cycles.
| gint janus_ice_stream::transport_wide_cc_ext_id |
Transport wide cc rtp ext ID.
| guint janus_ice_stream::transport_wide_cc_feedback_count |
Transport wide cc rtp ext ID.
| guint32 janus_ice_stream::transport_wide_cc_last_feedback_seq_num |
Last transport wide seq num sent on feedback.
| guint32 janus_ice_stream::transport_wide_cc_last_seq_num |
Last received transport wide seq num.
| guint16 janus_ice_stream::transport_wide_cc_out_seq_num |
Last sent transport wide seq num.
| GSList* janus_ice_stream::transport_wide_received_seq_nums |
GLib list of transport wide cc stats in reverse received order.
| char * janus_ice_stream::video_codec |
| gint64 janus_ice_stream::video_first_ntp_ts[3] |
First received video NTP timestamp (for all simulcast video streams)
| guint32 janus_ice_stream::video_first_rtp_ts[3] |
First received video NTP RTP timestamp (for all simulcast video streams)
| gboolean(* janus_ice_stream::video_is_keyframe) (const char *buffer, int len) |
Pointer to function to check if a packet is a keyframe (depends on negotiated codec)
| gint64 janus_ice_stream::video_last_ntp_ts |
Last sent video NTP timestamp.
| guint32 janus_ice_stream::video_last_rtp_ts |
Last sent video RTP timestamp.
| gint janus_ice_stream::video_payload_type |
| GList* janus_ice_stream::video_payload_types |
List of payload types we can expect for video.
| gboolean janus_ice_stream::video_recv |
| janus_rtcp_context* janus_ice_stream::video_rtcp_ctx[3] |
RTCP context(s) for the video stream (may be simulcasting)
| gint janus_ice_stream::video_rtx_payload_type |
| gboolean janus_ice_stream::video_send |
| guint32 janus_ice_stream::video_ssrc |
Video SSRC of the server for this stream.
| guint32 janus_ice_stream::video_ssrc_peer[3] |
Video SSRC(s) of the peer for this stream (may be simulcasting)
| guint32 janus_ice_stream::video_ssrc_peer_new[3] |
| guint32 janus_ice_stream::video_ssrc_peer_orig[3] |
| guint32 janus_ice_stream::video_ssrc_peer_rtx[3] |
Video retransmissions SSRC(s) of the peer for this stream.
| guint32 janus_ice_stream::video_ssrc_peer_rtx_new[3] |
| guint32 janus_ice_stream::video_ssrc_peer_rtx_orig[3] |
| guint32 janus_ice_stream::video_ssrc_peer_temp |
| guint32 janus_ice_stream::video_ssrc_rtx |
Video retransmission SSRC of the peer for this stream.
| gint janus_ice_stream::videoorientation_ext_id |
Video orientation extension ID.