summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hervey <edward.hervey@collabora.co.uk>2011-08-07 18:14:36 +0200
committerEdward Hervey <edward.hervey@collabora.co.uk>2011-08-07 18:14:36 +0200
commit8e3bbc21bba3c10c2d2945873181bf7ec565db62 (patch)
tree907c89ea57737c1779e6746ae25ca243c976faa4
parentca54ae7d44dcbd8d76483bd3292e5dee043ad086 (diff)
TEMPORARY PORT TO 0.110.11
-rw-r--r--configure.in46
-rw-r--r--src/backend/Makefile.am4
-rw-r--r--src/backend/bacon-video-widget-gst-0.10.c121
3 files changed, 80 insertions, 91 deletions
diff --git a/configure.in b/configure.in
index 797c8fcd..640caed3 100644
--- a/configure.in
+++ b/configure.in
@@ -75,9 +75,9 @@ AC_SUBST(PLUGINDIR)
dnl the two versions here implicate the gstreamer core and gst-plugins
dnl release versions.
-GST_MAJORMINOR=0.10
-GST_REQS=0.10.30
-GSTPLUG_REQS=0.10.30
+GST_MAJORMINOR=0.11
+GST_REQS=0.11.0
+GSTPLUG_REQS=0.11.0
HAVE_GSTREAMER=no
@@ -103,61 +103,61 @@ AC_ARG_ENABLE([easy-codec-installation],
AC_MSG_RESULT([$enable_easy_codec_installation])
if test "x$enable_easy_codec_installation" != "xno"; then
- PKG_CHECK_MODULES(MISSING_PLUGINS, gstreamer-plugins-base-0.10,
+ PKG_CHECK_MODULES(MISSING_PLUGINS, gstreamer-plugins-base-0.11,
[
- MISSING_PLUGINS_LIBS="$MISSING_PLUGINS_LIBS -lgstpbutils-0.10"
+ MISSING_PLUGINS_LIBS="$MISSING_PLUGINS_LIBS -lgstpbutils-0.11"
AC_DEFINE([ENABLE_MISSING_PLUGIN_INSTALLATION], 1,
[Whether we can and want to do installation of missing plugins])
])
fi
-MM="gstreamer-0.10 >= $GST_REQS gstreamer-base-0.10 >= $GST_REQS gstreamer-plugins-base-0.10 >= $GSTPLUG_REQS gstreamer-tag-0.10 >= $GSTPLUG_REQS"
+MM="gstreamer-0.11 >= $GST_REQS gstreamer-base-0.11 >= $GST_REQS gstreamer-plugins-base-0.11 >= $GSTPLUG_REQS gstreamer-tag-0.11 >= $GSTPLUG_REQS"
PKG_CHECK_MODULES(GST, $MM)
GST_LIBS="$GST_LIBS -lgstbase-$GST_MAJORMINOR -lgstinterfaces-$GST_MAJORMINOR -lgstvideo-$GST_MAJORMINOR -lgstaudio-$GST_MAJORMINOR -lgstpbutils-$GST_MAJORMINOR -lgsttag-$GST_MAJORMINOR"
AC_SUBST(GST_LIBS)
EXTRA_BACKEND_LIBS="-lgstinterfaces-$GST_MAJORMINOR -lgstvideo-$GST_MAJORMINOR -lgstaudio-$GST_MAJORMINOR -lgstpbutils-$GST_MAJORMINOR"
dnl Check for required plugins
-gst010_toolsdir=`$PKG_CONFIG --variable=toolsdir gstreamer-0.10`
-gst010_inspect="$gst010_toolsdir/gst-inspect-0.10"
+gst011_toolsdir=`$PKG_CONFIG --variable=toolsdir gstreamer-0.11`
+gst011_inspect="$gst011_toolsdir/gst-inspect-0.11"
dnl Give error and exit if we don't have the gst_inspect tool
-AC_MSG_CHECKING([GStreamer 0.10 inspection tool])
-if test -r "$gst010_inspect"; then
+AC_MSG_CHECKING([GStreamer 0.11 inspection tool])
+if test -r "$gst011_inspect"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
AC_MSG_ERROR([
- Cannot find required GStreamer-0.10 tool 'gst-inspect-0.10'.
- It should be part of gstreamer-0_10-utils. Please install it.
+ Cannot find required GStreamer-0.11 tool 'gst-inspect-0.11'.
+ It should be part of gstreamer-0_11-utils. Please install it.
])
fi
dnl Check for elements from gst-plugins-base
-for base_element in playbin2 ffmpegcolorspace videoscale
+for base_element in playbin videoconvert videoscale
do
- AC_MSG_CHECKING([GStreamer 0.10 $base_element plugin])
- if $gst010_inspect $base_element >/dev/null 2>/dev/null; then
+ AC_MSG_CHECKING([GStreamer 0.11 $base_element plugin])
+ if $gst011_inspect $base_element >/dev/null 2>/dev/null; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
AC_MSG_ERROR([
- Cannot find required GStreamer-0.10 plugin '$base_element'.
+ Cannot find required GStreamer-0.11 plugin '$base_element'.
It should be part of gst-plugins-base. Please install it.
])
fi
done
dnl Check for elements from gst-plugins-good
-for good_element in gconfaudiosink gconfvideosink goom
+for good_element in goom
do
- AC_MSG_CHECKING([GStreamer 0.10 $good_element plugin])
- if $gst010_inspect $good_element >/dev/null 2>/dev/null; then
+ AC_MSG_CHECKING([GStreamer 0.11 $good_element plugin])
+ if $gst011_inspect $good_element >/dev/null 2>/dev/null; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
AC_MSG_ERROR([
- Cannot find required GStreamer-0.10 plugin '$good_element'.
+ Cannot find required GStreamer-0.11 plugin '$good_element'.
It should be part of gst-plugins-good. Please install it.
])
fi
@@ -197,7 +197,7 @@ PKG_CHECK_MODULES([DEPENDENCY],[
gdk-x11-3.0 >= $GTK_REQS
gmodule-2.0
totem-plparser >= $TOTEM_PLPARSER_REQS
- gstreamer-tag-0.10 >= 0.10.26
+ gstreamer-tag-0.11 >= 0.11.0
cairo])
PKG_CHECK_MODULES(MM, $MM)
@@ -507,8 +507,8 @@ for plugin in ${used_plugins}; do
fi
dnl We need the souphttpsrc element for the YouTube plugin
- AC_MSG_CHECKING([GStreamer 0.10 souphttpsrc plugin])
- if $gst010_inspect souphttpsrc >/dev/null 2>/dev/null; then
+ AC_MSG_CHECKING([GStreamer 0.11 souphttpsrc plugin])
+ if $gst011_inspect souphttpsrc >/dev/null 2>/dev/null; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
diff --git a/src/backend/Makefile.am b/src/backend/Makefile.am
index 49c56108..30f0b007 100644
--- a/src/backend/Makefile.am
+++ b/src/backend/Makefile.am
@@ -55,9 +55,7 @@ libbaconvideowidget_la_SOURCES = \
video-utils.c video-utils.h \
bacon-video-widget-gst-0.10.c \
bacon-video-widget-gst-missing-plugins.c \
- bacon-video-widget-gst-missing-plugins.h \
- gstscreenshot.c \
- gstscreenshot.h
+ bacon-video-widget-gst-missing-plugins.h
libbaconvideowidget_la_CPPFLAGS = \
-D_REENTRANT \
diff --git a/src/backend/bacon-video-widget-gst-0.10.c b/src/backend/bacon-video-widget-gst-0.10.c
index bea7283e..b43185e7 100644
--- a/src/backend/bacon-video-widget-gst-0.10.c
+++ b/src/backend/bacon-video-widget-gst-0.10.c
@@ -153,7 +153,7 @@ static const gchar *video_props_str[4] = {
"hue"
};
-/* GstPlayFlags flags from playbin2 */
+/* GstPlayFlags flags from playbin */
typedef enum {
GST_PLAY_FLAG_VIDEO = (1 << 0),
GST_PLAY_FLAG_AUDIO = (1 << 1),
@@ -739,7 +739,7 @@ bacon_video_widget_draw (GtkWidget *widget, cairo_t *cr)
window = gdk_x11_window_get_xid (bvw->priv->video_window);
if (xoverlay != NULL && GST_IS_X_OVERLAY (xoverlay))
- gst_x_overlay_set_xwindow_id (xoverlay, window);
+ gst_x_overlay_set_window_handle (xoverlay, window);
/* Start with a nice black canvas */
gtk_widget_get_allocation (widget, &allocation);
@@ -1459,18 +1459,14 @@ bvw_update_stream_info (BaconVideoWidget *bvw)
static void
bvw_handle_application_message (BaconVideoWidget *bvw, GstMessage *msg)
{
- const gchar *msg_name;
GtkAllocation allocation;
- msg_name = gst_structure_get_name (msg->structure);
- g_return_if_fail (msg_name != NULL);
+ GST_DEBUG ("Handling application message: %s", GST_MESSAGE_TYPE_NAME (msg));
- GST_DEBUG ("Handling application message: %" GST_PTR_FORMAT, msg->structure);
-
- if (strcmp (msg_name, "stream-changed") == 0) {
+ if (gst_message_has_name(msg, "stream-changed")) {
bvw_update_stream_info (bvw);
}
- else if (strcmp (msg_name, "video-size") == 0) {
+ else if (gst_message_has_name(msg, "video-size")) {
/* if we're not interactive, we want to announce metadata
* only later when we can be sure we got it all */
if (bvw->priv->use_type == BVW_USE_TYPE_VIDEO ||
@@ -1489,7 +1485,7 @@ bvw_handle_application_message (BaconVideoWidget *bvw, GstMessage *msg)
}
bvw->priv->window_resized = TRUE;
} else {
- g_message ("Unhandled application message %s", msg_name);
+ g_message ("Unhandled application message %s", GST_MESSAGE_TYPE_NAME (msg));
}
}
@@ -1556,11 +1552,10 @@ bvw_handle_element_message (BaconVideoWidget *bvw, GstMessage *msg)
gchar *src_name;
src_name = gst_object_get_name (msg->src);
- if (msg->structure)
- type_name = gst_structure_get_name (msg->structure);
-
- GST_DEBUG ("from %s: %" GST_PTR_FORMAT, src_name, msg->structure);
+ type_name = GST_MESSAGE_TYPE_NAME (msg);
+ GST_DEBUG ("from %s: %s", src_name, type_name);
+#if 0
if (type_name == NULL)
goto unhandled;
@@ -1698,6 +1693,7 @@ unhandled:
done:
g_free (src_name);
+#endif
}
/* This is a hack to avoid doing poll_for_state_change() indirectly
@@ -2003,7 +1999,7 @@ bvw_update_tags_delayed (BaconVideoWidget *bvw, GstTagList *tags, const gchar *t
}
static void
-video_tags_changed_cb (GstElement *playbin2, gint stream_id, gpointer user_data)
+video_tags_changed_cb (GstElement *playbin, gint stream_id, gpointer user_data)
{
BaconVideoWidget *bvw = (BaconVideoWidget *) user_data;
GstTagList *tags = NULL;
@@ -2022,7 +2018,7 @@ video_tags_changed_cb (GstElement *playbin2, gint stream_id, gpointer user_data)
}
static void
-audio_tags_changed_cb (GstElement *playbin2, gint stream_id, gpointer user_data)
+audio_tags_changed_cb (GstElement *playbin, gint stream_id, gpointer user_data)
{
BaconVideoWidget *bvw = (BaconVideoWidget *) user_data;
GstTagList *tags = NULL;
@@ -2041,7 +2037,7 @@ audio_tags_changed_cb (GstElement *playbin2, gint stream_id, gpointer user_data)
}
static void
-text_tags_changed_cb (GstElement *playbin2, gint stream_id, gpointer user_data)
+text_tags_changed_cb (GstElement *playbin, gint stream_id, gpointer user_data)
{
BaconVideoWidget *bvw = (BaconVideoWidget *) user_data;
GstTagList *tags = NULL;
@@ -2198,7 +2194,7 @@ bvw_bus_message_cb (GstBus * bus, GstMessage * message, gpointer data)
}
case GST_MESSAGE_TAG:
/* Ignore TAG messages, we get updated tags from the
- * {audio,video,text}-tags-changed signals of playbin2
+ * {audio,video,text}-tags-changed signals of playbin
*/
break;
case GST_MESSAGE_EOS:
@@ -2505,14 +2501,13 @@ playbin_deep_notify_cb (GstObject *gstobject,
static gboolean
bvw_query_timeout (BaconVideoWidget *bvw)
{
- GstFormat fmt = GST_FORMAT_TIME;
gint64 prev_len = -1;
gint64 pos = -1, len = -1;
/* check length/pos of stream */
prev_len = bvw->priv->stream_length;
- if (gst_element_query_duration (bvw->priv->play, &fmt, &len)) {
- if (len != -1 && fmt == GST_FORMAT_TIME) {
+ if (gst_element_query_duration (bvw->priv->play, GST_FORMAT_TIME, &len)) {
+ if (len != -1) {
bvw->priv->stream_length = len / GST_MSECOND;
if (bvw->priv->stream_length != prev_len) {
if (bvw->priv->use_type == BVW_USE_TYPE_AUDIO ||
@@ -2525,8 +2520,8 @@ bvw_query_timeout (BaconVideoWidget *bvw)
GST_DEBUG ("could not get duration");
}
- if (gst_element_query_position (bvw->priv->play, &fmt, &pos)) {
- if (pos != -1 && fmt == GST_FORMAT_TIME) {
+ if (gst_element_query_position (bvw->priv->play, GST_FORMAT_TIME, &pos)) {
+ if (pos != -1) {
got_time_tick (GST_ELEMENT (bvw->priv->play), pos, bvw);
}
} else {
@@ -3459,7 +3454,7 @@ set_audio_filter (BaconVideoWidget *bvw)
/* Start with what the audio sink supports, but limit the allowed
* channel count to our speaker output configuration */
pad = gst_element_get_static_pad (bvw->priv->audio_capsfilter, "src");
- caps = gst_pad_peer_get_caps (pad);
+ caps = gst_pad_peer_get_caps (pad, NULL);
gst_object_unref (pad);
if ((channels = get_num_audio_channels (bvw)) == -1)
@@ -4417,7 +4412,7 @@ bacon_video_widget_dvd_event (BaconVideoWidget * bvw,
bvw_set_playback_direction (bvw, TRUE);
fmt = gst_format_get_by_nick (fmt_name);
- if (gst_element_query_position (bvw->priv->play, &fmt, &val)) {
+ if (gst_element_query_position (bvw->priv->play, fmt, &val)) {
GST_DEBUG ("current %s is: %" G_GINT64_FORMAT, fmt_name, val);
val += dir;
GST_DEBUG ("seeking to %s: %" G_GINT64_FORMAT, fmt_name, val);
@@ -4912,9 +4907,10 @@ setup_vis_find_factory (BaconVideoWidget * bvw, const gchar * vis_name)
/* if nothing was found, try the short name (the default schema uses this) */
for (l = features; l != NULL; l = l->next) {
GstElementFactory *f = GST_ELEMENT_FACTORY (l->data);
+ gchar *fname = f ? gst_plugin_feature_get_name(f) : NULL;
/* set to long name as key so that the preferences dialog gets it right */
- if (f && strcmp (vis_name, GST_PLUGIN_FEATURE_NAME (f)) == 0) {
+ if (fname && strcmp (vis_name, fname) == 0) {
bacon_video_widget_set_visualization (bvw, gst_element_factory_get_longname (f));
fac = f;
goto done;
@@ -4975,8 +4971,7 @@ setup_vis (BaconVideoWidget * bvw)
goto beach;
}
/* We created the bin, now ref and sink to make sure we own it */
- gst_object_ref (vis_bin);
- gst_object_sink (vis_bin);
+ gst_object_ref_sink (vis_bin);
gst_bin_add_many (GST_BIN (vis_bin), vis_element, vis_capsfilter, NULL);
@@ -5600,10 +5595,9 @@ bacon_video_widget_get_stream_length (BaconVideoWidget * bvw)
g_return_val_if_fail (BACON_IS_VIDEO_WIDGET (bvw), -1);
if (bvw->priv->stream_length == 0 && bvw->priv->play != NULL) {
- GstFormat fmt = GST_FORMAT_TIME;
gint64 len = -1;
- if (gst_element_query_duration (bvw->priv->play, &fmt, &len) && len != -1) {
+ if (gst_element_query_duration (bvw->priv->play, GST_FORMAT_TIME, &len) && len != -1) {
bvw->priv->stream_length = len / GST_MSECOND;
}
}
@@ -6197,10 +6191,14 @@ bacon_video_widget_get_metadata_pixbuf (BaconVideoWidget * bvw,
GdkPixbufLoader *loader;
GdkPixbuf *pixbuf = NULL;
GError *err = NULL;
+ gpointer data;
+ gsize size;
loader = gdk_pixbuf_loader_new ();
- if (gdk_pixbuf_loader_write (loader, buffer->data, buffer->size, &err) &&
+ data = gst_buffer_map(buffer, &size, NULL, GST_MAP_READ);
+
+ if (gdk_pixbuf_loader_write (loader, data, size, &err) &&
gdk_pixbuf_loader_close (loader, &err)) {
pixbuf = gdk_pixbuf_loader_get_pixbuf (loader);
if (pixbuf)
@@ -6211,6 +6209,9 @@ bacon_video_widget_get_metadata_pixbuf (BaconVideoWidget * bvw,
}
g_object_unref (loader);
+
+ gst_buffer_unmap (buffer, data, size);
+
return pixbuf;
}
@@ -6222,9 +6223,11 @@ bacon_video_widget_get_best_image (BaconVideoWidget *bvw)
for (i = 0; ; i++) {
const GValue *value;
+#if 0
GstBuffer *buffer;
GstStructure *caps_struct;
int type;
+#endif
value = gst_tag_list_get_value_index (bvw->priv->tagcache,
GST_TAG_IMAGE,
@@ -6232,6 +6235,7 @@ bacon_video_widget_get_best_image (BaconVideoWidget *bvw)
if (value == NULL)
break;
+#if 0
buffer = gst_value_get_buffer (value);
caps_struct = gst_caps_get_structure (buffer->caps, 0);
@@ -6246,6 +6250,9 @@ bacon_video_widget_get_best_image (BaconVideoWidget *bvw)
cover_value = value;
break;
}
+#else
+ cover_value = value;
+#endif
}
return cover_value;
@@ -6387,12 +6394,16 @@ destroy_pixbuf (guchar *pix, gpointer data)
GdkPixbuf *
bacon_video_widget_get_current_frame (BaconVideoWidget * bvw)
{
+#if 0
GstStructure *s;
+#endif
GstBuffer *buf = NULL;
GdkPixbuf *pixbuf;
GstCaps *to_caps;
+#if 0
gint outwidth = 0;
gint outheight = 0;
+#endif
g_return_val_if_fail (bvw != NULL, NULL);
g_return_val_if_fail (BACON_IS_VIDEO_WIDGET (bvw), NULL);
@@ -6419,12 +6430,6 @@ bacon_video_widget_get_current_frame (BaconVideoWidget * bvw)
return NULL;
}
- if (GST_BUFFER_CAPS (buf) == NULL) {
- GST_DEBUG ("Could not take screenshot: %s", "no caps on buffer");
- g_warning ("Could not take screenshot: %s", "no caps on buffer");
- return NULL;
- }
-
/* convert to our desired format (RGB24) */
to_caps = gst_caps_new_simple ("video/x-raw-rgb",
"bpp", G_TYPE_INT, 24,
@@ -6442,11 +6447,10 @@ bacon_video_widget_get_current_frame (BaconVideoWidget * bvw)
"blue_mask", G_TYPE_INT, 0x0000ff,
NULL);
- GST_DEBUG ("frame caps: %" GST_PTR_FORMAT, GST_BUFFER_CAPS (buf));
GST_DEBUG ("pixbuf caps: %" GST_PTR_FORMAT, to_caps);
/* bvw_frame_conv_convert () takes ownership of the buffer passed */
- buf = bvw_frame_conv_convert (buf, to_caps);
+ buf = gst_video_convert_frame (buf, NULL, to_caps, 5 * GST_SECOND, NULL);
gst_caps_unref (to_caps);
@@ -6456,12 +6460,7 @@ bacon_video_widget_get_current_frame (BaconVideoWidget * bvw)
return NULL;
}
- if (!GST_BUFFER_CAPS (buf)) {
- GST_DEBUG ("Could not take screenshot: %s", "no caps on output buffer");
- g_warning ("Could not take screenshot: %s", "no caps on output buffer");
- return NULL;
- }
-
+#if 0
s = gst_caps_get_structure (GST_BUFFER_CAPS (buf), 0);
gst_structure_get_int (s, "width", &outwidth);
gst_structure_get_int (s, "height", &outheight);
@@ -6471,6 +6470,7 @@ bacon_video_widget_get_current_frame (BaconVideoWidget * bvw)
pixbuf = gdk_pixbuf_new_from_data (GST_BUFFER_DATA (buf),
GDK_COLORSPACE_RGB, FALSE, 8, outwidth, outheight,
GST_ROUND_UP_4 (outwidth * 3), destroy_pixbuf, buf);
+#endif
if (!pixbuf) {
GST_DEBUG ("Could not take screenshot: %s", "could not create pixbuf");
@@ -6691,14 +6691,9 @@ bvw_element_msg_sync (GstBus *bus, GstMessage *msg, gpointer data)
{
BaconVideoWidget *bvw = BACON_VIDEO_WIDGET (data);
- g_assert (msg->type == GST_MESSAGE_ELEMENT);
-
- if (msg->structure == NULL)
- return;
-
/* This only gets sent if we haven't set an ID yet. This is our last
* chance to set it before the video sink will create its own window */
- if (gst_structure_has_name (msg->structure, "prepare-xwindow-id")) {
+ if (gst_message_has_name (msg, "prepare-xwindow-id")) {
XID window;
GST_DEBUG ("Handling sync prepare-xwindow-id message");
@@ -6716,7 +6711,7 @@ bvw_element_msg_sync (GstBus *bus, GstMessage *msg, gpointer data)
g_return_if_fail (bvw->priv->video_window != NULL);
window = gdk_x11_window_get_xid (bvw->priv->video_window);
- gst_x_overlay_set_xwindow_id (bvw->priv->xoverlay, window);
+ gst_x_overlay_set_window_handle (bvw->priv->xoverlay, window);
}
}
@@ -6734,14 +6729,12 @@ bvw_set_playback_direction (BaconVideoWidget *bvw, gboolean forward)
if (forward == FALSE) {
GstEvent *event;
- GstFormat fmt;
gint64 cur = 0;
- fmt = GST_FORMAT_TIME;
- if (gst_element_query_position (bvw->priv->play, &fmt, &cur)) {
+ if (gst_element_query_position (bvw->priv->play, GST_FORMAT_TIME, &cur)) {
GST_DEBUG ("Setting playback direction to reverse at %"G_GINT64_FORMAT"", cur);
event = gst_event_new_seek (REVERSE_RATE,
- fmt, GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_ACCURATE,
+ GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_ACCURATE,
GST_SEEK_TYPE_SET, G_GINT64_CONSTANT (0),
GST_SEEK_TYPE_SET, cur);
if (gst_element_send_event (bvw->priv->play, event) == FALSE) {
@@ -6756,15 +6749,13 @@ bvw_set_playback_direction (BaconVideoWidget *bvw, gboolean forward)
}
} else {
GstEvent *event;
- GstFormat fmt;
gint64 cur = 0;
- fmt = GST_FORMAT_TIME;
cur = 0;
- if (gst_element_query_position (bvw->priv->play, &fmt, &cur)) {
+ if (gst_element_query_position (bvw->priv->play, GST_FORMAT_TIME, &cur)) {
GST_DEBUG ("Setting playback direction to forward at %"G_GINT64_FORMAT"", cur);
event = gst_event_new_seek (FORWARD_RATE,
- fmt, GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_ACCURATE,
+ GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_ACCURATE,
GST_SEEK_TYPE_SET, cur,
GST_SEEK_TYPE_SET, GST_CLOCK_TIME_NONE);
if (gst_element_send_event (bvw->priv->play, event) == FALSE) {
@@ -6841,7 +6832,7 @@ bacon_video_widget_new (int width, int height,
bvw->priv->use_type = type;
GST_DEBUG ("use_type = %d", type);
- bvw->priv->play = gst_element_factory_make ("playbin2", "play");
+ bvw->priv->play = gst_element_factory_make ("playbin", "play");
if (!bvw->priv->play) {
g_set_error_literal (error, BVW_ERROR, BVW_ERROR_PLUGIN_LOAD,
_("Failed to create a GStreamer play object. "
@@ -6890,9 +6881,9 @@ bacon_video_widget_new (int width, int height,
bvw->priv->auto_resize = FALSE;
if (type == BVW_USE_TYPE_VIDEO || type == BVW_USE_TYPE_AUDIO) {
- audio_sink = gst_element_factory_make ("gconfaudiosink", "audio-sink");
+ /* audio_sink = gst_element_factory_make ("gconfaudiosink", "audio-sink"); */
if (audio_sink == NULL) {
- g_warning ("Could not create element 'gconfaudiosink'");
+ /* g_warning ("Could not create element 'gconfaudiosink'"); */
/* Try to fallback on autoaudiosink */
audio_sink = gst_element_factory_make ("autoaudiosink", "audio-sink");
} else {
@@ -6910,9 +6901,9 @@ bacon_video_widget_new (int width, int height,
GST_INFO ("forcing ximagesink, image size only %dx%d", width, height);
video_sink = gst_element_factory_make ("ximagesink", "video-sink");
} else {
- video_sink = gst_element_factory_make ("gconfvideosink", "video-sink");
+ /* video_sink = gst_element_factory_make ("gconfvideosink", "video-sink"); */
if (video_sink == NULL) {
- g_warning ("Could not create element 'gconfvideosink'");
+ /* g_warning ("Could not create element 'gconfvideosink'"); */
/* Try to fallback on ximagesink */
video_sink = gst_element_factory_make ("ximagesink", "video-sink");
}