2

Im building a python based video player but ran in to a issue with Gstreamer. I get a bunch of error messages when trying to play a video on a raspberry pi 3 with the 7 inch touchscreen. Im running in a docker environment on the platform Balena.io

startx /usr/bin/gst-launch-1.0 -ve playbin uri=file:///usr/src/app/big_buck_bunny_720p_stereo.avi

[Logs]    [2019-7-18 6:54:14 PM] [main] Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0";
[Logs]    [2019-7-18 6:54:14 PM] [main] error: XDG_RUNTIME_DIR not set in the environment.
[Logs]    [2019-7-18 6:54:14 PM] [main] WARNING: from element /GstWaylandSink:waylandsink0: Could not initialise Wayland output
[Logs]    [2019-7-18 6:54:14 PM] [main] Additional debug info:
[Logs]    [2019-7-18 6:54:14 PM] [main] gstwaylandsink.c(289): gst_wayland_sink_find_display (): /GstWaylandSink:waylandsink0:
[Logs]    [2019-7-18 6:54:14 PM] [main] Redistribute latency...
[Logs]    [2019-7-18 6:54:14 PM] [main] Failed to create GstWlDisplay: 'Failed to connect to the wayland display '(default)''

In my dockerfile i install the following:

RUN apt-get update && apt-get install --no-install-recommends \
xserver-xorg \
xinit \
xterm \
xfonts-utils \
xfonts-traditional \
python3-gi \
python3-gst-1.0 \
python3-gi-cairo \
gir1.2-gtk-3.0 \
gstreamer1.0-libav \
libgstreamer1.0-0-dbg \
gstreamer1.0-tools \
libgstreamer-plugins-base1.0-0 \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-ugly \
gstreamer1.0-plugins-bad-dbg \
gstreamer1.0-omx \
gstreamer1.0-alsa

As i can understand it, Gstreamer uses Wayland instead of Xserver, but i cant figure out how/what i should set XDG_RUNTIME_DIR to or if there is something else that needs to be exported in order to get Wayland to recognize the display?

Sultanen
  • 3,084
  • 5
  • 25
  • 46

0 Answers0