Interface
PurpleMediaBackend
Description [src]
interface Purple.MediaBackend : GObject.Object
A placeholder to represent any media backend.
Prerequisite
In order to implement MediaBackend, your type must inherit from
GObject
.
Instance methods
purple_media_backend_add_remote_candidates
Add remote candidates to a stream.
purple_media_backend_add_stream
Creates and adds a stream to the media backend.
purple_media_backend_codecs_ready
Get whether or not a session’s codecs are ready.
purple_media_backend_get_available_params
Gets the list of optional parameters supported by the media backend. The list should NOT be freed.
purple_media_backend_get_codecs
Gets the codec intersection list for a session.
purple_media_backend_get_local_candidates
Gets the list of local candidates for a stream.
purple_media_backend_set_decryption_parameters
Sets the decryption parameters for a session participant’s media.
purple_media_backend_set_encryption_parameters
Sets the encryption parameters of our media in the session.
purple_media_backend_set_params
Sets various optional parameters of the media backend.
purple_media_backend_set_remote_codecs
Sets the remote codecs on a stream.
purple_media_backend_set_require_encryption
Sets whether a session participant’s media requires encryption.
purple_media_backend_set_send_codec
Sets which codec format to send media content in for a session.
purple_media_backend_set_send_rtcp_mux
Controls whether or not the RTCP should be muxed with the RTP.
Available since: 2.11.0
Properties
Purple.MediaBackend:conference-type
Purple.MediaBackend:media
Signals
Purple.MediaBackend::active-candidate-pair
Purple.MediaBackend::candidates-prepared
Purple.MediaBackend::codecs-changed
Purple.MediaBackend::error
Purple.MediaBackend::new-candidate
Interface structure
struct PurpleMediaBackendInterface {
gboolean (* add_stream) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* who,
PurpleMediaSessionType type,
gboolean initiator,
const gchar* transmitter,
GHashTable* params
);
void (* add_remote_candidates) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant,
GList* remote_candidates
);
gboolean (* codecs_ready) (
PurpleMediaBackend* self,
const gchar* sess_id
);
GList* (* get_codecs) (
PurpleMediaBackend* self,
const gchar* sess_id
);
GList* (* get_local_candidates) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant
);
gboolean (* set_remote_codecs) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant,
GList* codecs
);
gboolean (* set_send_codec) (
PurpleMediaBackend* self,
const gchar* sess_id,
PurpleMediaCodec* codec
);
gboolean (* set_encryption_parameters) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* cipher,
const gchar* auth,
const gchar* key,
gsize key_len
);
gboolean (* set_decryption_parameters) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant,
const gchar* cipher,
const gchar* auth,
const gchar* key,
gsize key_len
);
gboolean (* set_require_encryption) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant,
gboolean require_encryption
);
void (* set_params) (
PurpleMediaBackend* self,
GHashTable* params
);
const gchar** (* get_available_params) (
void
);
gboolean (* send_dtmf) (
PurpleMediaBackend* self,
const gchar* sess_id,
gchar dtmf,
guint8 volume,
guint16 duration
);
gboolean (* set_send_rtcp_mux) (
PurpleMediaBackend* self,
const gchar* sess_id,
const gchar* participant,
gboolean send_rtcp_mux
);
}
Interface members
add_stream |
|
No description available. | |
add_remote_candidates |
|
No description available. | |
codecs_ready |
|
No description available. | |
get_codecs |
|
No description available. | |
get_local_candidates |
|
No description available. | |
set_remote_codecs |
|
No description available. | |
set_send_codec |
|
No description available. | |
set_encryption_parameters |
|
No description available. | |
set_decryption_parameters |
|
No description available. | |
set_require_encryption |
|
No description available. | |
set_params |
|
No description available. | |
get_available_params |
|
No description available. | |
send_dtmf |
|
No description available. | |
set_send_rtcp_mux |
|
No description available. |
Virtual methods
Purple.MediaBackend.add_remote_candidates
Add remote candidates to a stream.
Purple.MediaBackend.add_stream
Creates and adds a stream to the media backend.
Purple.MediaBackend.codecs_ready
Get whether or not a session’s codecs are ready.
Purple.MediaBackend.get_codecs
Gets the codec intersection list for a session.
Purple.MediaBackend.get_local_candidates
Gets the list of local candidates for a stream.
Purple.MediaBackend.send_dtmf
Purple.MediaBackend.set_decryption_parameters
Sets the decryption parameters for a session participant’s media.
Purple.MediaBackend.set_encryption_parameters
Sets the encryption parameters of our media in the session.
Purple.MediaBackend.set_params
Sets various optional parameters of the media backend.
Purple.MediaBackend.set_remote_codecs
Sets the remote codecs on a stream.
Purple.MediaBackend.set_require_encryption
Sets whether a session participant’s media requires encryption.
Purple.MediaBackend.set_send_codec
Sets which codec format to send media content in for a session.
Purple.MediaBackend.set_send_rtcp_mux
Controls whether or not the RTCP should be muxed with the RTP.