[Bug 766954] General stream error or black screen on Wayland

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Jun 3 07:56:30 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=766954

--- Comment #14 from Víctor Manuel Jáquez Leal <vjaquez at igalia.com> ---
(In reply to Egor Zaharov from comment #10)
> $ mpv --hwdec=vaapi Ad\ that\ make\ me\ mad.mp4
> Playing: Ad that make me mad.mp4
>  (+) Video --vid=1 (*) (h264)
>  (+) Audio --aid=1 --alang=und (*) (aac)
> libva info: VA-API version 0.39.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/lib64/dri/r600_drv_video.so <---
> libva info: Found init function __vaDriverInit_0_39
> libva info: va_openDriver() returns 0

Please note that in this case, libva loads the libva-xvba-driver. And it works
in X.

(In reply to Egor Zaharov from comment #12)
> $ mpv --hwdec=vaapi Ad\ that\ make\ me\ mad.mp4
> Playing: Ad that make me mad.mp4
>  (+) Video --vid=1 (*) (h264)
>  (+) Audio --aid=1 --alang=und (*) (aac)
> libva info: VA-API version 0.39.0
> libva info: va_getDriverName() returns 0
> libva info: Trying to open /usr/lib64/dri/gallium_drv_video.so <--
> libva info: Found init function __vaDriverInit_0_39
> libva info: va_openDriver() returns 0

And when you switch to Wayland, libva loads the libva-mesa-driver. Why?

Are you exporting different LIBVA_DRIVER_NAME variables per session?

> So, VAAPI does not work at all in Wayland. 

Just to be exact (or nitpicking), libva supports Wayland, but the available
drivers for your hardware do not.

And I forgot that vdpau doesn't work with Wayland, at least in downstream
(there are patches in upstream for the library, but I don't know the state of
drivers).

> But gstreamer1(or at least totem) does not want to fall back to other ways
> of playing this video so easily. And then vaapisink fails to play this
> video, this is fatal.
> 
> I don't know is this behaviour is bad, but at least it's strange. So, if
> VAAPI does not work at the moment, you can't play videos at all. Or need to
> know how these debug ENV variables work, to force gstreamer to use working
> sink.

Yes, it is bad. That is why, in master, we already landed a patch which bails
out the gstreamer-vaapi elements when the driver is not in a "white-list", and
only the intel and gallium drivers are in that list (bug 764673).

> 
> But still, gst-play-1.0 can't do this in Wayland.
> 
> $ gst-play-1.0 Ad\ that\ make\ me\ mad.mp4  --videosink=waylandsink
> Press 'k' to see a list of keyboard shortcuts.
> Now playing /home/nexfwall/Downloads/Ad that make me mad.mp4
> WARNING Could not initialise Wayland output
> WARNING debug information: gstwaylandsink.c(289):
> gst_wayland_sink_find_display (): /GstWaylandSink:waylandsink0:
> Failed to create GstWlDisplay: 'Could not bind to wl_scaler. Either it is
> not implemented in the compositor, or the implemented version doesn't match'

mmmh... waylandsink needs the scaler extension and your setup doesn't provide
it. I wonder why. But that is another issue.

(In reply to Egor Zaharov from comment #13)
> I'm openning a new bug at Freedesktop. Maybe someone there can help with my
> problem, or just implement needed functionality.

Good.

> Because, personally, only not working VAAPI holds me back from using Wayland
> every day.

You can use the software decoders. But yeah, it would be much better if the
drivers get in shape.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list