[Webkit-unassigned] [Bug 177409] [GStreamer][MSE] gstreamer critical warning in gst_buffer_pool_acquire_buffer()

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Jan 19 14:21:59 PST 2018


https://bugs.webkit.org/show_bug.cgi?id=177409

--- Comment #1 from Alicia Boya GarcĂ­a <aboya at igalia.com> ---
I got this crash again and looked at it. At first it seemed very strange: why would the VP9 decoder have not initialized a buffer pool?

After looking at the gst log though, it all came clear: this critical happend just after destroying MediaPlayerPrivateGStreamerMSE.

At that point no streaming threads should be running. There is a race condition somewhere in the deinitialization code of the MSE player.

MediaSource::setReadyState(0x7fff5b8f8d20) : open -> closed
MediaSource::removeSourceBuffer() 0x7fff5b8f8d20
0:03:17.235106404 10336       0x4b4b00 DEBUG              webkitmse MediaSourceClientGStreamerMSE.cpp:99:abort: MediaSourceClientGStreamerMSE::abort
0:03:17.235231234 10336       0x4b4b00 DEBUG              webkitmse AppendPipeline.cpp:215:deinitialize:0x7fff7c0881e0 Deinitializating AppendPipeline (0x7fff7c0881e0)
0:03:17.235243074 10336       0x4b4b00 TRACE              webkitmse AppendPipeline.cpp:221:deinitialize:0x7fff7c0881e0 Setting AppendPipeline to GST_STATE_NULL (0x7fff7c0881e0)
0:03:17.235266926 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:5153:gst_base_sink_change_state:<appsink84> PLAYING to PAUSED
0:03:17.235272506 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:5162:gst_base_sink_change_state:<appsink84> got preroll lock
0:03:17.235275895 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:3341:gst_base_sink_needs_preroll:<appsink84> have_preroll: 0, EOS: 0 => needs preroll: 1
0:03:17.235281909 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:5184:gst_base_sink_change_state:<appsink84> PLAYING to PAUSED, we are not prerolled
0:03:17.235285351 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:5198:gst_base_sink_change_state:<appsink84> rendered: 36, dropped: 0
0:03:17.235327006 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:4159:gst_base_sink_set_flushing:<appsink84> flushing out data thread, need preroll to TRUE
0:03:17.235345164 10336       0x4b4b00 TRACE              webkitmse AppendPipeline.cpp:1046:appsinkCapsChanged:0x7fff7c0881e0 appsink-caps-changed message posted to bus
0:03:17.235353821 10336       0x4b4b00 DEBUG               basesink gstbasesink.c:994:gst_base_sink_set_last_buffer_unlocked:<appsink84> setting last buffer to (nil)
0:03:17.235755204 10336       0x4b4b00 DEBUG              webkitmse AppendPipeline.cpp:987:disconnectDemuxerSrcPadFromAppsinkFromAnyThread:0x7fff7c0881e0 Disconnecting appsink
0:03:17.236144897 10336       0x4b4b00 DEBUG              webkitmse PlaybackPipeline.cpp:153:removeSourceBuffer:<source> Element removed from MediaSource
0:03:17.236260974 10336       0x4b4b00 DEBUG              webkitmse AppendPipeline.cpp:215:deinitialize:0x7fff7c0881e0 Deinitializating AppendPipeline (0x7fff7c0881e0)
0:03:17.236269171 10336       0x4b4b00 TRACE              webkitmse AppendPipeline.cpp:208:~AppendPipeline:0x7fff7c0881e0 Destroying AppendPipeline (0x7fff7c0881e0)
MediaSource::removeSourceBuffer() 0x7fff5b8f8d20
0:03:17.236334569 10336       0x4b4b00 DEBUG              webkitmse AppendPipeline.cpp:215:deinitialize:0x7fff7c0882d0 Deinitializating AppendPipeline (0x7fff7c0882d0)
0:03:17.236341392 10336       0x4b4b00 TRACE              webkitmse AppendPipeline.cpp:221:deinitialize:0x7fff7c0882d0 Setting AppendPipeline to GST_STATE_NULL (0x7fff7c0882d0)
0:03:17.236474009 10336       0x4b4b00 DEBUG              webkitmse PlaybackPipeline.cpp:153:removeSourceBuffer:<source> Element removed from MediaSource
0:03:17.236485041 10336       0x4b4b00 DEBUG              webkitmse AppendPipeline.cpp:215:deinitialize:0x7fff7c0882d0 Deinitializating AppendPipeline (0x7fff7c0882d0)
0:03:17.236490246 10336       0x4b4b00 TRACE              webkitmse AppendPipeline.cpp:208:~AppendPipeline:0x7fff7c0882d0 Destroying AppendPipeline (0x7fff7c0882d0)
0:03:17.236533703 10336       0x4b4b00 TRACE              webkitmse MediaPlayerPrivateGStreamerMSE.cpp:119:~MediaPlayerPrivateGStreamerMSE: destroying the player (0x7fff8c58f040)
0:03:17.236545856 10336       0x4b4b00 DEBUG              webkitmse PlaybackPipeline.cpp:97:setWebKitMediaSrc: webKitMediaSrc=(nil)

(WebKitWebProcess:10336): GStreamer-CRITICAL **: gst_buffer_pool_acquire_buffer: assertion 'GST_IS_BUFFER_POOL (pool)' failed

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180119/3137a609/attachment.html>


More information about the webkit-unassigned mailing list