Summary: | [GStreamer] Video resolution changes trigger a crash in the TextureMapper | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Philippe Normand <pnormand> | ||||||||
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | pnormand, slomo, vjaquez, xclaesse, zan | ||||||||
Priority: | P2 | ||||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Attachments: |
|
Description
Philippe Normand
2014-09-24 04:30:18 PDT
One workaround is to clear m_buffer when video caps changed but the side effect is a quick flash during the video size transition... The proper fix would be to have DRAIN query support in the sink but currently only the OMX video decoder supports this, see also: https://bugzilla.gnome.org/show_bug.cgi?id=737240 Or you always pass caps and buffer around at the same time? You could use GstSample for that Created attachment 240473 [details]
patch
Comment on attachment 240473 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=240473&action=review Looks good overall and seems like a little simplification of the code :) > Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:421 > + GRefPtr<GstCaps> currentCaps = gst_sample_get_caps(m_sample); Doesn't this need the sampleMutex locked too? (In reply to comment #5) > Comment on attachment 240473 [details] > patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=240473&action=review > > Looks good overall and seems like a little simplification of the code :) > > > Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:421 > > + GRefPtr<GstCaps> currentCaps = gst_sample_get_caps(m_sample); > > Doesn't this need the sampleMutex locked too? Well that method is always invoked with the mutex locked already. Perhaps I can add an ASSERT about this. Or drop this method all together :) Created attachment 240485 [details]
patch
Oops the sample caps don't really need to be stored in a GRefPtr. Created attachment 240486 [details]
patch
Please review this one :)
Comment on attachment 240486 [details]
patch
Great =)
Committed r175370: <http://trac.webkit.org/changeset/175370> *** Bug 138505 has been marked as a duplicate of this bug. *** |