On Tue, 2009-10-20 at 16:50 +0100, Kevin DeKorte wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> I've been having some great luck with clutter-gst and clutter-gtk and in
> fact created a new project with it
>
> http://code.google.com/p/fosfor/
>
> Looks something like this:
> http://1.bp.blogspot.com/_8vVUG9EUYMg/Srk-JPdRiNI/AAAAAAAAEuw/BUQcZH8-dQk/s1600-h/Screenshot-.-MediaWall.png
Awesome! Still sliders instead of funky progress bars make me sad these
days, I do like the way several flash players report progress :p
> To do DVD menus I need to first hook the "element-added" function of the
> video-sink, so I do this...
"element-added" is a signal that GstBins fire.
> element =
> clutter_gst_video_texture_get_playbin(CLUTTER_GST_VIDEO_TEXTURE(media));
> g_object_get(G_OBJECT(element),"video-sink",&video_sink, NULL);
>
> if (video_sink != NULL) {
> if (GST_IS_BIN(video_sink))
The variable called element is a GstBin (it's playbin, should evolve to
playbin2 before 1.0), so you can listen for "element-added" on that
GstElement.
ClutterGstVideoSink is not a GstBin, it's a subclass of GstBaseSink
which is a subclass of GstElement. It's the element responsible for
displaying a frame in the pipeline.
> The reason I need to make this hook is that I need to use
>
> gst_bin_get_by_interface (GST_BIN(video_sink), GST_TYPE_NAVIGATION);
Ah, for that to work (navigation events sent upstream from the sink),
CluttetGstVideoTexture would have to implement the GstNavigation
interface to forward ClutterEvents from the internal texture to upstream
elements (the one actually handling click on DVD menus).
That's not overly complicated but needs some work in clutter-gst,
patches are welcomed :p. I may end up doing it at some point, no ETA
though.
HTH,
--
Damien