Bug 160764

Summary: [GStreamer][OWR] Video rendering fixes
Product: WebKit Reporter: Philippe Normand <pnormand>
Component: PlatformAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: calvaris, cgarcia, pnormand
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
patch calvaris: review+

Description Philippe Normand 2016-08-11 01:56:40 PDT
By bumping our JHBuild openwebrtc version we need some changes in the media player.
Comment 1 Philippe Normand 2016-08-11 02:12:32 PDT
Created attachment 285821 [details]
patch
Comment 2 Xabier Rodríguez Calvar 2016-08-12 01:34:59 PDT
Comment on attachment 285821 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=285821&action=review

> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp:346
> +    m_videoSink = sink;
> +#else
> +    GstElement* sink = gst_bin_new(nullptr);
> +    GstElement* gldownload = gst_element_factory_make("gldownload", nullptr);
> +    GstElement* videoconvert = gst_element_factory_make("videoconvert", nullptr);
> +    GstElement* webkitSink = MediaPlayerPrivateGStreamerBase::createVideoSink();
> +    gst_bin_add_many(GST_BIN(sink), gldownload, videoconvert, webkitSink, nullptr);
> +    gst_element_link_many(gldownload, videoconvert, webkitSink, nullptr);
> +    GRefPtr<GstPad> pad = gst_element_get_static_pad(gldownload, "sink");
> +    gst_element_add_pad(sink, gst_ghost_pad_new("sink", pad.get()));

Why are we keeping the m_videoSink for the if and not for the else?
Comment 3 Philippe Normand 2016-08-12 02:00:10 PDT
Comment on attachment 285821 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=285821&action=review

>> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp:346
>> +    gst_element_add_pad(sink, gst_ghost_pad_new("sink", pad.get()));
> 
> Why are we keeping the m_videoSink for the if and not for the else?

Because in the else m_videoSink is set from the ::createVideoSink method.
Comment 4 Philippe Normand 2016-08-12 03:38:01 PDT
Committed r204409: <http://trac.webkit.org/changeset/204409>