RBPlayerGstDataTee

RBPlayerGstDataTee — player interface for processing raw data

Synopsis


#include <rb-player-gst-data-tee.h>

                    RBPlayerGstDataTee;
                    RBPlayerGstDataTeeIface;
gboolean            rb_player_gst_data_tee_add_data_tee (RBPlayerGstDataTee *player,
                                                         GstElement *element);
gboolean            rb_player_gst_data_tee_remove_data_tee
                                                        (RBPlayerGstDataTee *player,
                                                         GstElement *element);

Object Hierarchy

  GInterface
   +----RBPlayerGstDataTee

Signals

  "data-tee-inserted"                              : Run Last / No Recursion
  "data-tee-pre-remove"                            : Run Last / No Recursion

Description

This interface allows a caller to add a branch to the GStreamer playback pipeline that receives a copy of the raw data from the playback source element.

This interface is not currently implemented by either playback backend.

Details

RBPlayerGstDataTee

typedef struct _RBPlayerGstDataTee RBPlayerGstDataTee;


RBPlayerGstDataTeeIface

typedef struct {
	GTypeInterface	g_iface;

	/* virtual functions */
	gboolean	(*add_data_tee)		(RBPlayerGstDataTee *player, GstElement *element);
	gboolean	(*remove_data_tee)	(RBPlayerGstDataTee *player, GstElement *element);

	/* signals */
	void		(*data_tee_inserted)	(RBPlayerGstDataTee *player, GstElement *data_tee);
	void		(*data_tee_pre_remove)	(RBPlayerGstDataTee *player, GstElement *data_tee);
} RBPlayerGstDataTeeIface;


rb_player_gst_data_tee_add_data_tee ()

gboolean            rb_player_gst_data_tee_add_data_tee (RBPlayerGstDataTee *player,
                                                         GstElement *element);

Adds a raw data tee branch to the playback pipeline.

player :

a RBPlayerGstDataTee implementation

element :

data tee branch to add

Returns :

TRUE if the tee branch was added successfully

rb_player_gst_data_tee_remove_data_tee ()

gboolean            rb_player_gst_data_tee_remove_data_tee
                                                        (RBPlayerGstDataTee *player,
                                                         GstElement *element);

Removes a raw data tee branch.

player :

a RBPlayerGstDataTee implementation

element :

data tee branch to add

Returns :

TRUE if the tee branch was found and removed

Signal Details

The "data-tee-inserted" signal

void                user_function                      (RBPlayerGstDataTee *player,
                                                        GObject            *data_tee,
                                                        gpointer            user_data)      : Run Last / No Recursion

The 'data_tee-inserted' signal is emitted when the tee element has been inserted into the pipeline and fully linked

player :

the RBPlayerGstDataTee implementation

data_tee :

the element which has been inserted

user_data :

user data set when the signal handler was connected.

The "data-tee-pre-remove" signal

void                user_function                      (RBPlayerGstDataTee *player,
                                                        GObject            *data_tee,
                                                        gpointer            user_data)      : Run Last / No Recursion

The 'data_tee-pre-remove' signal is emitted immediately before the element is unlinked and removed from the pipeline

player :

the RBPlayerGstDataTee implementation

data_tee :

the element which is about to be removed

user_data :

user data set when the signal handler was connected.