pidgin
2.14.13dev
|
Media API. More...
Go to the source code of this file.
Macros | |
#define | PURPLE_TYPE_MEDIA_ELEMENT_TYPE (purple_media_element_type_get_type()) |
#define | PURPLE_TYPE_MEDIA_ELEMENT_INFO (purple_media_element_info_get_type()) |
#define | PURPLE_MEDIA_ELEMENT_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_MEDIA_ELEMENT_INFO, PurpleMediaElementInfo)) |
#define | PURPLE_MEDIA_ELEMENT_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_MEDIA_ELEMENT_INFO, PurpleMediaElementInfo)) |
#define | PURPLE_IS_MEDIA_ELEMENT_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_MEDIA_ELEMENT_INFO)) |
#define | PURPLE_IS_MEDIA_ELEMENT_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_MEDIA_ELEMENT_INFO)) |
#define | PURPLE_MEDIA_ELEMENT_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_MEDIA_ELEMENT_INFO, PurpleMediaElementInfo)) |
Typedefs | |
typedef struct _PurpleMediaElementInfo | PurpleMediaElementInfo |
An opaque structure representing an audio/video source/sink. | |
typedef struct _PurpleMediaElementInfoClass | PurpleMediaElementInfoClass |
typedef GstElement *(* | PurpleMediaElementCreateCallback) (PurpleMedia *media, const gchar *session_id, const gchar *participant) |
Enumerations | |
enum | PurpleMediaElementType { PURPLE_MEDIA_ELEMENT_NONE = 0 , PURPLE_MEDIA_ELEMENT_AUDIO = 1 , PURPLE_MEDIA_ELEMENT_VIDEO = 1 << 1 , PURPLE_MEDIA_ELEMENT_AUDIO_VIDEO , PURPLE_MEDIA_ELEMENT_NO_SRCS = 0 , PURPLE_MEDIA_ELEMENT_ONE_SRC = 1 << 2 , PURPLE_MEDIA_ELEMENT_MULTI_SRC = 1 << 3 , PURPLE_MEDIA_ELEMENT_REQUEST_SRC = 1 << 4 , PURPLE_MEDIA_ELEMENT_NO_SINKS = 0 , PURPLE_MEDIA_ELEMENT_ONE_SINK = 1 << 5 , PURPLE_MEDIA_ELEMENT_MULTI_SINK = 1 << 6 , PURPLE_MEDIA_ELEMENT_REQUEST_SINK = 1 << 7 , PURPLE_MEDIA_ELEMENT_UNIQUE = 1 << 8 , PURPLE_MEDIA_ELEMENT_SRC = 1 << 9 , PURPLE_MEDIA_ELEMENT_SINK = 1 << 10 , PURPLE_MEDIA_ELEMENT_APPLICATION = 1 << 11 } |
Functions | |
GType | purple_media_element_type_get_type (void) |
Gets the element type's GType. More... | |
GType | purple_media_element_info_get_type (void) |
Gets the element info's GType. More... | |
GstElement * | purple_media_get_src (PurpleMedia *media, const gchar *sess_id) |
Gets the source from a session. More... | |
GstElement * | purple_media_get_tee (PurpleMedia *media, const gchar *session_id, const gchar *participant) |
Gets the tee from a given session/stream. More... | |
GstElement * | purple_media_manager_get_pipeline (PurpleMediaManager *manager) |
Gets the pipeline from the media manager. More... | |
GstElement * | purple_media_manager_get_element (PurpleMediaManager *manager, PurpleMediaSessionType type, PurpleMedia *media, const gchar *session_id, const gchar *participant) |
Returns a GStreamer source or sink for audio or video. More... | |
GList * | purple_media_manager_enumerate_elements (PurpleMediaManager *manager, PurpleMediaElementType type) |
purple_media_manager_enumerate_elements: @manager: The media manager to use to obtain the element infos. More... | |
PurpleMediaElementInfo * | purple_media_manager_get_element_info (PurpleMediaManager *manager, const gchar *name) |
gboolean | purple_media_manager_register_element (PurpleMediaManager *manager, PurpleMediaElementInfo *info) |
gboolean | purple_media_manager_unregister_element (PurpleMediaManager *manager, const gchar *name) |
gboolean | purple_media_manager_set_active_element (PurpleMediaManager *manager, PurpleMediaElementInfo *info) |
PurpleMediaElementInfo * | purple_media_manager_get_active_element (PurpleMediaManager *manager, PurpleMediaElementType type) |
void | purple_media_manager_set_video_caps (PurpleMediaManager *manager, GstCaps *caps) |
Reduces media formats supported by the video source to given set. More... | |
GstCaps * | purple_media_manager_get_video_caps (PurpleMediaManager *manager) |
Returns current set of media formats limiting the output from video source. More... | |
gchar * | purple_media_element_info_get_id (PurpleMediaElementInfo *info) |
gchar * | purple_media_element_info_get_name (PurpleMediaElementInfo *info) |
PurpleMediaElementType | purple_media_element_info_get_element_type (PurpleMediaElementInfo *info) |
GstElement * | purple_media_element_info_call_create (PurpleMediaElementInfo *info, PurpleMedia *media, const gchar *session_id, const gchar *participant) |
Media API.
Definition in file media-gst.h.
Definition at line 51 of file media-gst.h.
GType purple_media_element_info_get_type | ( | void | ) |
Gets the element info's GType.
GType purple_media_element_type_get_type | ( | void | ) |
Gets the element type's GType.
GstElement* purple_media_get_src | ( | PurpleMedia * | media, |
const gchar * | sess_id | ||
) |
Gets the source from a session.
media | The media object the session is in. |
sess_id | The session id of the session to get the source from. |
GstElement* purple_media_get_tee | ( | PurpleMedia * | media, |
const gchar * | session_id, | ||
const gchar * | participant | ||
) |
Gets the tee from a given session/stream.
media | The instance to get the tee from. |
session_id | The id of the session to get the tee from. |
participant | Optionally, the participant of the stream to get the tee from. |
GList* purple_media_manager_enumerate_elements | ( | PurpleMediaManager * | manager, |
PurpleMediaElementType | type | ||
) |
purple_media_manager_enumerate_elements: @manager: The media manager to use to obtain the element infos.
@type: The type of element infos to get.
Returns: A #GList of registered PurpleMediaElementInfo instances that match @type.
GstElement* purple_media_manager_get_element | ( | PurpleMediaManager * | manager, |
PurpleMediaSessionType | type, | ||
PurpleMedia * | media, | ||
const gchar * | session_id, | ||
const gchar * | participant | ||
) |
Returns a GStreamer source or sink for audio or video.
manager | The media manager to use to obtain the source/sink. |
type | The type of source/sink to get. |
media | The media call this element is requested for. |
session_id | The id of the session this element is requested for or NULL. |
participant | The remote user this element is requested for or NULL. |
GstElement* purple_media_manager_get_pipeline | ( | PurpleMediaManager * | manager | ) |
Gets the pipeline from the media manager.
manager | The media manager to get the pipeline from. |
GstCaps* purple_media_manager_get_video_caps | ( | PurpleMediaManager * | manager | ) |
Returns current set of media formats limiting the output from video source.
manager | The media manager to get the media formats from. |
GstCaps
limiting the video source's formats.void purple_media_manager_set_video_caps | ( | PurpleMediaManager * | manager, |
GstCaps * | caps | ||
) |
Reduces media formats supported by the video source to given set.
Useful to force negotiation of smaller picture resolution more suitable for use with particular codec and communication protocol without rescaling.
manager | The media manager to set the media formats. |
caps | Set of allowed media formats. |