Gstreamer1.14 glupload

Philippe Normand phil at base-art.net
Fri Feb 8 10:02:41 UTC 2019


Hi Mike,

Thanks for your interest in WPE ;)

On Thu, 2019-02-07 at 19:49 -0700, mike at baseforsale.com wrote:
> Hi,
> 
> I'm attempting to get WPE working on an iMX6 and I've come across an 
> issue with gstreamer-gl.  I think it is an issue with the meta-
> format 
> being incorrectly reported after it leaves glupload. Examining the
> dot 
> files between the two streams below, the only difference is that the 
> format reported going into the colorConvertElement, for the pipeline 
> that plays, is I420.  On the pipeline that does not play the format 
> being reported is RGBA.  I'm assuming that glupload should just
> transfer 
> the buffer but maintain the format and then glcolorconvert would 
> actually convert it.
> 
> 
> This pipeline does not work and is representative of what WPE sets
> up.
> gst-launch-1.0 uridecodebin 
> uri=
> https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm
>  
> ! glupload ! glcolorconvert ! 'video/x-raw(memory:GLMemory), 
> format=RGBA' ! glimagesink
> 

Is there a chance you could try a GStreamer 1.15.x development
snapshot? I believe the issue you're experiencing might be fixed with
the patches from https://bugzilla.gnome.org/show_bug.cgi?id=783521

Philippe

