Skip to content
Snippets Groups Projects

pluginutil: Remove Mesa from drivers white list

Merged Philippe Normand requested to merge (removed):no-mesa-gallium into master

The Mesa Gallium driver is poorly tested currently, leading to bad user experience for AMD users. The driver can be added back to the white list at runtime using the GST_VAAPI_ALL_DRIVERS environment variable.

Edited by Philippe Normand

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Philippe Normand changed the description

    changed the description

  • Philippe Normand added 2 commits

    added 2 commits

    • c0485943 - 1 commit from branch gstreamer:master
    • 6e7a64f4 - pluginutil: Remove Mesa from drivers white list

    Compare with previous version

  • Hi, thx for cc me. I feel it would be better to improve the filtering by making the black listing and white listing more specific (mesa version ? card type ? kernel ?) In Chromium it is actually the opposite, people are reporting hw decoding to be stable using vaapi. In electron and qtwebengine, vaapi is enabled by default. What are the failures ? Thx

  • Author Maintainer

    My vendor string: Mesa Gallium driver 18.3.4 for Radeon RX 560 Series (POLARIS11, DRM 3.27.0, 4.19.0-4-amd64, LLVM 7.0.1) Here's one crash :)

    (gdb) bt
    #0  0x00007fd61b39fa3d in __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:240
    #1  0x00007fd5be357742 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
    #2  0x00007fd5be35786c in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
    #3  0x00007fd5beaab851 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
    #4  0x00007fd494f85ef0 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
    #5  0x00007fd53656e0ec in gst_vaapi_surface_put_image (surface=0x7fd6000064a0, image=image@entry=0x7fd45c006050) at ../subprojects/gstreamer-vaapi/gst-libs/gst/vaapi/gstvaapisurface.c:790
    #6  0x00007fd536532aca in extract_allowed_surface_formats
        (img_formats=0x7fd608071d30, img_formats=0x7fd608071d30, direction=GST_PAD_SINK, specified_format=GST_VIDEO_FORMAT_UNKNOWN, display=0x5556e8337df0 [GstVaapiDisplayEGL])
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1307
    #7  0x00007fd536532aca in ensure_allowed_raw_caps (plugin=plugin@entry=0x7fd45c05f520, format=format@entry=GST_VIDEO_FORMAT_UNKNOWN, direction=direction@entry=GST_PAD_SINK)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1346
    #8  0x00007fd53653439f in ensure_allowed_raw_caps (direction=GST_PAD_SINK, format=GST_VIDEO_FORMAT_UNKNOWN, plugin=plugin@entry=0x7fd45c05f520)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1378
    #9  0x00007fd53653439f in gst_vaapi_plugin_base_get_allowed_sinkpad_raw_caps (plugin=plugin@entry=0x7fd45c05f520) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1378
    #10 0x00007fd5365394da in ensure_allowed_sinkpad_caps (postproc=0x7fd45c05f520) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1099
    #11 0x00007fd5365394da in gst_vaapipostproc_transform_caps_impl (direction=<optimized out>, trans=0x7fd45c05f520 [GstVaapiPostproc]) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1193
    #12 0x00007fd5365394da in gst_vaapipostproc_transform_caps (trans=0x7fd45c05f520 [GstVaapiPostproc], direction=<optimized out>, caps=0x7fd4a4003540, filter=0x7fd45c003540)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1216
    #13 0x00007fd61d1025a1 in gst_base_transform_transform_caps (trans=trans@entry=0x7fd45c05f520 [GstVaapiPostproc], direction=GST_PAD_SRC, caps=caps@entry=0x7fd4a4003540, filter=filter@entry=0x7fd45c003540)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:474
    #14 0x00007fd61d1060dc in gst_base_transform_query_caps (filter=0x7fd45c003540, pad=0x7fd45c062040 [GstPad], trans=0x7fd45c05f520 [GstVaapiPostproc])
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:695
    #15 0x00007fd61d1060dc in gst_base_transform_default_query (trans=0x7fd45c05f520 [GstVaapiPostproc], direction=<optimized out>, query=0x7fd45c0035e0)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1550
    #16 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd45c062040 [GstPad], query=query@entry=0x7fd45c0035e0) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #17 0x00007fd61d007c8b in gst_pad_peer_query (pad=pad@entry=0x7fd45c00dd30 [GstPad], query=query@entry=0x7fd45c0035e0) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #18 0x00007fd61d0439f4 in gst_pad_peer_query_caps (pad=pad@entry=0x7fd45c00dd30 [GstPad], filter=filter@entry=0x7fd45c003540) at ../subprojects/gstreamer/gst/gstutils.c:3107
    #19 0x00007fd61d105efe in gst_base_transform_query_caps (filter=0x7fd45c0034f0, pad=0x7fd45c00dae0 [GstPad], trans=0x7fd45c01c0f0 [GstCapsFilter]) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:678
    #20 0x00007fd61d105efe in gst_base_transform_default_query (trans=0x7fd45c01c0f0 [GstCapsFilter], direction=<optimized out>, query=0x7fd45c003450) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1550
    #21 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd45c00dae0 [GstPad], query=query@entry=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #22 0x00007fd61d007c8b in gst_pad_peer_query (pad=pad@entry=0x7fd45c00d890 [GstPad], query=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #23 0x00007fd61d03e1a8 in query_caps_func (pad=pad@entry=0x7fd45c00d890 [GstPad], data=data@entry=0x7fd4668fc470) at ../subprojects/gstreamer/gst/gstutils.c:2765
    #24 0x00007fd61d0060fe in gst_pad_forward (pad=pad@entry=0x7fd45c00d640 [GstPad], forward=forward@entry=0x7fd61d03e190 <query_caps_func>, user_data=user_data@entry=0x7fd4668fc470)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #25 0x00007fd61d040c5a in gst_pad_proxy_query_caps (pad=pad@entry=0x7fd45c00d640 [GstPad], query=query@entry=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstutils.c:2815
    #26 0x00007fd61d0062e4 in gst_pad_query_caps_default (query=0x7fd45c003450, pad=0x7fd45c00d640 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:3187
    #27 0x00007fd61d0062e4 in gst_pad_query_default (pad=0x7fd45c00d640 [GstPad], parent=<optimized out>, query=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstpad.c:3415
    #28 0x00007fd574147bb5 in gst_queue_handle_sink_query (pad=<optimized out>, parent=0x7fd4ac0cd2e0 [GstQueue], query=0x7fd45c003450) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1079
    #29 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd45c00d640 [GstPad], query=query@entry=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #30 0x00007fd61d007c8b in gst_pad_peer_query (pad=pad@entry=0x7fd45c00d3f0 [GstPad], query=query@entry=0x7fd45c003450) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #31 0x00007fd61d0439f4 in gst_pad_peer_query_caps (pad=pad@entry=0x7fd45c00d3f0 [GstPad], filter=filter@entry=0x7fd45c0034f0) at ../subprojects/gstreamer/gst/gstutils.c:3107
    #32 0x00007fd61ce2d781 in __gst_video_element_proxy_getcaps
        (element=element@entry=0x7fd45c05b1a0 [GstVaapiDecode], sinkpad=<optimized out>, srcpad=0x7fd45c00d3f0 [GstPad], initial_caps=<optimized out>, filter=filter@entry=0x7fd45c0034a0)
        at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoutilsprivate.c:108
    #33 0x00007fd61ce1e1a9 in gst_video_decoder_proxy_getcaps (decoder=decoder@entry=0x7fd45c05b1a0 [GstVaapiDecode], caps=<optimized out>, filter=filter@entry=0x7fd45c0034a0)
        at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1730
    #34 0x00007fd53652f962 in gst_vaapidecode_sink_getcaps (vdec=<optimized out>, filter=<optimized out>) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapidecode.c:1341
    #35 0x00007fd61ce1e26b in gst_video_decoder_sink_getcaps (filter=<optimized out>, decoder=0x7fd45c05b1a0 [GstVaapiDecode]) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1744
    #36 0x00007fd61ce1e26b in gst_video_decoder_sink_query_default (decoder=0x7fd45c05b1a0 [GstVaapiDecode], query=0x7fd608075630) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1793
    #37 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd45c00d1a0 [GstPad], query=query@entry=0x7fd608075630) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #38 0x00007fd61d041414 in gst_pad_query_caps (pad=0x7fd45c00d1a0 [GstPad], filter=0x7fd45c0034a0) at ../subprojects/gstreamer/gst/gstutils.c:3061
    #39 0x00007fd61ce1e4b9 in gst_video_decoder_sink_query_default (decoder=0x7fd45c05b1a0 [GstVaapiDecode], query=0x7fd45c003720) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1817
    --Type <RET> for more, q to quit, c to continue without paging--
    #40 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd45c00d1a0 [GstPad], query=query@entry=0x7fd45c003720) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #41 0x00007fd61d007c8b in gst_pad_peer_query (pad=pad@entry=0x7fd45c060050 [GstProxyPad], query=0x7fd45c003720) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #42 0x00007fd61d03e170 in query_accept_caps_func (pad=pad@entry=0x7fd45c060050 [GstProxyPad], data=data@entry=0x7fd4668fcb50) at ../subprojects/gstreamer/gst/gstutils.c:2705
    #43 0x00007fd61d0060fe in gst_pad_forward (pad=pad@entry=0x7fd474026bc0 [GstGhostPad], forward=forward@entry=0x7fd61d03e160 <query_accept_caps_func>, user_data=user_data@entry=0x7fd4668fcb50)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #44 0x00007fd61d040ace in gst_pad_proxy_query_accept_caps (pad=pad@entry=0x7fd474026bc0 [GstGhostPad], query=query@entry=0x7fd45c003720) at ../subprojects/gstreamer/gst/gstutils.c:2745
    #45 0x00007fd61d0065e5 in gst_pad_query_accept_caps_default (query=0x7fd45c003720, pad=0x7fd474026bc0 [GstGhostPad]) at ../subprojects/gstreamer/gst/gstpad.c:3134
    #46 0x00007fd61d0065e5 in gst_pad_query_default (pad=0x7fd474026bc0 [GstGhostPad], parent=<optimized out>, query=0x7fd45c003720) at ../subprojects/gstreamer/gst/gstpad.c:3411
    #47 0x00007fd61d007530 in gst_pad_query (pad=pad@entry=0x7fd474026bc0 [GstGhostPad], query=query@entry=0x7fd45c003720) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #48 0x00007fd61d043bac in gst_pad_query_accept_caps (pad=pad@entry=0x7fd474026bc0 [GstGhostPad], caps=<optimized out>) at ../subprojects/gstreamer/gst/gstutils.c:3144
    #49 0x00007fd61d0000fa in pre_eventfunc_check (event=0x7fd484007c10, pad=0x7fd474026bc0 [GstGhostPad]) at ../subprojects/gstreamer/gst/gstpad.c:5611
    #50 0x00007fd61d0000fa in gst_pad_send_event_unchecked (pad=pad@entry=0x7fd474026bc0 [GstGhostPad], event=event@entry=0x7fd484007c10, type=<optimized out>) at ../subprojects/gstreamer/gst/gstpad.c:5756
    #51 0x00007fd61d009d29 in gst_pad_send_event (pad=0x7fd474026bc0 [GstGhostPad], event=0x7fd484007c10) at ../subprojects/gstreamer/gst/gstpad.c:5935
    #52 0x00007fd57417ecc8 in send_sticky_event (pad=<optimized out>, event=<optimized out>, user_data=0x7fd4668fcf20) at ../subprojects/gstreamer/gst/gstevent.h:438
    #53 0x00007fd61cffebd9 in foreach_dispatch_function (user_data=0x7fd4668fce50, ev=0x7fd4668fce00, pad=0x7fd45c00cf50 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:6034
    #54 0x00007fd61cffebd9 in foreach_dispatch_function (pad=pad@entry=0x7fd45c00cf50 [GstPad], ev=ev@entry=0x7fd4668fce00, user_data=user_data@entry=0x7fd4668fce50) at ../subprojects/gstreamer/gst/gstpad.c:6026
    #55 0x00007fd61cffe448 in events_foreach (pad=pad@entry=0x7fd45c00cf50 [GstPad], func=func@entry=0x7fd61cffeba0 <foreach_dispatch_function>, user_data=user_data@entry=0x7fd4668fce50)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #56 0x00007fd61d00a933 in gst_pad_sticky_events_foreach (pad=pad@entry=0x7fd45c00cf50 [GstPad], foreach_func=foreach_func@entry=0x7fd57417ecb0 <send_sticky_event>, user_data=user_data@entry=0x7fd4668fcf20)
        at ../subprojects/gstreamer/gst/gstpad.c:6065
    #57 0x00007fd574189d9b in send_sticky_events (dbin=0x5556e9422a90 [GstDecodeBin], pad=0x7fd45c00cf50 [GstPad]) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1994
    #58 0x00007fd574189d9b in connect_pad
        (dbin=dbin@entry=0x5556e9422a90 [GstDecodeBin], src=src@entry=0x5556e9131b00 [GstCapsFilter], dpad=dpad@entry=0x7fd480012af0 [GstDecodePad], pad=pad@entry=0x7fd45c00cf50 [GstPad], caps=caps@entry=0x7fd45c0034a0, factories=<optimized out>, chain=<optimized out>, deadend_details=0x7fd4668fcfe8) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2516
    #59 0x00007fd574187d51 in analyze_new_pad
        (dbin=dbin@entry=0x5556e9422a90 [GstDecodeBin], src=src@entry=0x5556e9131b00 [GstCapsFilter], pad=pad@entry=0x7fd45c00cf50 [GstPad], caps=caps@entry=0x7fd45c0034a0, chain=<optimized out>, 
        chain@entry=0x7fd4a404bea0, new_chain=new_chain@entry=0x7fd4668fd038) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1808
    #60 0x00007fd57418869a in pad_added_cb (element=element@entry=0x5556e9131b00 [GstCapsFilter], pad=pad@entry=0x7fd45c00cf50 [GstPad], chain=chain@entry=0x7fd4a404bea0)
        at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2949
    #61 0x00007fd57418890f in caps_notify_cb (pad=0x7fd45c00cf50 [GstPad], unused=<optimized out>, chain=0x7fd4a404bea0) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3139
    #65 0x00007fd61c3c591f in <emit signal notify:caps on instance 0x7fd45c00cf50 [GstPad]> (instance=instance@entry=0x7fd45c00cf50, signal_id=<optimized out>, detail=<optimized out>)
        at ../../../gobject/gsignal.c:3447
        #62 0x00007fd61c3a8c7d in g_closure_invoke (closure=0x7fd45c0136d0, return_value=0x0, n_param_values=2, param_values=0x7fd4668fd280, invocation_hint=0x7fd4668fd200) at ../../../gobject/gclosure.c:810
        #63 0x00007fd61c3bc345 in signal_emit_unlocked_R
        (node=node@entry=0x5556e82be600, detail=detail@entry=1502, instance=instance@entry=0x7fd45c00cf50, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fd4668fd280)
        at ../../../gobject/gsignal.c:3635
        #64 0x00007fd61c3c525e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fd4668fd450) at ../../../gobject/gsignal.c:3391
    #66 0x00007fd61c3ad354 in g_object_dispatch_properties_changed (object=0x7fd45c00cf50 [GstPad], n_pspecs=<optimized out>, pspecs=<optimized out>) at ../../../gobject/gobject.c:1088
    #67 0x00007fd61cfbaeb4 in gst_object_dispatch_properties_changed (object=0x7fd45c00cf50 [GstPad], n_pspecs=1, pspecs=0x7fd4668fd5c0) at ../subprojects/gstreamer/gst/gstobject.c:454
    #68 0x00007fd61c3af901 in g_object_notify_by_spec_internal (pspec=<optimized out>, object=0x7fd45c00cf50 [GstPad]) at ../../../gobject/gobject.c:1181
    #69 0x00007fd61c3af901 in g_object_notify_by_pspec (object=object@entry=0x7fd45c00cf50 [GstPad], pspec=<optimized out>) at ../../../gobject/gobject.c:1291
    #70 0x00007fd61cffeaac in store_sticky_event (pad=pad@entry=0x7fd45c00cf50 [GstPad], event=event@entry=0x7fd484007c10) at ../subprojects/gstreamer/gst/gstpad.c:5230
    #71 0x00007fd61d0099b8 in gst_pad_push_event (pad=pad@entry=0x7fd45c00cf50 [GstPad], event=0x7fd484007c10) at ../subprojects/gstreamer/gst/gstpad.c:5529
    #72 0x00007fd61d10529b in gst_pad_set_caps (caps=0x7fd45c0034a0, pad=0x7fd45c00cf50 [GstPad]) at ../subprojects/gstreamer/gst/gstcompat.h:59
    #73 0x00007fd61d10529b in gst_base_transform_setcaps (trans=trans@entry=0x5556e9131b00 [GstCapsFilter], pad=<optimized out>, incaps=<optimized out>)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1337
    #74 0x00007fd61d10668d in gst_base_transform_sink_eventfunc (trans=trans@entry=0x5556e9131b00 [GstCapsFilter], event=0x7fd484007c80) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1898
    #75 0x00007fd574118061 in gst_capsfilter_sink_event (trans=0x5556e9131b00 [GstCapsFilter], event=0x7fd484007c80) at ../subprojects/gstreamer/gst/gstevent.h:438
    #76 0x00007fd61d0000b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x7fd45c00cd00 [GstPad], event=event@entry=0x7fd484007c80, type=<optimized out>, type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5765
    #77 0x00007fd61d0005d4 in gst_pad_push_event_unchecked (pad=pad@entry=0x7fd45c00cab0 [GstPad], event=0x7fd484007c80, type=type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5410
    --Type <RET> for more, q to quit, c to continue without paging--
    #78 0x00007fd61d000a44 in push_sticky (pad=pad@entry=0x7fd45c00cab0 [GstPad], ev=ev@entry=0x7fd4668fd9a0, user_data=user_data@entry=0x7fd4668fda00) at ../subprojects/gstreamer/gst/gstevent.h:438
    #79 0x00007fd61cffe448 in events_foreach (pad=pad@entry=0x7fd45c00cab0 [GstPad], func=func@entry=0x7fd61d0009f0 <push_sticky>, user_data=user_data@entry=0x7fd4668fda00)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #80 0x00007fd61d009711 in check_sticky (event=0x7fd484007c80, pad=0x7fd45c00cab0 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:3985
    #81 0x00007fd61d009711 in gst_pad_push_event (pad=pad@entry=0x7fd45c00cab0 [GstPad], event=0x7fd484007c80) at ../subprojects/gstreamer/gst/gstpad.c:5541
    #82 0x00007fd5947ce5b3 in gst_pad_set_caps (caps=0x7fd45c0034a0, pad=0x7fd45c00cab0 [GstPad]) at ../subprojects/gstreamer/gst/gstcompat.h:59
    #83 0x00007fd5947ce5b3 in gst_h264_parse_update_src_caps (h264parse=h264parse@entry=0x7fd45c0173d0 [GstH264Parse], caps=<optimized out>, caps@entry=0x7fd6080755e0)
        at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:2118
    #84 0x00007fd5947d29ff in gst_h264_parse_set_caps (parse=0x7fd45c0173d0 [GstH264Parse], caps=<optimized out>) at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:2937
    #85 0x00007fd61d0e75b6 in gst_base_parse_sink_event_default (parse=0x7fd45c0173d0 [GstH264Parse], event=0x7fd48400a080) at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:1191
    #86 0x00007fd5947cc363 in gst_h264_parse_event (parse=0x7fd45c0173d0 [GstH264Parse], event=0x7fd48400a080) at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:3112
    #87 0x00007fd61d0000b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x7fd45c00c860 [GstPad], event=event@entry=0x7fd48400a080, type=<optimized out>) at ../subprojects/gstreamer/gst/gstpad.c:5765
    #88 0x00007fd61d009d29 in gst_pad_send_event (pad=0x7fd45c00c860 [GstPad], event=0x7fd48400a080) at ../subprojects/gstreamer/gst/gstpad.c:5935
    #89 0x00007fd57417ecc8 in send_sticky_event (pad=<optimized out>, event=<optimized out>, user_data=0x7fd4668fe080) at ../subprojects/gstreamer/gst/gstevent.h:438
    #90 0x00007fd61cffebd9 in foreach_dispatch_function (user_data=0x7fd4668fdfb0, ev=0x7fd4668fdf60, pad=0x7fd45c00c610 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:6034
    #91 0x00007fd61cffebd9 in foreach_dispatch_function (pad=pad@entry=0x7fd45c00c610 [GstPad], ev=ev@entry=0x7fd4668fdf60, user_data=user_data@entry=0x7fd4668fdfb0) at ../subprojects/gstreamer/gst/gstpad.c:6026
    #92 0x00007fd61cffe448 in events_foreach (pad=pad@entry=0x7fd45c00c610 [GstPad], func=func@entry=0x7fd61cffeba0 <foreach_dispatch_function>, user_data=user_data@entry=0x7fd4668fdfb0)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #93 0x00007fd61d00a933 in gst_pad_sticky_events_foreach (pad=pad@entry=0x7fd45c00c610 [GstPad], foreach_func=foreach_func@entry=0x7fd57417ecb0 <send_sticky_event>, user_data=user_data@entry=0x7fd4668fe080)
        at ../subprojects/gstreamer/gst/gstpad.c:6065
    #94 0x00007fd574189d9b in send_sticky_events (dbin=0x5556e9422a90 [GstDecodeBin], pad=0x7fd45c00c610 [GstPad]) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1994
    #95 0x00007fd574189d9b in connect_pad (dbin=dbin@entry=0x5556e9422a90 [GstDecodeBin], src=0x7fd45c00f080 [GstMultiQueue], 
        src@entry=0x7fd47c0176d0 [GstQTDemux], dpad=dpad@entry=0x7fd480012af0 [GstDecodePad], pad=0x7fd45c00c610 [GstPad], 
        pad@entry=0x7fd45c00c170 [GstPad], caps=caps@entry=0x7fd6080755e0, factories=<optimized out>, chain=<optimized out>, deadend_details=0x7fd4668fe148)
        at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2516
    #96 0x00007fd574187d51 in analyze_new_pad
        (dbin=dbin@entry=0x5556e9422a90 [GstDecodeBin], src=src@entry=0x7fd47c0176d0 [GstQTDemux], pad=pad@entry=0x7fd45c00c170 [GstPad], caps=caps@entry=0x7fd6080755e0, chain=<optimized out>, 
        chain@entry=0x7fd46800c870, new_chain=new_chain@entry=0x7fd4668fe198) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1808
    #97 0x00007fd57418869a in pad_added_cb (element=0x7fd47c0176d0 [GstQTDemux], pad=0x7fd45c00c170 [GstPad], chain=0x7fd46800c870) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2949
    #98 0x00007fd619d958ee in ffi_call_unix64 () at /usr/lib/x86_64-linux-gnu/libffi.so.6
    #99 0x00007fd619d952bf in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
    #104 0x00007fd61c3c591f in <emit signal ??? on instance 0x7fd47c0176d0 [GstQTDemux]> (instance=instance@entry=0x7fd47c0176d0, signal_id=<optimized out>, detail=detail@entry=0) at ../../../gobject/gsignal.c:3447
        #100 0x00007fd61c3a9472 in g_cclosure_marshal_generic
        (closure=0x7fd4680025c0, return_gvalue=0x0, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=<optimized out>) at ../../../gobject/gclosure.c:1496
        #101 0x00007fd61c3a8c7d in g_closure_invoke (closure=0x7fd4680025c0, return_value=0x0, n_param_values=2, param_values=0x7fd4668fe5c0, invocation_hint=0x7fd4668fe540) at ../../../gobject/gclosure.c:810
        #102 0x00007fd61c3bc345 in signal_emit_unlocked_R
        (node=node@entry=0x5556e8d4e960, detail=detail@entry=0, instance=instance@entry=0x7fd47c0176d0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fd4668fe5c0)
        at ../../../gobject/gsignal.c:3635
        #103 0x00007fd61c3c525e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fd4668fe790) at ../../../gobject/gsignal.c:3391
    #105 0x00007fd61cfe3010 in gst_element_add_pad (element=element@entry=0x7fd47c0176d0 [GstQTDemux], pad=0x7fd45c00c170 [GstPad]) at ../subprojects/gstreamer/gst/gstelement.c:711
    #106 0x00007fd537b98094 in gst_qtdemux_add_stream (qtdemux=qtdemux@entry=0x7fd47c0176d0 [GstQTDemux], stream=0x7fd45c004940, list=0x7fd608075590) at ../subprojects/gst-plugins-good/gst/isomp4/qtdemux.c:8884
    #107 0x00007fd537b983e5 in qtdemux_expose_streams (qtdemux=qtdemux@entry=0x7fd47c0176d0 [GstQTDemux]) at ../subprojects/gst-plugins-good/gst/isomp4/qtdemux.c:12879
    #108 0x00007fd537bb1cdb in gst_qtdemux_loop_state_header (qtdemux=0x7fd47c0176d0 [GstQTDemux]) at ../subprojects/gst-plugins-good/gst/isomp4/qtdemux.c:4729
    #109 0x00007fd537bb1cdb in gst_qtdemux_loop (pad=0x5556e945b530 [GstPad]) at ../subprojects/gst-plugins-good/gst/isomp4/qtdemux.c:6515
    #110 0x00007fd61d0356d1 in gst_task_func (task=0x7fd4a827f4d0 [GstTask]) at ../subprojects/gstreamer/gst/gsttask.c:328
    #111 0x00007fd61c2efdc3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../glib/gthreadpool.c:307
    #112 0x00007fd61c2ef425 in g_thread_proxy (data=0x7fd468004400) at ../../../glib/gthread.c:784
    #113 0x00007fd61d593fa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
    #114 0x00007fd61b33c82f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
  • Can you install debug symbols for /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so ? (On ubuntu it is in the package libgl1-mesa-dri-dbg), Thx!

  • Author Maintainer

    Sure. This only one issue, though, if there's no crash, all I get is scrambled output, as reported almost one year ago: #100 (closed)

  • Author Maintainer
    (gdb) bt
    #0  0x00007f424524ea3d in __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:240
    #1  0x00007f4230359742 in memcpy (__len=<optimized out>, __src=0x7f40d81324a0, __dest=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string_fortified.h:34
    #2  0x00007f4230359742 in util_copy_rect
        (dst=<optimized out>, format=<optimized out>, dst_stride=256, dst_x=0, dst_y=<optimized out>, width=<optimized out>, height=<optimized out>, src=0x7f40d81324a0 "", src_stride=32, src_x=0, src_y=<optimized out>) at ../src/gallium/auxiliary/util/u_surface.c:105
    #3  0x00007f423035986c in util_copy_box
        (dst=0x7f41e8304000 <error: Cannot access memory at address 0x7f41e8304000>, format=PIPE_FORMAT_R8_UNORM, dst_stride=256, dst_slice_stride=8192, dst_x=dst_x@entry=0, dst_y=dst_y@entry=0, dst_z=0, width=32, height=32, depth=1, src=<optimized out>, src_stride=32, src_slice_stride=0, src_x=0, src_y=0, src_z=0) at ../src/gallium/auxiliary/util/u_surface.c:131
    #4  0x00007f4230aad851 in u_default_texture_subdata (pipe=0x7f40d8084e00, resource=0x7f40d812d370, level=<optimized out>, usage=<optimized out>, box=0x7f410f3fb360, data=0x7f40d81324a0, stride=32, layer_stride=0)
        at ../src/gallium/auxiliary/util/u_transfer.c:67
    #5  0x00007f40b6285ef0 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
    #6  0x00007f4170d6e0fc in gst_vaapi_surface_put_image (surface=0x7f42340680f0, image=image@entry=0x7f40d400f630) at ../subprojects/gstreamer-vaapi/gst-libs/gst/vaapi/gstvaapisurface.c:790
    #7  0x00007f4170d32aca in extract_allowed_surface_formats
        (img_formats=0x7f40d81276d0, img_formats=0x7f40d81276d0, direction=GST_PAD_SINK, specified_format=GST_VIDEO_FORMAT_UNKNOWN, display=0x561d315818a0 [GstVaapiDisplayEGL])
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1307
    #8  0x00007f4170d32aca in ensure_allowed_raw_caps (plugin=plugin@entry=0x7f40d81021d0, format=format@entry=GST_VIDEO_FORMAT_UNKNOWN, direction=direction@entry=GST_PAD_SINK)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1346
    #9  0x00007f4170d3439f in ensure_allowed_raw_caps (direction=GST_PAD_SINK, format=GST_VIDEO_FORMAT_UNKNOWN, plugin=plugin@entry=0x7f40d81021d0)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1378
    #10 0x00007f4170d3439f in gst_vaapi_plugin_base_get_allowed_sinkpad_raw_caps (plugin=plugin@entry=0x7f40d81021d0) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipluginbase.c:1378
    #11 0x00007f4170d394da in ensure_allowed_sinkpad_caps (postproc=0x7f40d81021d0) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1099
    #12 0x00007f4170d394da in gst_vaapipostproc_transform_caps_impl (direction=<optimized out>, trans=0x7f40d81021d0 [GstVaapiPostproc]) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1193
    #13 0x00007f4170d394da in gst_vaapipostproc_transform_caps (trans=0x7f40d81021d0 [GstVaapiPostproc], direction=<optimized out>, caps=0x7f40d810be30, filter=0x7f40d810bca0)
        at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapipostproc.c:1216
    #14 0x00007f4246fb15a1 in gst_base_transform_transform_caps (trans=trans@entry=0x7f40d81021d0 [GstVaapiPostproc], direction=GST_PAD_SRC, caps=caps@entry=0x7f40d810be30, filter=filter@entry=0x7f40d810bca0)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:474
    #15 0x00007f4246fb50dc in gst_base_transform_query_caps (filter=0x7f40d810bca0, pad=0x7f40d809c120 [GstPad], trans=0x7f40d81021d0 [GstVaapiPostproc])
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:695
    #16 0x00007f4246fb50dc in gst_base_transform_default_query (trans=0x7f40d81021d0 [GstVaapiPostproc], direction=<optimized out>, query=0x7f40d810bcf0)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1550
    #17 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d809c120 [GstPad], query=query@entry=0x7f40d810bcf0) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #18 0x00007f4246eb6c8b in gst_pad_peer_query (pad=pad@entry=0x7f40d4271d80 [GstPad], query=query@entry=0x7f40d810bcf0) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #19 0x00007f4246ef29f4 in gst_pad_peer_query_caps (pad=pad@entry=0x7f40d4271d80 [GstPad], filter=filter@entry=0x7f40d810bca0) at ../subprojects/gstreamer/gst/gstutils.c:3107
    #20 0x00007f4246fb4efe in gst_base_transform_query_caps (filter=0x7f4234068190, pad=0x7f40d4271b30 [GstPad], trans=0x561d3237b360 [GstCapsFilter]) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:678
    #21 0x00007f4246fb4efe in gst_base_transform_default_query (trans=0x561d3237b360 [GstCapsFilter], direction=<optimized out>, query=0x7f40d810bc50) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1550
    #22 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d4271b30 [GstPad], query=query@entry=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #23 0x00007f4246eb6c8b in gst_pad_peer_query (pad=pad@entry=0x7f40d42718e0 [GstPad], query=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #24 0x00007f4246eed1a8 in query_caps_func (pad=pad@entry=0x7f40d42718e0 [GstPad], data=data@entry=0x7f410f3fbaf0) at ../subprojects/gstreamer/gst/gstutils.c:2765
    #25 0x00007f4246eb50fe in gst_pad_forward (pad=pad@entry=0x7f40d4271690 [GstPad], forward=forward@entry=0x7f4246eed190 <query_caps_func>, user_data=user_data@entry=0x7f410f3fbaf0)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #26 0x00007f4246eefc5a in gst_pad_proxy_query_caps (pad=pad@entry=0x7f40d4271690 [GstPad], query=query@entry=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstutils.c:2815
    #27 0x00007f4246eb52e4 in gst_pad_query_caps_default (query=0x7f40d810bc50, pad=0x7f40d4271690 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:3187
    #28 0x00007f4246eb52e4 in gst_pad_query_default (pad=0x7f40d4271690 [GstPad], parent=<optimized out>, query=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstpad.c:3415
    #29 0x00007f41887d0bb5 in gst_queue_handle_sink_query (pad=<optimized out>, parent=0x561d32327900 [GstQueue], query=0x7f40d810bc50) at ../subprojects/gstreamer/plugins/elements/gstqueue.c:1079
    #30 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d4271690 [GstPad], query=query@entry=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #31 0x00007f4246eb6c8b in gst_pad_peer_query (pad=pad@entry=0x7f40d4271440 [GstPad], query=query@entry=0x7f40d810bc50) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #32 0x00007f4246ef29f4 in gst_pad_peer_query_caps (pad=pad@entry=0x7f40d4271440 [GstPad], filter=filter@entry=0x7f4234068190) at ../subprojects/gstreamer/gst/gstutils.c:3107
    #33 0x00007f4246cdc781 in __gst_video_element_proxy_getcaps
        (element=element@entry=0x7f40d80db620 [GstVaapiDecode], sinkpad=<optimized out>, srcpad=0x7f40d4271440 [GstPad], initial_caps=<optimized out>, filter=filter@entry=0x7f40d8003cf0)
        at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoutilsprivate.c:108
    #34 0x00007f4246ccd1a9 in gst_video_decoder_proxy_getcaps (decoder=decoder@entry=0x7f40d80db620 [GstVaapiDecode], caps=<optimized out>, filter=filter@entry=0x7f40d8003cf0)
        at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1730
    --Type <RET> for more, q to quit, c to continue without paging--
    #35 0x00007f4170d2f962 in gst_vaapidecode_sink_getcaps (vdec=<optimized out>, filter=<optimized out>) at ../subprojects/gstreamer-vaapi/gst/vaapi/gstvaapidecode.c:1341
    #36 0x00007f4246ccd26b in gst_video_decoder_sink_getcaps (filter=<optimized out>, decoder=0x7f40d80db620 [GstVaapiDecode]) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1744
    #37 0x00007f4246ccd26b in gst_video_decoder_sink_query_default (decoder=0x7f40d80db620 [GstVaapiDecode], query=0x7f4234068280) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1793
    #38 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d42711f0 [GstPad], query=query@entry=0x7f4234068280) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #39 0x00007f4246ef0414 in gst_pad_query_caps (pad=0x7f40d42711f0 [GstPad], filter=0x7f40d8003cf0) at ../subprojects/gstreamer/gst/gstutils.c:3061
    #40 0x00007f4246ccd4b9 in gst_video_decoder_sink_query_default (decoder=0x7f40d80db620 [GstVaapiDecode], query=0x7f4234068370) at ../subprojects/gst-plugins-base/gst-libs/gst/video/gstvideodecoder.c:1817
    #41 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d42711f0 [GstPad], query=query@entry=0x7f4234068370) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #42 0x00007f4246eb6c8b in gst_pad_peer_query (pad=pad@entry=0x561d326333f0 [GstProxyPad], query=0x7f4234068370) at ../subprojects/gstreamer/gst/gstpad.c:4203
    #43 0x00007f4246eed170 in query_accept_caps_func (pad=pad@entry=0x561d326333f0 [GstProxyPad], data=data@entry=0x7f410f3fc1d0) at ../subprojects/gstreamer/gst/gstutils.c:2705
    #44 0x00007f4246eb50fe in gst_pad_forward (pad=pad@entry=0x7f40d426cac0 [GstGhostPad], forward=forward@entry=0x7f4246eed160 <query_accept_caps_func>, user_data=user_data@entry=0x7f410f3fc1d0)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #45 0x00007f4246eeface in gst_pad_proxy_query_accept_caps (pad=pad@entry=0x7f40d426cac0 [GstGhostPad], query=query@entry=0x7f4234068370) at ../subprojects/gstreamer/gst/gstutils.c:2745
    #46 0x00007f4246eb55e5 in gst_pad_query_accept_caps_default (query=0x7f4234068370, pad=0x7f40d426cac0 [GstGhostPad]) at ../subprojects/gstreamer/gst/gstpad.c:3134
    #47 0x00007f4246eb55e5 in gst_pad_query_default (pad=0x7f40d426cac0 [GstGhostPad], parent=<optimized out>, query=0x7f4234068370) at ../subprojects/gstreamer/gst/gstpad.c:3411
    #48 0x00007f4246eb6530 in gst_pad_query (pad=pad@entry=0x7f40d426cac0 [GstGhostPad], query=query@entry=0x7f4234068370) at ../subprojects/gstreamer/gst/gstpad.c:4071
    #49 0x00007f4246ef2bac in gst_pad_query_accept_caps (pad=pad@entry=0x7f40d426cac0 [GstGhostPad], caps=<optimized out>) at ../subprojects/gstreamer/gst/gstutils.c:3144
    #50 0x00007f4246eaf0fa in pre_eventfunc_check (event=0x7f40d8004c70, pad=0x7f40d426cac0 [GstGhostPad]) at ../subprojects/gstreamer/gst/gstpad.c:5611
    #51 0x00007f4246eaf0fa in gst_pad_send_event_unchecked (pad=pad@entry=0x7f40d426cac0 [GstGhostPad], event=event@entry=0x7f40d8004c70, type=<optimized out>) at ../subprojects/gstreamer/gst/gstpad.c:5756
    #52 0x00007f4246eb8d29 in gst_pad_send_event (pad=0x7f40d426cac0 [GstGhostPad], event=0x7f40d8004c70) at ../subprojects/gstreamer/gst/gstpad.c:5935
    #53 0x00007f41a015dcc8 in send_sticky_event (pad=<optimized out>, event=<optimized out>, user_data=0x7f410f3fc5a0) at ../subprojects/gstreamer/gst/gstevent.h:438
    #54 0x00007f4246eadbd9 in foreach_dispatch_function (user_data=0x7f410f3fc4d0, ev=0x7f410f3fc480, pad=0x7f40d4270fa0 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:6034
    #55 0x00007f4246eadbd9 in foreach_dispatch_function (pad=pad@entry=0x7f40d4270fa0 [GstPad], ev=ev@entry=0x7f410f3fc480, user_data=user_data@entry=0x7f410f3fc4d0) at ../subprojects/gstreamer/gst/gstpad.c:6026
    #56 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x7f40d4270fa0 [GstPad], func=func@entry=0x7f4246eadba0 <foreach_dispatch_function>, user_data=user_data@entry=0x7f410f3fc4d0)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #57 0x00007f4246eb9933 in gst_pad_sticky_events_foreach (pad=pad@entry=0x7f40d4270fa0 [GstPad], foreach_func=foreach_func@entry=0x7f41a015dcb0 <send_sticky_event>, user_data=user_data@entry=0x7f410f3fc5a0)
        at ../subprojects/gstreamer/gst/gstpad.c:6065
    #58 0x00007f41a0168d9b in send_sticky_events (dbin=0x561d326300b0 [GstDecodeBin], pad=0x7f40d4270fa0 [GstPad]) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1994
    #59 0x00007f41a0168d9b in connect_pad
        (dbin=dbin@entry=0x561d326300b0 [GstDecodeBin], src=src@entry=0x561d3237b020 [GstCapsFilter], dpad=dpad@entry=0x561d3153d560 [GstDecodePad], pad=pad@entry=0x7f40d4270fa0 [GstPad], caps=caps@entry=0x7f40d8003cf0, factories=<optimized out>, chain=<optimized out>, deadend_details=0x7f410f3fc678) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2516
    #60 0x00007f41a0166c61 in analyze_new_pad
        (dbin=dbin@entry=0x561d326300b0 [GstDecodeBin], src=src@entry=0x561d3237b020 [GstCapsFilter], pad=pad@entry=0x7f40d4270fa0 [GstPad], caps=caps@entry=0x7f40d8003cf0, chain=<optimized out>, 
        chain@entry=0x7f40d40051d0, new_chain=new_chain@entry=0x7f410f3fc6c8) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1808
    #61 0x00007f41a016769a in pad_added_cb (element=element@entry=0x561d3237b020 [GstCapsFilter], pad=pad@entry=0x7f40d4270fa0 [GstPad], chain=chain@entry=0x7f40d40051d0)
        at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2949
    #62 0x00007f41a016790f in caps_notify_cb (pad=0x7f40d4270fa0 [GstPad], unused=<optimized out>, chain=0x7f40d40051d0) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3139
    #66 0x00007f424627491f in <emit signal notify:caps on instance 0x7f40d4270fa0 [GstPad]> (instance=instance@entry=0x7f40d4270fa0, signal_id=<optimized out>, detail=<optimized out>)
        at ../../../gobject/gsignal.c:3447
        #63 0x00007f4246257c7d in g_closure_invoke (closure=0x7f40d80055d0, return_value=0x0, n_param_values=2, param_values=0x7f410f3fc910, invocation_hint=0x7f410f3fc890) at ../../../gobject/gclosure.c:810
        #64 0x00007f424626b345 in signal_emit_unlocked_R
        (node=node@entry=0x561d31506600, detail=detail@entry=1502, instance=instance@entry=0x7f40d4270fa0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7f410f3fc910)
        at ../../../gobject/gsignal.c:3635
        #65 0x00007f424627425e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7f410f3fcae0) at ../../../gobject/gsignal.c:3391
    #67 0x00007f424625c354 in g_object_dispatch_properties_changed (object=0x7f40d4270fa0 [GstPad], n_pspecs=<optimized out>, pspecs=<optimized out>) at ../../../gobject/gobject.c:1088
    #68 0x00007f4246e69eb4 in gst_object_dispatch_properties_changed (object=0x7f40d4270fa0 [GstPad], n_pspecs=1, pspecs=0x7f410f3fcc50) at ../subprojects/gstreamer/gst/gstobject.c:454
    #69 0x00007f424625e901 in g_object_notify_by_spec_internal (pspec=<optimized out>, object=0x7f40d4270fa0 [GstPad]) at ../../../gobject/gobject.c:1181
    #70 0x00007f424625e901 in g_object_notify_by_pspec (object=object@entry=0x7f40d4270fa0 [GstPad], pspec=<optimized out>) at ../../../gobject/gobject.c:1291
    #71 0x00007f4246eadaac in store_sticky_event (pad=pad@entry=0x7f40d4270fa0 [GstPad], event=event@entry=0x7f40d8004c70) at ../subprojects/gstreamer/gst/gstpad.c:5230
    #72 0x00007f4246eb89b8 in gst_pad_push_event (pad=pad@entry=0x7f40d4270fa0 [GstPad], event=0x7f40d8004c70) at ../subprojects/gstreamer/gst/gstpad.c:5529
    #73 0x00007f4246fb429b in gst_pad_set_caps (caps=0x7f40d8003cf0, pad=0x7f40d4270fa0 [GstPad]) at ../subprojects/gstreamer/gst/gstcompat.h:59
    #74 0x00007f4246fb429b in gst_base_transform_setcaps (trans=trans@entry=0x561d3237b020 [GstCapsFilter], pad=<optimized out>, incaps=<optimized out>)
        at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1337
    --Type <RET> for more, q to quit, c to continue without paging--
    #75 0x00007f4246fb568d in gst_base_transform_sink_eventfunc (trans=trans@entry=0x561d3237b020 [GstCapsFilter], event=0x7f40d8004c00) at ../subprojects/gstreamer/libs/gst/base/gstbasetransform.c:1898
    #76 0x00007f41887a1061 in gst_capsfilter_sink_event (trans=0x561d3237b020 [GstCapsFilter], event=0x7f40d8004c00) at ../subprojects/gstreamer/gst/gstevent.h:438
    #77 0x00007f4246eaf0b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x7f40d4270d50 [GstPad], event=event@entry=0x7f40d8004c00, type=<optimized out>, type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5765
    #78 0x00007f4246eaf5d4 in gst_pad_push_event_unchecked (pad=pad@entry=0x7f40d4270b00 [GstPad], event=0x7f40d8004c00, type=type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5410
    #79 0x00007f4246eafa44 in push_sticky (pad=pad@entry=0x7f40d4270b00 [GstPad], ev=ev@entry=0x7f410f3fd030, user_data=user_data@entry=0x7f410f3fd090) at ../subprojects/gstreamer/gst/gstevent.h:438
    #80 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x7f40d4270b00 [GstPad], func=func@entry=0x7f4246eaf9f0 <push_sticky>, user_data=user_data@entry=0x7f410f3fd090)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #81 0x00007f4246eb8711 in check_sticky (event=0x7f40d8004c00, pad=0x7f40d4270b00 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:3985
    #82 0x00007f4246eb8711 in gst_pad_push_event (pad=pad@entry=0x7f40d4270b00 [GstPad], event=0x7f40d8004c00) at ../subprojects/gstreamer/gst/gstpad.c:5541
    #83 0x00007f417314c5b3 in gst_pad_set_caps (caps=0x7f40d8003cf0, pad=0x7f40d4270b00 [GstPad]) at ../subprojects/gstreamer/gst/gstcompat.h:59
    #84 0x00007f417314c5b3 in gst_h264_parse_update_src_caps (h264parse=h264parse@entry=0x7f40d8010800 [GstH264Parse], caps=<optimized out>, caps@entry=0x7f4234067990)
        at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:2118
    #85 0x00007f41731509ff in gst_h264_parse_set_caps (parse=0x7f40d8010800 [GstH264Parse], caps=<optimized out>) at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:2937
    #86 0x00007f4246f965b6 in gst_base_parse_sink_event_default (parse=0x7f40d8010800 [GstH264Parse], event=0x7f40d8004440) at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:1191
    #87 0x00007f417314a363 in gst_h264_parse_event (parse=0x7f40d8010800 [GstH264Parse], event=0x7f40d8004440) at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:3112
    #88 0x00007f4246eaf0b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x7f40d42708b0 [GstPad], event=event@entry=0x7f40d8004440, type=<optimized out>) at ../subprojects/gstreamer/gst/gstpad.c:5765
    #89 0x00007f4246eb8d29 in gst_pad_send_event (pad=0x7f40d42708b0 [GstPad], event=0x7f40d8004440) at ../subprojects/gstreamer/gst/gstpad.c:5935
    #90 0x00007f41a015dcc8 in send_sticky_event (pad=<optimized out>, event=<optimized out>, user_data=0x7f410f3fd710) at ../subprojects/gstreamer/gst/gstevent.h:438
    #91 0x00007f4246eadbd9 in foreach_dispatch_function (user_data=0x7f410f3fd640, ev=0x7f410f3fd5f0, pad=0x7f40d000ad20 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:6034
    #92 0x00007f4246eadbd9 in foreach_dispatch_function (pad=pad@entry=0x7f40d000ad20 [GstPad], ev=ev@entry=0x7f410f3fd5f0, user_data=user_data@entry=0x7f410f3fd640) at ../subprojects/gstreamer/gst/gstpad.c:6026
    #93 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x7f40d000ad20 [GstPad], func=func@entry=0x7f4246eadba0 <foreach_dispatch_function>, user_data=user_data@entry=0x7f410f3fd640)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #94 0x00007f4246eb9933 in gst_pad_sticky_events_foreach (pad=pad@entry=0x7f40d000ad20 [GstPad], foreach_func=foreach_func@entry=0x7f41a015dcb0 <send_sticky_event>, user_data=user_data@entry=0x7f410f3fd710)
        at ../subprojects/gstreamer/gst/gstpad.c:6065
    #95 0x00007f41a0168d9b in send_sticky_events (dbin=0x561d326300b0 [GstDecodeBin], pad=0x7f40d000ad20 [GstPad]) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1994
    #96 0x00007f41a0168d9b in connect_pad
        (dbin=dbin@entry=0x561d326300b0 [GstDecodeBin], src=src@entry=0x561d315133d0 [GstTypeFindElement], dpad=dpad@entry=0x561d3153d560 [GstDecodePad], pad=pad@entry=0x7f40d000ad20 [GstPad], caps=caps@entry=0x7f4234067990, factories=<optimized out>, chain=<optimized out>, deadend_details=0x7f410f3fd7e8) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:2516
    #97 0x00007f41a0166c61 in analyze_new_pad
        (dbin=dbin@entry=0x561d326300b0 [GstDecodeBin], src=src@entry=0x561d315133d0 [GstTypeFindElement], pad=pad@entry=0x7f40d000ad20 [GstPad], caps=caps@entry=0x7f4234067990, chain=<optimized out>, new_chain=new_chain@entry=0x0) at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:1808
    #98 0x00007f41a01674ad in type_found (typefind=0x561d315133d0 [GstTypeFindElement], probability=<optimized out>, caps=0x7f4234067990, decode_bin=0x561d326300b0 [GstDecodeBin])
        at ../subprojects/gst-plugins-base/gst/playback/gstdecodebin2.c:3344
    #99 0x00007f4243c448ee in ffi_call_unix64 () at /usr/lib/x86_64-linux-gnu/libffi.so.6
    #100 0x00007f4243c442bf in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
    #105 0x00007f424627491f in <emit signal ??? on instance 0x561d315133d0 [GstTypeFindElement]> (instance=instance@entry=0x561d315133d0, signal_id=<optimized out>, detail=detail@entry=0)
        at ../../../gobject/gsignal.c:3447
        #101 0x00007f4246258472 in g_cclosure_marshal_generic
        (closure=0x561d324cf420, return_gvalue=0x0, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=<optimized out>) at ../../../gobject/gclosure.c:1496
        #102 0x00007f4246257c7d in g_closure_invoke (closure=0x561d324cf420, return_value=0x0, n_param_values=3, param_values=0x7f410f3fdc80, invocation_hint=0x7f410f3fdc00) at ../../../gobject/gclosure.c:810
        #103 0x00007f424626b345 in signal_emit_unlocked_R
        (node=node@entry=0x561d323935e0, detail=detail@entry=0, instance=instance@entry=0x561d315133d0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7f410f3fdc80)
        at ../../../gobject/gsignal.c:3635
        #104 0x00007f424627425e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7f410f3fde60) at ../../../gobject/gsignal.c:3391
    #106 0x00007f41887d8b2a in gst_type_find_element_emit_have_type (typefind=typefind@entry=0x561d315133d0 [GstTypeFindElement], probability=probability@entry=100, caps=caps@entry=0x7f4234067990)
        at ../subprojects/gstreamer/plugins/elements/gsttypefindelement.c:236
    #107 0x00007f41887da1dc in gst_type_find_element_setcaps (caps=0x7f4234067990, typefind=0x561d315133d0 [GstTypeFindElement]) at ../subprojects/gstreamer/plugins/elements/gsttypefindelement.c:784
    #108 0x00007f41887da1dc in gst_type_find_element_sink_event (pad=<optimized out>, parent=0x561d315133d0 [GstTypeFindElement], event=0x561d325b0710)
        at ../subprojects/gstreamer/plugins/elements/gsttypefindelement.c:674
    #109 0x00007f4246eaf0b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x7f40d000aad0 [GstPad], event=event@entry=0x561d325b0710, type=<optimized out>, type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
    --Type <RET> for more, q to quit, c to continue without paging--
        at ../subprojects/gstreamer/gst/gstpad.c:5765
    #110 0x00007f4246eaf5d4 in gst_pad_push_event_unchecked (pad=pad@entry=0x561d31fb1a80 [GstProxyPad], event=0x561d325b0710, type=type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5410
    #111 0x00007f4246eafa44 in push_sticky (pad=pad@entry=0x561d31fb1a80 [GstProxyPad], ev=ev@entry=0x7f410f3fe120, user_data=user_data@entry=0x7f410f3fe180) at ../subprojects/gstreamer/gst/gstevent.h:438
    #112 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x561d31fb1a80 [GstProxyPad], func=func@entry=0x7f4246eaf9f0 <push_sticky>, user_data=user_data@entry=0x7f410f3fe180)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #113 0x00007f4246eb8711 in check_sticky (event=0x561d325b0710, pad=0x561d31fb1a80 [GstProxyPad]) at ../subprojects/gstreamer/gst/gstpad.c:3985
    #114 0x00007f4246eb8711 in gst_pad_push_event (pad=pad@entry=0x561d31fb1a80 [GstProxyPad], event=0x561d325b0710) at ../subprojects/gstreamer/gst/gstpad.c:5541
    #115 0x00007f4246eb8ca4 in event_forward_func (pad=pad@entry=0x561d31fb1a80 [GstProxyPad], data=data@entry=0x7f410f3fe270) at ../subprojects/gstreamer/gst/gstevent.h:438
    #116 0x00007f4246eb50fe in gst_pad_forward (pad=pad@entry=0x561d31faf490 [GstGhostPad], forward=forward@entry=0x7f4246eb8be0 <event_forward_func>, user_data=user_data@entry=0x7f410f3fe270)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #117 0x00007f4246eb520d in gst_pad_event_default (pad=0x561d31faf490 [GstGhostPad], parent=<optimized out>, event=0x561d325b0710) at ../subprojects/gstreamer/gst/gstpad.c:3105
    #118 0x00007f4246eaf0b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x561d31faf490 [GstGhostPad], event=event@entry=0x561d325b0710, type=<optimized out>, type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5765
    #119 0x00007f4246eaf5d4 in gst_pad_push_event_unchecked (pad=pad@entry=0x561d31fae310 [GstGhostPad], event=0x561d325b0710, type=type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5410
    #120 0x00007f4246eafa44 in push_sticky (pad=pad@entry=0x561d31fae310 [GstGhostPad], ev=ev@entry=0x7f410f3fe440, user_data=user_data@entry=0x7f410f3fe4a0) at ../subprojects/gstreamer/gst/gstevent.h:438
    #121 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x561d31fae310 [GstGhostPad], func=func@entry=0x7f4246eaf9f0 <push_sticky>, user_data=user_data@entry=0x7f410f3fe4a0)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #122 0x00007f4246eb8711 in check_sticky (event=0x561d325b0710, pad=0x561d31fae310 [GstGhostPad]) at ../subprojects/gstreamer/gst/gstpad.c:3985
    #123 0x00007f4246eb8711 in gst_pad_push_event (pad=pad@entry=0x561d31fae310 [GstGhostPad], event=0x561d325b0710) at ../subprojects/gstreamer/gst/gstpad.c:5541
    #124 0x00007f4246eb8ca4 in event_forward_func (pad=pad@entry=0x561d31fae310 [GstGhostPad], data=data@entry=0x7f410f3fe590) at ../subprojects/gstreamer/gst/gstevent.h:438
    #125 0x00007f4246eb50fe in gst_pad_forward (pad=pad@entry=0x561d31fb1820 [GstProxyPad], forward=forward@entry=0x7f4246eb8be0 <event_forward_func>, user_data=user_data@entry=0x7f410f3fe590)
        at ../subprojects/gstreamer/gst/gstpad.c:3008
    #126 0x00007f4246eb520d in gst_pad_event_default (pad=0x561d31fb1820 [GstProxyPad], parent=<optimized out>, event=0x561d325b0710) at ../subprojects/gstreamer/gst/gstpad.c:3105
    #127 0x00007f4246eaf0b7 in gst_pad_send_event_unchecked (pad=pad@entry=0x561d31fb1820 [GstProxyPad], event=event@entry=0x561d325b0710, type=<optimized out>, type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5765
    #128 0x00007f4246eaf5d4 in gst_pad_push_event_unchecked (pad=pad@entry=0x561d32586a40 [GstPad], event=0x561d325b0710, type=type@entry=GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
        at ../subprojects/gstreamer/gst/gstpad.c:5410
    #129 0x00007f4246eafa44 in push_sticky (pad=pad@entry=0x561d32586a40 [GstPad], ev=ev@entry=0x7f410f3fe760, user_data=user_data@entry=0x7f410f3fe7c0) at ../subprojects/gstreamer/gst/gstevent.h:438
    #130 0x00007f4246ead448 in events_foreach (pad=pad@entry=0x561d32586a40 [GstPad], func=func@entry=0x7f4246eaf9f0 <push_sticky>, user_data=user_data@entry=0x7f410f3fe7c0)
        at ../subprojects/gstreamer/gst/gstpad.c:608
    #131 0x00007f4246eb8711 in check_sticky (event=0x561d325b0710, pad=0x561d32586a40 [GstPad]) at ../subprojects/gstreamer/gst/gstpad.c:3985
    #132 0x00007f4246eb8711 in gst_pad_push_event (pad=0x561d32586a40 [GstPad], event=0x561d325b0710) at ../subprojects/gstreamer/gst/gstpad.c:5541
    #133 0x00007f4246fae06b in gst_base_src_set_caps (src=src@entry=0x561d325b22f0 [GstAppSrc], caps=caps@entry=0x7f4234067990) at ../subprojects/gstreamer/libs/gst/base/gstbasesrc.c:954
    #134 0x00007f4246feda15 in gst_app_src_do_negotiate (basesrc=basesrc@entry=0x561d325b22f0 [GstAppSrc]) at ../subprojects/gst-plugins-base/gst-libs/gst/app/gstappsrc.c:1102
    #135 0x00007f4246fedcab in gst_app_src_create (bsrc=0x561d325b22f0 [GstAppSrc], offset=<optimized out>, size=4096, buf=0x7f410f3fe950) at ../subprojects/gst-plugins-base/gst-libs/gst/app/gstappsrc.c:1203
    #136 0x00007f4246faa14f in gst_base_src_get_range (src=src@entry=0x561d325b22f0 [GstAppSrc], offset=offset@entry=18446744073709551615, length=<optimized out>, buf=buf@entry=0x7f410f3fea28)
        at ../subprojects/gstreamer/libs/gst/base/gstbasesrc.c:2527
    #137 0x00007f4246fabf54 in gst_base_src_loop (pad=0x561d32586a40 [GstPad]) at ../subprojects/gstreamer/libs/gst/base/gstbasesrc.c:2851
    #138 0x00007f4246ee46d1 in gst_task_func (task=0x561d322f13b0 [GstTask]) at ../subprojects/gstreamer/gst/gsttask.c:328
    #139 0x00007f424619edc3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../glib/gthreadpool.c:307
    #140 0x00007f424619e425 in g_thread_proxy (data=0x561d325a7720) at ../../../glib/gthread.c:784
    #141 0x00007f4247442fa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
    #142 0x00007f42451eb82f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
  • Using mesa master this problem doesn't show up, but others appear like black surfaces when changing subtitles (using vaapisink), and crashes with glimagesink

  • To sum-up these issues happen with:

    GST_GL_API=gles2 GST_GL_PLATFORM=egl ... vaapih264dec ! "video/x-raw(memory:DMABuf), format=RGBA" ! glimagesink ?

    But get resolved when inserting vaapipostproc, it that correct ?

    Edited by Julien Isorce
  • Nope, just using playbin (which uses vaapidecodebin, which includes vaapipostproc)

  • Fixed in latest mesa, see #100 (closed)

  • closed

  • reopened

  • Author Maintainer

    There are more issues, as mentioned by @vjaquez.

  • Author Maintainer

    And we can't expect all users to compile Mesa git master either, so for the time being we need a solution to avoid losing/frustrating more users :(

  • oki, can we improve the white list to check driver version ?

  • Author Maintainer

    That would be a good idea ;) I'll try to investigate this. In which Mesa version will your fixes be shipped?

  • can we improve the white list to check driver version ?

     * vaQueryVendorString returns a pointer to a zero-terminated string
     * describing some aspects of the VA implemenation on a specific    
     * hardware accelerator. The format of the returned string is vendor
     * specific and at the discretion of the implementer.

    We'll end up parsing arbitrary strings which is (already) error prone.

  • It is funny the doc in the va.c is more specific:

     * The format of the returned string is:
     * <vendorname>-<major_version>-<minor_version>-<addtional_info>

    Also I notice that vaInitialize always returns VA_MAJOR_VERSION / VA_MINOR_VERSION and there is no va helper to query CTX(dpy)->version_major and CTX(dpy)->version_minor. VADriverContext 's version_major and version_minor are completely ignored and actually mesa fixes them to 0.1 :)

    Maybe we can implement it, around https://github.com/intel/libva/blob/master/va/va.c#L775 , vaQueryDriverVersion() which would just return CTX(dpy)->version_major and CTX(dpy)->version_minor. Or fix vaInitialize to return them.

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading