Hi everyone, I've just committed a patch to SVN trunk which allows plugins to add elements to the GStreamer pipeline. This allows you to put filters in the pipeline to alter audio (e.g. the equaliser at [0]), or get a copy of the audio to do stuff with (e.g. send over the network).
[0] http://bugzilla.gnome.org/show_bug.cgi?id=76522 Details for anyone who wants to use this to do things ===================================================== There are three new interfaces that RBPlayer backends can implement, RBPlayerGstTee, RBPlayerGstFilter and RBPlayerGstDataTee - the RBPlayerGst backend currently implements the first two, and will probably implement the third in the future. Each of the interfaces adds two function, e.g. rb_player_gst_tee_add_tee and rb_player_gst_tee_add_tee. You just pass the element you want to add to these, if you need to add linked elements, put them in a GstBin first. Some sample code (in python), for a poor-mans visualisation: goom = gst.element_factory_make ("goom") sink = gst.element_factory_make ("ximagesink") colour = gst.element_factory_make ("ffmpegcolorspace") b = gst.Bin() b.add (goom, colour, sink) goom.link(colour) colour.link(sink) b.add_pad(gst.GhostPad("sink", goom.get_pad("sink"))) shell.get_player().props.player.add_tee_element(b) If anyone has any questions, issues, or cool idea of what we could use this for, please let us know. Cheers, James "Doc" Livingston -- "Some people think that noise abatement should be a higher priority for ATC. I say safety is noise abatement. You have no idea how much noise it makes to have a 737 fall out of the sky after an accident." -- anon. air traffic controller _______________________________________________ rhythmbox-devel mailing list [email protected] http://mail.gnome.org/mailman/listinfo/rhythmbox-devel
