Bug 176789

Summary: [GTK][GStreamer] Replaying a webm video twice causes the video to stop getting rendered
Product: WebKit Reporter: Charlie Turner <cturner>
Component: WebKitGTKAssignee: Philippe Normand <pnormand>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, calvaris, magomez, pnormand
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
workaround
none
Patch calvaris: review+, calvaris: commit-queue-

Charlie Turner
Reported 2017-09-12 10:02:52 PDT
If you visit, https://bug787579.bugzilla-attachments.gnome.org/attachment.cgi?id=359591 You can do this, 1) Let the video play out 2) Click play again, let the video play out 3) And again 4) Click play again and you get some junk rendered and then a black screen. I don't see any GStreamer related error messages.
Attachments
workaround (7.39 KB, patch)
2018-02-07 09:25 PST, Philippe Normand
no flags
Patch (9.68 KB, patch)
2018-02-19 01:12 PST, Philippe Normand
calvaris: review+
calvaris: commit-queue-
Philippe Normand
Comment 1 2018-02-06 09:23:31 PST
I suppose this is happening with gst-gl enabled? Here rendering goes black at 3rd run, not the 4th.
Philippe Normand
Comment 2 2018-02-07 09:25:24 PST
Created attachment 333294 [details] workaround Maybe you can test this patch. It works here by ensuring the video sink has a valid context for every run but ideally I think we should receive the need-context everytime but it's not currently the case. See also https://bugzilla.gnome.org/show_bug.cgi?id=793224
Philippe Normand
Comment 3 2018-02-19 01:12:35 PST
Xabier Rodríguez Calvar
Comment 4 2018-02-19 02:12:21 PST
Comment on attachment 334143 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=334143&action=review > Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:411 > +GstContext* MediaPlayerPrivateGStreamerBase::requestGLContext(const gchar* contextType) gchar -> char > Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:80 > + GstContext* requestGLContext(const gchar* contextType); gchar -> char
Philippe Normand
Comment 5 2018-02-19 02:50:13 PST
Note You need to log in before you can comment on or make changes to this bug.