GStreamer

 view release on metacpan or  search on metacpan

xs/GstElement.xs  view on Meta::CPAN

# FIXME: Needed?
# void gst_element_release_request_pad (GstElement *element, GstPad *pad);

GstIterator * gst_element_iterate_pads (GstElement * element);

GstIterator * gst_element_iterate_src_pads (GstElement * element);

GstIterator * gst_element_iterate_sink_pads (GstElement * element);

GstPad* gst_element_get_compatible_pad (GstElement *element, GstPad *pad, const GstCaps *caps);

GstPadTemplate_ornull* gst_element_get_compatible_pad_template (GstElement *element, GstPadTemplate *compattempl);

# gboolean gst_element_link (GstElement *src, GstElement *dest);
gboolean
gst_element_link (src, dest, ...)
	GstElement *src
	GstElement *dest
    PREINIT:
	int i;
    CODE:
	RETVAL = TRUE;

	for (i = 1; i < items && RETVAL != FALSE; i++) {
		dest = SvGstElement (ST (i));
		if (!gst_element_link (src, dest))
			RETVAL = FALSE;
		src = dest;
	}
    OUTPUT:
	RETVAL

gboolean gst_element_link_filtered (GstElement *src, GstElement *dest, GstCaps_ornull *filtercaps);

# void gst_element_unlink (GstElement *src, GstElement *dest);
void
gst_element_unlink (src, dest, ...)
	GstElement *src
	GstElement *dest
    PREINIT:
	int i;
    CODE:
	for (i = 1; i < items; i++) {
		dest = SvGstElement (ST (i));
		gst_element_unlink (src, dest);
		src = dest;
	}

gboolean gst_element_link_pads (GstElement *src, const gchar *srcpadname, GstElement *dest, const gchar *destpadname);

gboolean gst_element_link_pads_filtered (GstElement *src, const gchar *srcpadname, GstElement *dest, const gchar *destpadname, GstCaps_ornull *filtercaps);

void gst_element_unlink_pads (GstElement *src, const gchar *srcpadname, GstElement *dest, const gchar *destpadname);

# gboolean gst_element_send_event (GstElement *element, GstEvent *event);
gboolean
gst_element_send_event (element, event)
	GstElement *element
	GstEvent *event
    C_ARGS:
	/* event gets unref'ed, we need to keep it alive. */
	element, gst_event_ref (event)

gboolean gst_element_seek (GstElement *element, gdouble rate, GstFormat format, GstSeekFlags flags, GstSeekType cur_type, gint64 cur, GstSeekType stop_type, gint64 stop);

# G_CONST_RETURN GstQueryType* gst_element_get_query_types (GstElement *element);
void
gst_element_get_query_types (element)
	GstElement *element
    PREINIT:
	GstQueryType *types;
    PPCODE:
	types = (GstQueryType *) gst_element_get_query_types (element);
	if (types)
		while (*types++)
			XPUSHs (sv_2mortal (newSVGstQueryType (*types)));

gboolean gst_element_query (GstElement *element, GstQuery *query);

# gboolean gst_element_post_message (GstElement * element, GstMessage * message);
gboolean
gst_element_post_message (GstElement * element, GstMessage * message)
    C_ARGS:
	/* element takes ownership of message. */
	element, gst_message_ref (message)

void gst_element_found_tags (GstElement *element, GstTagList *tag_list);

# void gst_element_found_tags_for_pad (GstElement *element, GstPad *pad, GstTagList *list);
void
gst_element_found_tags_for_pad (element, pad, list)
	GstElement *element
	GstPad *pad
	GstTagList *list
    C_ARGS:
	/* gst_element_found_tags_for_pad takes ownership of list. */
	element, pad, gst_tag_list_copy (list)

# FIXME?
# gchar * _gst_element_error_printf (const gchar *format, ...);
# void gst_element_message_full (GstElement * element, GstMessageType type, GQuark domain, gint code, gchar * text, gchar * debug, const gchar * file, const gchar * function, gint line);

gboolean gst_element_is_locked_state (GstElement *element);

gboolean gst_element_set_locked_state (GstElement *element, gboolean locked_state);

gboolean gst_element_sync_state_with_parent (GstElement *element);

# GstStateChangeReturn gst_element_get_state (GstElement * element, GstState * state, GstState * pending, GstClockTime timeout);
void
gst_element_get_state (GstElement * element, GstClockTime timeout)
    PREINIT:
	GstStateChangeReturn retval;
	GstState state;
	GstState pending;
    PPCODE:
	retval = gst_element_get_state (element, &state, &pending, timeout);
	EXTEND (sp, 3);
	PUSHs (sv_2mortal (newSVGstStateChangeReturn (retval)));
	PUSHs (sv_2mortal (newSVGstState (state)));
	PUSHs (sv_2mortal (newSVGstState (pending)));



( run in 3.088 seconds using v1.01-cache-2.11-cpan-5735350b133 )