diff options
author | Julien Moutte <julien@moutte.net> | 2004-01-07 21:49:25 +0000 |
---|---|---|
committer | Julien Moutte <julien@moutte.net> | 2004-01-07 21:49:25 +0000 |
commit | 861724761f815f5bcd28be1f9aeca0b4a0c20ef7 (patch) | |
tree | b2579d903310e4c450e5fd4a9f647a2a578ba18e /gst-libs/gst/play | |
parent | 90068d9efb4e71973efc5b83a6e7a05ebc33f9a4 (diff) | |
download | gst-plugins-bad-861724761f815f5bcd28be1f9aeca0b4a0c20ef7.tar.gz gst-plugins-bad-861724761f815f5bcd28be1f9aeca0b4a0c20ef7.tar.bz2 gst-plugins-bad-861724761f815f5bcd28be1f9aeca0b4a0c20ef7.zip |
examples/gstplay/Makefile.am: Adding the interface library.
Original commit message from CVS:
* examples/gstplay/Makefile.am: Adding the interface library.
* gst-libs/gst/play/Makefile.am: Adding the interface library.
* gst-libs/gst/play/gstplay.c: (gst_play_set_video_sink): Connecting tothe XOverlay size signal instead of GstVideoSink.
* gst-libs/gst/play/gstplay.h: Including the XOverlay interface to check GST_IS_X_OVERLAY before signal connect.
* gst-libs/gst/video/gstvideosink.c: (gst_videosink_class_init):
Removing the have_video_size signal.
* gst-libs/gst/video/gstvideosink.h: Removing the have_video_size signal and associated public method.
* sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents),
(gst_ximagesink_sinkconnect): Using XOverlay public method to fire size
signal.
* sys/xvideo/xvideosink.c: (gst_xvideosink_sinkconnect),
(gst_xvideosink_xwindow_new): Using XOverlay public method to fire size
signal.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_sinkconnect):
Using XOverlay public method to fire size signal.
Diffstat (limited to 'gst-libs/gst/play')
-rw-r--r-- | gst-libs/gst/play/Makefile.am | 5 | ||||
-rw-r--r-- | gst-libs/gst/play/gstplay.c | 7 | ||||
-rw-r--r-- | gst-libs/gst/play/gstplay.h | 1 | ||||
-rw-r--r-- | gst-libs/gst/play/play.c | 7 | ||||
-rw-r--r-- | gst-libs/gst/play/play.h | 1 |
5 files changed, 16 insertions, 5 deletions
diff --git a/gst-libs/gst/play/Makefile.am b/gst-libs/gst/play/Makefile.am index db444521..82a6d672 100644 --- a/gst-libs/gst/play/Makefile.am +++ b/gst-libs/gst/play/Makefile.am @@ -8,7 +8,10 @@ libgstplay_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@ libgstplay_@GST_MAJORMINOR@include_HEADERS = gstplay.h libgstplay_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_CFLAGS) -libgstplay_@GST_MAJORMINOR@_la_LIBADD = $(GST_LIBS) $(GST_PLUGINS_LIBS) $(GST_CONTROL_LIBS) +libgstplay_@GST_MAJORMINOR@_la_LIBADD = + $(GST_LIBS) $(GST_PLUGINS_LIBS) \ + $(GST_CONTROL_LIBS) \ + $(top_builddir)/gst-libs/gst/libgstinterfaces-$(GST_MAJORMINOR).la libgstplay_@GST_MAJORMINOR@_la_LDFLAGS = \ -version-info @GST_PLUGINS_LIBVERSION@ diff --git a/gst-libs/gst/play/gstplay.c b/gst-libs/gst/play/gstplay.c index d79e06f3..7c7ef849 100644 --- a/gst-libs/gst/play/gstplay.c +++ b/gst-libs/gst/play/gstplay.c @@ -685,8 +685,11 @@ gst_play_set_video_sink (GstPlay *play, GstElement *video_sink) if (GST_IS_ELEMENT (video_sink_element)) { g_hash_table_replace (play->priv->elements, "video_sink_element", video_sink_element); - g_signal_connect (G_OBJECT (video_sink_element), "have_video_size", - G_CALLBACK (gst_play_have_video_size), play); + if (GST_IS_X_OVERLAY (video_sink_element)) { + g_signal_connect (G_OBJECT (video_sink_element), + "desired_size_changed", + G_CALLBACK (gst_play_have_video_size), play); + } } gst_element_set_state (video_sink, GST_STATE (GST_ELEMENT(play))); diff --git a/gst-libs/gst/play/gstplay.h b/gst-libs/gst/play/gstplay.h index 0c45d943..484b7bc0 100644 --- a/gst-libs/gst/play/gstplay.h +++ b/gst-libs/gst/play/gstplay.h @@ -21,6 +21,7 @@ #define __GST_PLAY_H__ #include <gst/gst.h> +#include <gst/xoverlay/xoverlay.h> #define GST_TYPE_PLAY (gst_play_get_type()) #define GST_PLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PLAY, GstPlay)) diff --git a/gst-libs/gst/play/play.c b/gst-libs/gst/play/play.c index d79e06f3..7c7ef849 100644 --- a/gst-libs/gst/play/play.c +++ b/gst-libs/gst/play/play.c @@ -685,8 +685,11 @@ gst_play_set_video_sink (GstPlay *play, GstElement *video_sink) if (GST_IS_ELEMENT (video_sink_element)) { g_hash_table_replace (play->priv->elements, "video_sink_element", video_sink_element); - g_signal_connect (G_OBJECT (video_sink_element), "have_video_size", - G_CALLBACK (gst_play_have_video_size), play); + if (GST_IS_X_OVERLAY (video_sink_element)) { + g_signal_connect (G_OBJECT (video_sink_element), + "desired_size_changed", + G_CALLBACK (gst_play_have_video_size), play); + } } gst_element_set_state (video_sink, GST_STATE (GST_ELEMENT(play))); diff --git a/gst-libs/gst/play/play.h b/gst-libs/gst/play/play.h index 0c45d943..484b7bc0 100644 --- a/gst-libs/gst/play/play.h +++ b/gst-libs/gst/play/play.h @@ -21,6 +21,7 @@ #define __GST_PLAY_H__ #include <gst/gst.h> +#include <gst/xoverlay/xoverlay.h> #define GST_TYPE_PLAY (gst_play_get_type()) #define GST_PLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PLAY, GstPlay)) |