[Xfce4-commits] [apps/parole] 01/01: Use autoimagesink to use the safest available sink. This eliminates the dreaded 'Could not initialise Xv output' error (Bug #11950)
noreply at xfce.org
noreply at xfce.org
Wed Feb 28 12:33:23 CET 2018
This is an automated email from the git hooks/post-receive script.
b l u e s a b r e p u s h e d a c o m m i t t o b r a n c h m a s t e r
in repository apps/parole.
commit aa337430ed1fb0396f17141fefb953973e0ac105
Author: Sean Davis <smd.seandavis at gmail.com>
Date: Wed Feb 28 06:33:17 2018 -0500
Use autoimagesink to use the safest available sink. This eliminates the dreaded 'Could not initialise Xv output' error (Bug #11950)
---
data/interfaces/parole-settings.ui | 6 +++++-
src/gst/parole-gst.c | 6 ++++++
src/parole-conf-dialog.c | 11 +++++++----
src/parole-conf.c | 2 +-
4 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/data/interfaces/parole-settings.ui b/data/interfaces/parole-settings.ui
index fe69d72..b57f8d0 100644
--- a/data/interfaces/parole-settings.ui
+++ b/data/interfaces/parole-settings.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.20.0 -->
+<!-- Generated with glade 3.20.2 -->
<interface>
<requires lib="gtk+" version="3.20"/>
<requires lib="libxfce4ui-2" version="4.11"/>
@@ -23,6 +23,10 @@
</columns>
<data>
<row>
+ <col id="0">autoimagesink</col>
+ <col id="1" translatable="yes">Automatic</col>
+ </row>
+ <row>
<col id="0">xvimagesink</col>
<col id="1" translatable="yes">X Window System (X11/XShm/Xv)</col>
</row>
diff --git a/src/gst/parole-gst.c b/src/gst/parole-gst.c
index f244d0c..ac5fd31 100644
--- a/src/gst/parole-gst.c
+++ b/src/gst/parole-gst.c
@@ -90,6 +90,7 @@ typedef enum {
} GstPlayFlags;
typedef enum {
+ AUTOIMAGESINK,
XIMAGESINK,
XVIMAGESINK,
CLUTTERSINK
@@ -1907,6 +1908,11 @@ parole_gst_constructed(GObject *object) {
}
/* Configure the video sink */
+ if (g_strcmp0(videosink, "autoimagesink") == 0) {
+ gst->priv->image_sink = AUTOIMAGESINK;
+ gst->priv->video_sink = gst_element_factory_make("autoimagesink", "video");
+ }
+
if (g_strcmp0(videosink, "xvimagesink") == 0) {
gst->priv->image_sink = XVIMAGESINK;
gst->priv->video_sink = gst_element_factory_make("xvimagesink", "video");
diff --git a/src/parole-conf-dialog.c b/src/parole-conf-dialog.c
index b75bbd1..84629d3 100644
--- a/src/parole-conf-dialog.c
+++ b/src/parole-conf-dialog.c
@@ -336,19 +336,22 @@ parole_conf_dialog_set_default_sink_plugin(ParoleConfDialog *self) {
"videosink", &sink_name,
NULL);
- if (g_strcmp0(sink_name, "xvimagesink") == 0) {
+ if (g_strcmp0(sink_name, "autoimagesink") == 0) {
gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 0);
return TRUE;
- } else if (g_strcmp0(sink_name, "ximagesink") == 0) {
+ } else if (g_strcmp0(sink_name, "xvimagesink") == 0) {
gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 1);
return TRUE;
+ } else if (g_strcmp0(sink_name, "ximagesink") == 0) {
+ gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 2);
+ return TRUE;
#ifdef HAVE_CLUTTER
} else if (g_strcmp0(sink_name, "cluttersink") == 0) {
- gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 2);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 3);
return TRUE;
#endif
} else {
- gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 1);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(self->priv->sink_combox), 0);
return FALSE;
}
}
diff --git a/src/parole-conf.c b/src/parole-conf.c
index 0ba1ccd..00c7f35 100644
--- a/src/parole-conf.c
+++ b/src/parole-conf.c
@@ -688,7 +688,7 @@ parole_conf_class_init(ParoleConfClass *klass) {
g_param_spec_string("videosink",
"/video/videosink",
NULL,
- "xvimagesink",
+ "autoimagesink",
G_PARAM_READWRITE));
/**
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list