> Got context from element 'sink': gst.gl.GLDisplay=context, 
> gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayVivFB\)\ 
> gldisplayvivfb0";ch-1.0 uridecodebin 
> uri=
> https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.w0:00:00.798403126
>  
>   2956  0x178f0c0 WARN               structure 
> gststructure.c:1832:priv_gst_structure_append_to_gstring: No value 
> transform to serialize field 'session' of type 'SoupSession' 
> GST_DEBUgst-launch-1.0 uridecodebin uri=https:Got context from
> element 
> 'source': gst.soup.session=context, session=(SoupSession)NULL, 
> force=(boolean)false;
> 0:00:01.612460820  2956 0x69172780 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()ad !
> [INFO]ntbitstreamMode 1, chromaInterleave 0, mapType 0, 
> tiled2LinearEnable 0ssion)NULL, ot at cbt7g-imx6:/Apps# 
> GST_DEgst-launch-1.0 uridecodebin 
> uri=
> https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm
>  
> ! gl0:00:01.625965600  2956 0x68e10a30 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()  ot at cbt7g-imx6:/Apps# 
> GST_Dgst-launch-1.0 uridecodebin uri=https://www.f0:00:01.626970658  
> 2956 0x68e10a30 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> 0:00:01.718965973  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB ! glupload ! glc
> 0:00:01.726362400  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using 
> RGBww.freedesktop.org/software/gstreamer-
> sdk/data/media/sintel_trailer-480p.webm 
> ! glupload 0:00:01.726457405  2956 0x68e10a30 WARN              
> video-info video-info.c:463:gst_video_info_from_caps: invalid matrix
> 4 
> for RGB format, using RGB              ot at cbt7g-imx6:/Apps# 
> GSgst-launch-1.0 uridecodebin uri=
> https://www.freedesk0:00:01.728128169  
> 2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:01.728205506  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGBload ! glcolo
> 0:00:01.728464521  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:01.728970884  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:01.729322571  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:01.730005944  2956 0x68e10a30 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:01.775663248  2956 0x68e10a30 ERROR                default 
> video-frame.c:175:gst_video_frame_map_id: invalid buffer size 622080
> < 
> 1639680
> 0:00:01.775980933  2956 0x68e10a30 ERROR            glimagesink 
> gstglimagesink.c:1630:prepare_next_buffer: Failed to map video frame.
> 0:00:01.776059937  2956 0x68e10a30 WARN             glimagesink 
> gstglimagesink.c:1740:gst_glimage_sink_prepare:<sink> error: Failed
> to 
> convert multiview video buffer
> ERROR: from element 
> /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSi
> nk:sink: 
> Failed to convert multiview video buffer
> Additional debug info:
> ../../../gst-plugins-base-1.14.4/ext/gl/gstglimagesink.c(1740): 
> gst_glimage_sink_prepare (): 
> /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSi
> nk:sink
> ERROR: pipeline doesn't want to preroll.
> Setting pipeline to NULL ...
> 0:00:01.795633068  2956 0x68e10a30 ERROR                default 
> video-frame.c:175:gst_video_frame_map_id: invalid buffer size 622080
> < 
> 1639680
> 0:00:01.795889083  2956 0x68e10a30 ERROR            glimagesink 
> gstglimagesink.c:1630:prepare_next_buffer: Failed to map video frame.
> 0:00:01.796545454  2956 0x68e10a30 WARN             glimagesink 
> gstglimagesink.c:1740:gst_glimage_sink_prepare:<sink> error: Failed
> to 
> convert multiview video buffer
> 
> If place a capsfilter after glupload as follows this plays.  Although
> it 
> is very choppy.
> 
> gst-launch-1.0 uridecodebin 
> uri=
> https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm
>  
> ! glupload ! 'video/x-raw(memory:GLMemory), format=I420' ! 
> glcolorconvert ! 'video/x-raw(memory:GLMemory), format=RGBA' ! 
> glimagesink
> 
> Pipeline is PREROLLING ...
> Got context from element 'sink': gst.gl.GLDisplay=context, 
> gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayVivFB\)\
> gldisplayvivfb0";
> 0:00:00.784881429  3038  0x203d0e0 WARN               structure 
> gststructure.c:1832:priv_gst_structure_append_to_gstring: No value 
> transform to serialize field 'session' of type 'SoupSession'
> Got context from element 'source': gst.soup.session=context, 
> session=(SoupSession)NULL, force=(boolean)false;
> 0:00:01.664324875  3038 0x69171b80 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> [INFO]	bitstreamMode 1, chromaInterleave 0, mapType 0, 
> tiled2LinearEnable 0
> 0:00:01.676512565  3038 0x68e0fc30 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> 0:00:01.678046318  3038 0x68e0fc30 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> Pipeline is PREROLLED ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> 
> 
> Playing through cog via cog -P fdo 
> https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm
> 
> 0:00:02.103917221  2985  0x16eb060 FIXME                default 
> gstutils.c:3981:gst_pad_create_stream_id_internal:<appsrc0:src>
> Creating 
> random stream-id, consider implementing a deterministic way of
> creating 
> a stream-id
> 0:00:02.220573905  2985  0x15b1200 FIXME                    bin 
> gstbin.c:4338:gst_bin_query: implement duration caching in GstBin
> again
> 0:00:02.548372019  2985  0x16f5fb0 WARN                    alsa 
> conf.c:5000:snd_config_expand: alsalib error: Unknown parameters
> {AES0 
> 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
> 0:00:02.548545695  2985  0x16f5fb0 WARN                    alsa 
> pcm.c:2501:snd_pcm_open_noupdate: alsalib error: Unknown PCM 
> default:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
> 0:00:02.752764062  2985 0x6fb0abb0 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> [INFO]	bitstreamMode 1, chromaInterleave 0, mapType 0, 
> tiled2LinearEnable 0
> 0:00:03.192916613  2985  0x183f780 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> 0:00:03.217193003  2985  0x183f780 FIXME           videodecoder 
> gstvideodecoder.c:933:gst_video_decoder_drain_out:<imxvpudecoder0> 
> Sub-class should implement drain()
> 0:00:04.002508326  2985 0x6e70e950 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:04.004410435  2985 0x6e70e950 WARN                glwindow 
> gstglwindow.c:293:gst_gl_window_new: Could not create window. user 
> specified (null), creating dummy window
> 0:00:04.027153405  2mxc_vpu 2040000.vpu_fsl: VPU interrupt received.
> 985  0x15b1200 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:04.028060123  2985 0x6e70e950 WARN              video-info 
> video-info.c:463:gst_video_info_from_caps: invalid matrix 4 for RGB 
> format, using RGB
> 0:00:04.037512332  2985 0x6e70e950 ERROR                default 
> video-frame.c:175:gst_video_frame_map_id: invalid buffer size 622080
> < 
> 1639680
> 
> 
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list