Bug#762579: gstreamer1.0-vaapi: Does not work at all (with totem)
Víctor M. Jáquez L.
vjaquez at igalia.com
Wed Apr 8 12:25:48 UTC 2015
On Tue, 2014-09-23 at 12:50 +0200, Julian Andres Klode wrote:
> Package: gstreamer1.0-vaapi
> Version: 0.5.9-2
> Severity: important
>
> Trying to play back a simple MP4 movie with H.264 video and AAC audio,
> does not work at all. Only displays an error.
I found that running
$ gst-launch-1.0 playbin uri=file://<location of the file> video-sink=cluttersink audio-filter=scaletempo flags=0x17
which is the pipeline handled by totem[1] but with no de-interlace and no
color balance by software, it works fairly OK.
Sadly, it is not straightforward to set this flags in totem.
I cooked a hackish patch for this use-case, which modifies the playbin
(gst-plugins-base1.0 source package), enabling the flags setting through the
environment variable GST_PLAYBIN_FLAGS
Then you could run the
$ GST_PLAYBIN_FLAG=0x17 totem <location of the file>
vmjl
1. https://wiki.gnome.org/Apps/Videos/BugReporting
-------------- next part --------------
--- a/gst/playback/gstplaysink.c
+++ b/gst/playback/gstplaysink.c
@@ -3786,8 +3786,23 @@ no_chain:
gboolean
gst_play_sink_set_flags (GstPlaySink * playsink, GstPlayFlags flags)
{
+ const gchar *env;
+
g_return_val_if_fail (GST_IS_PLAY_SINK (playsink), FALSE);
+ env = g_getenv ("GST_PLAYBIN_FLAGS");
+ if (env) {
+ gulong newflags;
+ int olderrno;
+
+ olderrno = errno;
+ errno = 0;
+ newflags = strtoul (env, NULL, 0);
+ if (errno == 0 && newflags <= ((1 << 12) - 1))
+ flags = (GstPlayFlags) newflags;
+ errno = olderrno;
+ }
+
GST_OBJECT_LOCK (playsink);
playsink->flags = flags;
GST_OBJECT_UNLOCK (playsink);
More information about the pkg-gstreamer-maintainers
mailing list