I am experiencing quite regular crashes within GStreamer backend of QMediaPlayer.
I am using 2 instances of QMediaPlayer. First instance's life span is long and the second one is quite short.
I've observed that during the construction of QMediaPlayer, QGstreamerPlayerSession is constructed as well.
There gst_type_find_register is called which registers playlist type and a callback to be executed: playlistTypeFindFunction. Pointer to self (this) is also supplied to registration function.
Now, I can see that sequence being called twice for both of QMediaPlayer objects. After some time, one of the players is deallocated and while using the remaining instance, quite often, it happens that playlistTypeFindFunction is called with a data pointing to already deallocated instance.
I dont see any deregistration happening in desctructor of QGstreamerPlayerSession.
I have attached a sample which can reproduce the issue.