Decoding deadlock hint during seek

Michael Nazzareno Trimarchi michael at amarulasolutions.com
Thu Jul 16 17:51:09 UTC 2020


Hi

This is more straight forward and happen using QTMultimedia and seek on mpp

Michael

On Thu, Jul 16, 2020 at 7:23 PM David Ing <ding at panopto.com> wrote:
>
> In the past, I have encountered deadlocks when a part of my pipeline has a demuxer or a tee, or basically some kind of element which "splits" a single stream into multiple streams.  The outputs (source pads) of all such elements should always be attached to some kind of queue because a queue is a thread boundary.
>
> So I guess step 1 is to analyze your pipeline and make sure you have queues in the right places.
>
> If you are still stuck then sometimes you can add more queues into random spots in your pipeline to see if that fixes the problem.
>
>
> On Thu, Jul 16, 2020 at 7:16 AM Michael Nazzareno Trimarchi <michael at amarulasolutions.com> wrote:
>>
>> Hi all
>>
>> 1   __libc_do_syscall                         libc-do-syscall.S
>>             48   0xb4f10054
>> 2   __lll_lock_wait                           lowlevellock.c
>>             46   0xb4f0de42
>> 3   __GI___pthread_mutex_lock                 pthread_mutex_lock.c
>>             113  0xb4f088ac
>> 4   g_rec_mutex_lock                          gthread-posix.c
>>             308  0xb4b87120
>> 5   gst_pad_stop_task                         gstpad.c
>>             6301 0xaddf1d68
>> 6   gst_mpp_video_dec_sink_event              gstmppvideodec.c
>>             786  0xac00e816
>> 7   gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 8   gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 9   gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 10  gst_base_transform_sink_eventfunc         gstbasetransform.c
>>             1910 0xadeaed82
>> 11  gst_capsfilter_sink_event                 gstevent.h
>>             436  0xad5547e2
>> 12  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 13  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 14  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 15  gst_base_parse_sink_event_default         gstbaseparse.c
>>             1466 0xade96b6a
>> 16  gst_h264_parse_event                      gsth264parse.c
>>             2905 0xac0752d8
>> 17  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 18  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 19  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 20  gst_multi_queue_sink_event                gstmultiqueue.c
>>             2274 0xad56cb50
>> 21  gst_pad_send_event_unchecked              gstpad.c
>>             5760 0xadde88d8
>> 22  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 23  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 24  gst_qtdemux_push_event                    qtdemux.c
>>             1007 0xac98f082
>> 25  gst_qtdemux_do_seek                       qtdemux.c
>>             1659 0xac99efca
>> 26  gst_qtdemux_handle_src_event              qtdemux.c
>>             1791 0xac99efca
>> 27  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 28  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 29  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 30  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 31  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 32  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 33  gst_base_parse_handle_seek                gstevent.h
>>             436  0xade92c4e
>> 34  gst_base_parse_src_event_default          gstbaseparse.c
>>             1635 0xade92c4e
>> 35  gst_h264_parse_src_event                  gsth264parse.c
>>             2942 0xac079b50
>> 36  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 37  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 38  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 39  gst_base_transform_src_eventfunc          gstbasetransform.c
>>             1962 0xadeaf226
>> 40  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 41  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 42  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 43  gst_video_decoder_src_event_default       gstvideodecoder.c
>>             1494 0xad7b9ba6
>> 44  gst_pad_send_event_unchecked              gstpad.c
>>             5761 0xadde8aec
>> 45  gst_pad_push_event_unchecked              gstpad.c
>>             5406 0xadde8fa6
>> 46  gst_pad_push_event                        gstpad.c
>>             5543 0xaddf0cbc
>> 47  event_forward_func                        gstevent.h
>>             436  0xaddf0f7e
>>
>> Need some help/idea how debug decoder deadlock on seek on video decoding.
>>
>> Michael
>>
>>
>> --
>> Michael Nazzareno Trimarchi
>> Amarula Solutions BV
>> COO Co-Founder
>> Cruquiuskade 47 Amsterdam 1018 AM NL
>> T. +31(0)851119172
>> M. +39(0)3479132170
>> [`as] https://www.amarulasolutions.com
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



-- 
Michael Nazzareno Trimarchi
Amarula Solutions BV
COO Co-Founder
Cruquiuskade 47 Amsterdam 1018 AM NL
T. +31(0)851119172
M. +39(0)3479132170
[`as] https://www.amarulasolutions.com


More information about the gstreamer-devel mailing list