Mercurial > pidgin
diff libpurple/mediamanager.h @ 26349:1ae3af12095a
Move GStreamer related media functions into its own header.
author | Mike Ruprecht <maiku@soc.pidgin.im> |
---|---|
date | Mon, 23 Mar 2009 02:59:18 +0000 |
parents | 75a02ffb0139 |
children | 064657db29c4 |
line wrap: on
line diff
--- a/libpurple/mediamanager.h Mon Mar 23 01:43:25 2009 +0000 +++ b/libpurple/mediamanager.h Mon Mar 23 02:59:18 2009 +0000 @@ -50,8 +50,6 @@ typedef struct _PurpleMediaManagerClass PurpleMediaManagerClass; /** @copydoc _PurpleMediaManagerPrivate */ typedef struct _PurpleMediaManagerPrivate PurpleMediaManagerPrivate; -/** @copydoc _PurpleMediaElementInfo */ -typedef struct _PurpleMediaElementInfo PurpleMediaElementInfo; /** The media manager class. */ struct _PurpleMediaManagerClass @@ -66,37 +64,6 @@ PurpleMediaManagerPrivate *priv; /**< Private data for the manager. */ }; -typedef enum { - PURPLE_MEDIA_ELEMENT_AUDIO = 1, /** supports audio */ - PURPLE_MEDIA_ELEMENT_VIDEO = 1 << 1, /** supports video */ - PURPLE_MEDIA_ELEMENT_AUDIO_VIDEO = PURPLE_MEDIA_ELEMENT_AUDIO - | PURPLE_MEDIA_ELEMENT_VIDEO, /** supports audio and video */ - - PURPLE_MEDIA_ELEMENT_NO_SRCS = 0, /** has no src pads */ - PURPLE_MEDIA_ELEMENT_ONE_SRC = 1 << 2, /** has one src pad */ - PURPLE_MEDIA_ELEMENT_MULTI_SRC = 1 << 3, /** has multiple src pads */ - PURPLE_MEDIA_ELEMENT_REQUEST_SRC = 1 << 4, /** src pads must be requested */ - - PURPLE_MEDIA_ELEMENT_NO_SINKS = 0, /** has no sink pads */ - PURPLE_MEDIA_ELEMENT_ONE_SINK = 1 << 5, /** has one sink pad */ - PURPLE_MEDIA_ELEMENT_MULTI_SINK = 1 << 6, /** has multiple sink pads */ - PURPLE_MEDIA_ELEMENT_REQUEST_SINK = 1 << 7, /** sink pads must be requested */ - - PURPLE_MEDIA_ELEMENT_UNIQUE = 1 << 8, /** This element is unique and - only one instance of it should - be created at a time */ - - PURPLE_MEDIA_ELEMENT_SRC = 1 << 9, /** can be set as an active src */ - PURPLE_MEDIA_ELEMENT_SINK = 1 << 10, /** can be set as an active sink */ -} PurpleMediaElementType; - -struct _PurpleMediaElementInfo -{ - const gchar *id; - PurpleMediaElementType type; - GstElement *(*create)(void); -}; - #ifdef __cplusplus extern "C" { #endif @@ -121,16 +88,6 @@ PurpleMediaManager *purple_media_manager_get(void); /** - * Gets the pipeline from the media manager. - * - * @param manager The media manager to get the pipeline from. - * - * @return The pipeline. - */ -GstElement * -purple_media_manager_get_pipeline(PurpleMediaManager *manager); - -/** * Creates a media session. * * @param manager The media manager to create the session under. @@ -177,25 +134,6 @@ PurpleMedia *media); /** - * Returns a GStreamer source or sink for audio or video. - * - * @param manager The media manager to use to obtain the source/sink. - * @param type The type of source/sink to get. - */ -GstElement *purple_media_manager_get_element(PurpleMediaManager *manager, - PurpleMediaSessionType type); - -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); -/** * This shouldn't be called outside of mediamanager.c and media.c */ gboolean purple_media_manager_create_output_window(