wpesrc questions and issues

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

wpesrc questions and issues

Frederic Turmel
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?
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'

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'

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

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@sha/WPEThreadedView.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@gstwpe@sha/gstwpesrc.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@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
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Philippe Normand
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@sha/WPEThreadedV
> iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@gstwpe@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@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
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Frederic Turmel
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
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?

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.

Attached full logs.

On Mon, Jun 1, 2020 at 1:35 AM Philippe Normand <[hidden email]> 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@sha/WPEThreadedV
> iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@gstwpe@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@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
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Philippe Normand
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 <[hidden email]>
> 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@sha/WPEThrea
> > dedV
> > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > gstwpe@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@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
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Frederic Turmel
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 <[hidden email]> 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 <[hidden email]>
> 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@sha/WPEThrea
> > dedV
> > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > gstwpe@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@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
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Philippe Normand
On Fri, 2020-06-12 at 22:39 -0700, Frederic Turmel wrote:
> 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

Can you make sure you're not mixing manually-installed GStreamer
headers?

Philippe

>
> What would be the best way? What I am missing?
>
> Thanks
> FredT
>
> On Tue, Jun 2, 2020 at 4:09 AM Philippe Normand <[hidden email]>
> 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 <
> > [hidden email]>
> > > 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@sha/WPET
> > hrea
> > > > dedV
> > > > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > > > gstwpe@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@sha/gstwp
> > esrc
> > > > .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
> > > > > [hidden email]
> > > > >
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > _______________________________________________
> > > > gstreamer-devel mailing list
> > > > [hidden email]
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > >
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Frederic Turmel
I think I'm in a better spot now. wpe is working with wayland.
Question regarding videomixer:
When running a single pipeline example "gst-launch-1.0 -v wpesrc location="https://gstreamer.freedesktop.org" ! queue ! glimagesink" It works really well and mouse control on the webpage works. 
When going through glmixer with a another background, the webpage control/button via mouse are not working anymore. Is this expected?
Example: gst-launch-1.0  glvideomixer name=m sink_0::zorder=1 ! glimagesink sync=false async=false wpesrc location="http://www.google.com" draw-background=1 ! video/x-raw\(memory:GLMemory\),height=720,width=1280 ! m.sink_0

Thanks
FredT



Thanks
FredT

On Sun, Jun 14, 2020 at 7:02 AM Philippe Normand <[hidden email]> wrote:
On Fri, 2020-06-12 at 22:39 -0700, Frederic Turmel wrote:
> 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

Can you make sure you're not mixing manually-installed GStreamer
headers?

Philippe
>
> What would be the best way? What I am missing?
>
> Thanks
> FredT
>
> On Tue, Jun 2, 2020 at 4:09 AM Philippe Normand <[hidden email]>
> 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 <
> > [hidden email]>
> > > 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@sha/WPET
> > hrea
> > > > dedV
> > > > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > > > gstwpe@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@sha/gstwp
> > esrc
> > > > .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
> > > > > [hidden email]
> > > > >
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > _______________________________________________
> > > > gstreamer-devel mailing list
> > > > [hidden email]
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > >
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Philippe Normand
On Mon, 2020-06-15 at 14:04 -0700, Frederic Turmel wrote:
> I think I'm in a better spot now. wpe is working with wayland.

\o/

> Question regarding videomixer:
> When running a single pipeline example "gst-launch-1.0 -v wpesrc
> location="https://gstreamer.freedesktop.org" ! queue ! glimagesink"
> It works really well and mouse control on the webpage works.
> When going through glmixer with a another background, the webpage
> control/button via mouse are not working anymore. Is this expected?

No, I would say this is a bug. Seems like the mixer doesn't relay
Navigation events coming from the sink towards the source element. Can
you file a ticket for gst-plugins-base in gitlab please?

Philippe

> Example: gst-launch-1.0  glvideomixer name=m sink_0::zorder=1 !
> glimagesink sync=false async=false wpesrc location="
> http://www.google.com" draw-background=1 ! video/x-
> raw\(memory:GLMemory\),height=720,width=1280 ! m.sink_0
>
> Thanks
> FredT
>
>
>
> Thanks
> FredT
>
> On Sun, Jun 14, 2020 at 7:02 AM Philippe Normand <[hidden email]>
> wrote:
> > On Fri, 2020-06-12 at 22:39 -0700, Frederic Turmel wrote:
> > > 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
> >
> > Can you make sure you're not mixing manually-installed GStreamer
> > headers?
> >
> > Philippe
> > >
> > > What would be the best way? What I am missing?
> > >
> > > Thanks
> > > FredT
> > >
> > > On Tue, Jun 2, 2020 at 4:09 AM Philippe Normand <
> > [hidden email]>
> > > 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 <
> > > > [hidden email]>
> > > > > 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@sha/
> > WPET
> > > > hrea
> > > > > > dedV
> > > > > > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > > > > > gstwpe@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@sha/g
> > stwp
> > > > esrc
> > > > > > .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
> > > > > > > [hidden email]
> > > > > > >
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > > > _______________________________________________
> > > > > > gstreamer-devel mailing list
> > > > > > [hidden email]
> > > > > >
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > >
> > > > > _______________________________________________
> > > > > gstreamer-devel mailing list
> > > > > [hidden email]
> > > > >
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > _______________________________________________
> > > > gstreamer-devel mailing list
> > > > [hidden email]
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > >
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: wpesrc questions and issues

Frederic Turmel
In reply to this post by Frederic Turmel

On Mon, Jun 15, 2020 at 2:04 PM Frederic Turmel <[hidden email]> wrote:
I think I'm in a better spot now. wpe is working with wayland.
Question regarding videomixer:
When running a single pipeline example "gst-launch-1.0 -v wpesrc location="https://gstreamer.freedesktop.org" ! queue ! glimagesink" It works really well and mouse control on the webpage works. 
When going through glmixer with a another background, the webpage control/button via mouse are not working anymore. Is this expected?
Example: gst-launch-1.0  glvideomixer name=m sink_0::zorder=1 ! glimagesink sync=false async=false wpesrc location="http://www.google.com" draw-background=1 ! video/x-raw\(memory:GLMemory\),height=720,width=1280 ! m.sink_0

Thanks
FredT



Thanks
FredT

On Sun, Jun 14, 2020 at 7:02 AM Philippe Normand <[hidden email]> wrote:
On Fri, 2020-06-12 at 22:39 -0700, Frederic Turmel wrote:
> 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

Can you make sure you're not mixing manually-installed GStreamer
headers?

Philippe
>
> What would be the best way? What I am missing?
>
> Thanks
> FredT
>
> On Tue, Jun 2, 2020 at 4:09 AM Philippe Normand <[hidden email]>
> 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 <
> > [hidden email]>
> > > 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@sha/WPET
> > hrea
> > > > dedV
> > > > > iew.cpp.o' 'subprojects/gst-plugins-bad/ext/wpe/9fb9286@@
> > > > gstwpe@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@sha/gstwp
> > esrc
> > > > .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
> > > > > [hidden email]
> > > > >
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > > > _______________________________________________
> > > > gstreamer-devel mailing list
> > > > [hidden email]
> > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > >
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > [hidden email]
> > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > [hidden email]
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel