wpesrc questions and issues

Frederic Turmel fturmel at netflix.com
Sat Jun 13 05:39:51 UTC 2020


Thanks Philippe, Sorry for the late follow up. I got side tracked. What's
the best way to build and play with wpe in an uninstalled env? I use
gst-build but when I try to buid wpewebkit it needs gstreamer. When I try
to build wpewebkit inside gst-build env it fails. (1.16 branch)
Example error:
/data/dev/gst-build/subprojects/gst-plugins-base/gst-libs/gst/audio/audio-info.h:139:1:
error: ‘GST_API_IMPORT’ does not name a type; did you mean
‘GST_URI_NO_PORT’?
 GST_AUDIO_API

What would be the best way? What I am missing?

Thanks
FredT

On Tue, Jun 2, 2020 at 4:09 AM Philippe Normand <phil at base-art.net> wrote:

> On Mon, 2020-06-01 at 08:29 -0700, Frederic Turmel wrote:
> > GPU:
> > 00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620
> > (rev 07)
> > Subsystem: Lenovo UHD Graphics 620
> > Kernel driver in use: i915
> > Kernel modules: i915
>
> Ok that configuration should work.
>
> > I built master and 1.16 of gst-build the same way. I did not disable
> > wayland on purpose. Can you confirm the libs required for wayland?
> >
>
> Here on Debian bullseye:
>
> nm -D /usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.1602.0 | grep
> gst_gl_display_wayland
> 00000000000440b0 T gst_gl_display_wayland_get_type
> 0000000000044110 T gst_gl_display_wayland_new
> 0000000000044220 T gst_gl_display_wayland_new_with_display
>
> I suspect you might have gst-build libraries installed system-wide?
> I would recommend to use an uninstalled setup with gst-build, using
> gst-env.py.
>
> > Pipeline: LIBGL_ALWAYS_SOFTWARE=true GST_DEBUG=4 gst-launch-1.0 -v
> > wpesrc location="https://www.google.com" do-timestamp=1 ! video/x-
> > raw,width=1280,height=720,format=BGRA ! videoconvert ! glimagesink
> > sync=false async=false
> > Got this error in master: 0:00:00.506811911  9624 0x559767b4d400
> > FIXME                    bin gstbin.c:4359:gst_bin_query: implement
> > duration caching in GstBin again
> > 0:00:00.507116824  9624 0x559767d72e30 WARN               structure
> > gststructure.c:2006:priv_gst_structure_append_to_gstring: No value
> > transform to serialize field 'params' of type 'GstAllocationParams'
> > 0:00:00.507245184  9624 0x559767d72e30 INFO               structure
> > gststructure.c:2777:gst_structure_get_valist: Expected field 'gl-
> > allocation-params' in structure: GstBufferPoolConfig,
> > caps=(GstCaps)"video/x-raw\,\ format\=\(string\)BGRA\,\
> > width\=\(int\)1280\,\ height\=\(int\)720\,\
> > framerate\=\(fraction\)30/1\,\ pixel-aspect-ratio\=\(fraction\)1/1",
> > size=(uint)3686400, min-buffers=(uint)1, max-buffers=(uint)0,
> > allocator=(GstAllocator)"NULL", params=(GstAllocationParams)NULL,
> > options=(string)< GstBufferPoolOptionGLSyncMeta,
> > GstBufferPoolOptionGLTextureTarget2D, GstBufferPoolOptionVideoMeta,
> > GstBufferPoolOptionVideoGLTextureUploadMeta >;
> > 0:00:00.516988248  9624 0x559767d72e30 INFO                 basesrc
> > gstbasesrc.c:2857:gst_base_src_loop:<wpesrc0> pausing after
> > gst_base_src_get_range() = error
> > 0:00:00.517029747  9624 0x559767d72e30 WARN                 basesrc
> > gstbasesrc.c:3075:gst_base_src_loop:<wpesrc0> error: Internal data
> > stream error.
> > 0:00:00.517042325  9624 0x559767d72e30 WARN                 basesrc
> > gstbasesrc.c:3075:gst_base_src_loop:<wpesrc0> error: streaming
> > stopped, reason error (-5)
> > 0:00:00.517066065  9624 0x559767d72e30 INFO        GST_ERROR_SYSTEM
> > gstelement.c:2222:gst_element_message_full_with_details:<wpesrc0>
> > posting message: Internal data stream error.
> >
>
> I'm not sure what's going on there. Is this with git master? Note that
> the support for software rendering in wpesrc is available only in git
> master and that requires a development version of WPEBackend-FDO
> (1.7.x).
>
> Also what's the point of forcing swrast in Mesa in that pipeline?
> Setting LIBGL_ALWAYS_SOFTWARE=true might have side-effects in gst-gl :)
>
> Can you try a simpler pipeline with a non-GL sink?
> LIBGL_ALWAYS_SOFTWARE=true gst-launch-1.0 wpesrc location="
> https://ddg.gg" ! videoconvert ! queue ! gtksink
>
> Philippe
>
> > Attached full logs.
> >
> > On Mon, Jun 1, 2020 at 1:35 AM Philippe Normand <phil at base-art.net>
> > wrote:
> > > Hi Frederic,
> > >
> > > On Sun, 2020-05-31 at 13:20 -0700, Frederic Turmel wrote:
> > > > Hi, I wanted to play with wpesrc element. Having issues and have
> > > some
> > > > questions. Build seems to be broken for 1.16.x
> > > >
> > > > Questions:
> > > > 1-Do you need wayland to use GL or we need to use weston. Any
> > > hint?
> > >
> > > Yes, in 1.16 Wayland is required.
> > > What's your GPU brand and driver being used?
> > >
> > > > 2-Hitting issue compiling for stable 1.16 branch. Master can
> > > compile
> > > > with the same env See below.
> > > > 3-When running with master and in software only mode, it works 1
> > > out
> > > > of 5. There seems to be a race condition.
> > > >
> > > > Got context from element 'wpesrc0': gst.gl.GLDisplay=context,
> > > > gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\
> > > gldisplayx11-0";
> > > > 0:00:00.433971380 23250 0x55db8aebacf0 WARN
> > >  basesrc
> > > > gstbasesrc.c:3075:gst_base_src_loop:<wpesrc0> error: Internal
> > > data
> > > > stream error.
> > > > 0:00:00.434279847 23250 0x55db8aebacf0 WARN
> > >  basesrc
> > > > gstbasesrc.c:3075:gst_base_src_loop:<wpesrc0> error: streaming
> > > > stopped, reason error (-5)
> > > > ERROR: from element /GstPipeline:pipeline0/GstWpeSrc:wpesrc0:
> > > > Internal data stream error
> > > > With more debugging seems to be related to:
> > > > GST_MESSAGE
> > > > gstelement.c:2191:gst_element_message_full_with_details:<wpesrc0>
> > > > start
> > > > 0:00:01.310356869 23620 0x561a8f22e4a0 INFO
> > > GST_ERROR_SYSTEM
> > > > gstelement.c:2222:gst_element_message_full_with_details:<wpesrc0>
> > > > posting message: Internal data stream error.
> > > > 0:00:01.310396995 23620 0x561a8f22e4a0 WARN
> > >  structure
> > > > gststructure.c:2006:priv_gst_structure_append_to_gstring: No
> > > value
> > > > transform to serialize field 'gerror' of type 'GError'
> > > >
> > >
> > > What's the pipeline for this error? ^^^
> > >
> > > > More details
> > > > Using ubuntu 18.04
> > > > I installed the latest stable dependency from webkit.org
> > > >
> > > > Using gst-build with 1.16: I'm unable to build. getting this
> > > error:
> > > > git/gst-build/build/../subprojects/gst-plugins-
> > > > bad/ext/wpe/gstwpesrc.cpp:502: undefined reference to
> > > > `gst_gl_display_wayland_get_type'
> > > >
> > >
> > > This symbol should be in libgst-gl (AFAIK). Did you disable
> > > Wayland?
> > >
> > > > Using gst-build master:
> > > > Failing when running gl:
> > > > Got context from element 'wpesrc0': gst.gl.GLDisplay=context,
> > > > gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\
> > > gldisplayx11-0";
> > > > ** (gst-launch-1.0:22754): CRITICAL **: 13:08:05.161:
> > > > gst_egl_image_new_wrapped: assertion 'context != NULL' failed
> > > >
> > >
> > > WPE currently doesn't work on X11 environments. There's some on-
> > > going
> > > work in that direction though.
> > >
> > > Philippe
> > >
> > > > I'm able to run software only mode:
> > > > LIBGL_ALWAYS_SOFTWARE=true GST_DEBUG=3,wpesrc=7,wpe=7 gst-launch-
> > > 1.0
> > > > -v wpesrc location="http://cnn.com" ! video/x-
> > > > raw,width=1280,height=720,format=BGRA,framerate=\(fraction\)30/1
> > > !
> > > > videoconvert ! queue ! ximagesink sync=false async=false
> > > >
> > > >
> > > > FULL ERROR BLOB for 1.16 branch:
> > > > FAILED: subprojects/gst-plugins-bad/ext/wpe/libgstwpe.so
> > > > c++  -o subprojects/gst-plugins-bad/ext/wpe/libgstwpe.so
> > > > 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@gstwpe at sha/WPEThrea
> > > dedV
> > > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > > gstwpe at sha/g
> > > > stwpesrc.cpp.o' -Wl,--as-needed -Wl,--no-undefined -shared -fPIC
> > > > -Wl,--start-group -Wl,-soname,libgstwpe.so subprojects/gst-
> > > plugins-
> > > > base/gst-libs/gst/video/libgstvideo-1.0.so.0.1602.0
> > > > subprojects/gstreamer/libs/gst/base/libgstbase-1.0.so.0.1602.0
> > > > subprojects/gstreamer/gst/libgstreamer-1.0.so.0.1602.0
> > > > subprojects/orc/orc/liborc-0.4.so.0.29.0 subprojects/gst-plugins-
> > > > base/gst-libs/gst/gl/libgstgl-1.0.so.0.1602.0 /usr/lib/x86_64-
> > > linux-
> > > > gnu/libEGL.so /usr/local/lib/libWPEWebKit-1.0.so /usr/lib/x86_64-
> > > > linux-gnu/libsoup-2.4.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so
> > > > /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-
> > > linux-
> > > > gnu/libglib-2.0.so /usr/local/lib/libwpe-1.0.so /usr/lib/x86_64-
> > > > linux-gnu/libxkbcommon.so /usr/local/lib/libWPEBackend-fdo-1.0.so
> > > > -Wl,--export-dynamic /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so
> > > > -pthread -lm /usr/lib/x86_64-linux-gnu/libX11.so /usr/lib/x86_64-
> > > > linux-gnu/libX11-xcb.so /usr/lib/x86_64-linux-gnu/libxcb.so -Wl,
> > > > --end-group '-Wl,-rpath,$ORIGIN/../../../gst-plugins-base/gst-
> > > >
> > > libs/gst/video:$ORIGIN/../../../gstreamer/libs/gst/base:$ORIGIN/../
> > > ..
> > > > /../gstreamer/gst:$ORIGIN/../../../orc/orc:$ORIGIN/../../../gst-
> > > > plugins-base/gst-libs/gst/gl:$ORIGIN/../../../gst-plugins-
> > > base/gst-
> > > > libs/gst/allocators' -Wl,-rpath-link,/home/fturmel/git/gst-
> > > > build/build/subprojects/gst-plugins-base/gst-libs/gst/video -Wl,-
> > > > rpath-link,/home/fturmel/git/gst-
> > > > build/build/subprojects/gstreamer/libs/gst/base -Wl,-rpath-
> > > > link,/home/fturmel/git/gst-build/build/subprojects/gstreamer/gst
> > > > -Wl,-rpath-link,/home/fturmel/git/gst-
> > > build/build/subprojects/orc/orc
> > > > -Wl,-rpath-link,/home/fturmel/git/gst-
> > > build/build/subprojects/gst-
> > > > plugins-base/gst-libs/gst/gl -Wl,-rpath-
> > > link,/home/fturmel/git/gst-
> > > > build/build/subprojects/gst-plugins-base/gst-libs/gst/allocators
> > > > subprojects/gst-plugins-bad/ext/wpe/9fb9286@@gstwpe at sha/gstwpesrc
> > > .cpp
> > > > .o: In function `gst_wpe_src_change_state(_GstElement*,
> > > > GstStateChange)':
> > > > /home/fturmel/git/gst-build/build/../subprojects/gst-plugins-
> > > > bad/ext/wpe/gstwpesrc.cpp:502: undefined reference to
> > > > `gst_gl_display_wayland_get_type'
> > > > collect2: error: ld returned 1 exit status
> > > > _______________________________________________
> > > > gstreamer-devel mailing list
> > > > gstreamer-devel at lists.freedesktop.org
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > gstreamer-devel at lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20200612/525ecf77/attachment-0001.htm>


More information about the gstreamer-devel mailing list