<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head><!--[if gte mso 9]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--></head><body><div style="color:#000; background-color:#fff; font-family:lucida console, sans-serif;font-size:13px"><div id="yui_3_16_0_ym19_1_1475053871080_38855"><span id="yui_3_16_0_ym19_1_1475053871080_38992">You might also need to turn off auto fill background.</span></div><div id="yui_3_16_0_ym19_1_1475053871080_39002"><span><br></span></div><div dir="ltr" id="yui_3_16_0_ym19_1_1475053871080_38935"><span id="yui_3_16_0_ym19_1_1475053871080_38933">Take a look here : <a href="https://bitbucket.org/filnet/librepilot/src/13a109f4ea378bf8f4e9542bbced3b3e2bcc203f/ground/gcs/src/libs/gstreamer/videowidget.cpp?at=video_wip&fileviewer=file-view-default" class="enhancr2_43f2346b-89ec-d45a-2d4f-1532d27b7d73" id="yui_3_16_0_ym19_1_1475053871080_38932">filnet / LibrePilot    / source  / ground / gcs / src / libs / gstreamer / videowidget.cpp  — Bitbucket</a><br></span></div><div dir="ltr"><span id="yui_3_16_0_ym19_1_1475053871080_38933"><br></span></div><div dir="ltr"><span id="yui_3_16_0_ym19_1_1475053871080_38933"></span></div><div><br></div><div id="enhancr2_43f2346b-89ec-d45a-2d4f-1532d27b7d73" class="yahoo-link-enhancr-card  ymail-preserve-class ymail-preserve-style" style="max-width:400px;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;" data-url="https://bitbucket.org/filnet/librepilot/src/13a109f4ea378bf8f4e9542bbced3b3e2bcc203f/ground/gcs/src/libs/gstreamer/videowidget.cpp?at=video_wip&fileviewer=file-view-default" data-type="yenhancr" data-category="article" data-embed-url="" data-size="medium" dir="ltr" contenteditable="false"> <a href="https://bitbucket.org/filnet/librepilot/src/13a109f4ea378bf8f4e9542bbced3b3e2bcc203f/ground/gcs/src/libs/gstreamer/videowidget.cpp?at=video_wip&fileviewer=file-view-default" style="text-decoration:none !important; color: #000 !important;" class="yahoo-enhancr-cardlink" target="_blank" rel="noreferrer" id="yui_3_16_0_ym19_1_1475053871080_39016"> <table class="card-wrapper yahoo-ignore-table" style="max-width:400px;" id="yui_3_16_0_ym19_1_1475053871080_39015" cellspacing="0" cellpadding="0" border="0"> <tbody id="yui_3_16_0_ym19_1_1475053871080_39014"><tr id="yui_3_16_0_ym19_1_1475053871080_39013"> <td id="yui_3_16_0_ym19_1_1475053871080_39012" width="400"> <table class="card yahoo-ignore-table" style="max-width:400px;" id="yui_3_16_0_ym19_1_1475053871080_39011" width="100%" cellspacing="0" cellpadding="0" border="0"> <tbody id="yui_3_16_0_ym19_1_1475053871080_39010"><tr id="yui_3_16_0_ym19_1_1475053871080_39009"> <td class="card-primary-image-cell" style="background:#000 url('https://s.yimg.com/vv//api/res/1.2/r9NeT6zuz1U48Jy.9EY7zg--/YXBwaWQ9bWFpbDtmaT1maWxsO2g9MjAwO3c9NDAw/https://d301sr5gafysq2.cloudfront.net/4ff14bd6fb7a/img/repo-avatars/c_plus_plus.svg.cf.jpg') no-repeat center center;background-size:cover;height:200px;position:relative;" id="yui_3_16_0_ym19_1_1475053871080_39008" valign="top" bgcolor="#000000" background="https://s.yimg.com/vv//api/res/1.2/r9NeT6zuz1U48Jy.9EY7zg--/YXBwaWQ9bWFpbDtmaT1maWxsO2g9MjAwO3c9NDAw/https://d301sr5gafysq2.cloudfront.net/4ff14bd6fb7a/img/repo-avatars/c_plus_plus.svg.cf.jpg"> <!--[if gte mso 9]><v:rect fill="true" stroke="false" style="width:400px;height:218px;position:absolute;top:0;left:0;"><v:fill type="frame" color="#000000" src="https://s.yimg.com/vv//api/res/1.2/r9NeT6zuz1U48Jy.9EY7zg--/YXBwaWQ9bWFpbDtmaT1maWxsO2g9MjAwO3c9NDAw/https://d301sr5gafysq2.cloudfront.net/4ff14bd6fb7a/img/repo-avatars/c_plus_plus.svg.cf.jpg"/></v:rect><![endif]--> <table class="yahoo-ignore-table" valign="top" style="width:100%;" id="yui_3_16_0_ym19_1_1475053871080_39007" cellspacing="0" cellpadding="0" border="0"> <tbody id="yui_3_16_0_ym19_1_1475053871080_39006"><tr id="yui_3_16_0_ym19_1_1475053871080_39005"> <td style="background:transparent url('https://s.yimg.com/nq/storm/assets/enhancrV2/12/overlay-tile.png') repeat left top;height:200px;" id="yui_3_16_0_ym19_1_1475053871080_39004" valign="top" bgcolor="transparent" background="https://s.yimg.com/nq/storm/assets/enhancrV2/12/overlay-tile.png"> <!--[if gte mso 9]><v:rect fill="true" stroke="false" style="width:400px;height:218px;position:absolute;top:-18px;left:0;"><v:fill type="pattern" color="#000000" src="https://s.yimg.com/nq/storm/assets/enhancrV2/12/overlay-tile.png"/><v:textbox inset="0,0,20px,0"><![endif]--> <table class="yahoo-ignore-table" style="width:100%;height:185px;min-height:185px;" id="yui_3_16_0_ym19_1_1475053871080_39003" height="185"> <tbody><tr> <td class="card-richInfo2" style="text-align:left;text-align:left;padding:15px 0 0 15px;vertical-align:top;">  </td> <td class="card-actions" style="text-align:right;padding:15px 15px 0 0;vertical-align:top;"> <div class="card-share-container"></div> </td> </tr> </tbody></table> <!--[if gte mso 9]></v:textbox></v:rect><![endif]--> </td> </tr> </tbody></table> </td> </tr> <tr> <td> <table class="card-info yahoo-ignore-table" style="background:#fff;position:relative;z-index:2;width:95%;max-width:380px;border:1px solid #e0e4e9;border-bottom:3px solid #000000;margin-top:-40px;margin-left:auto;margin-right:auto;" cellspacing="0" cellpadding="0" border="0" align="center"> <tbody><tr> <td style="background-color:#ffffff;padding:16px 0 16px 12px;vertical-align:top;">  </td> <td style="vertical-align:middle;padding:16px 12px;width:99%;"> <h2 class="card-title" style="font-size: 16px; line-height:19px; margin:0 0 4px 0;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;word-break:break-word;">filnet / LibrePilot    / source  / ground / gcs / src / libs / gstreamer / ...</h2>  <div class="card-description" style="font-size:11px;line-height:15px;color:#999;word-break:break-word;"></div> </td> <td style="text-align:right;padding:16px 12px 16px 0;">  </td> </tr> </tbody></table> </td> </tr> </tbody></table> </td> </tr> </tbody></table> </a></div><div><br></div> <div class="qtdSeparateBR"><br><br></div><div class="yahoo_quoted" style="display: block;"> <div style="font-family: lucida console, sans-serif; font-size: 13px;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div dir="ltr"><font size="2" face="Arial"> Le Mercredi 28 septembre 2016 14h45, philippe renon <philippe_renon@yahoo.fr> a écrit :<br></font></div> <blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;"> <br><br> <div class="y_msg_container"><div id="yiv9566362592"><div><div style="color:#000;background-color:#fff;font-family:lucida console, sans-serif;font-size:13px;"><div id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34904"><span>Hi,<br clear="none"></span></div><div id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34936"><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34935"><br clear="none"></span></div><div id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34937"><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34935">You'll need to expose the overlay in every Qt paint event to fix this issue.</span></div><div><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34935"><br clear="none"></span></div><div id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_34980"></div><pre id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35071"><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35072">void</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35073">VideoWidget</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35074">::</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35075">paintEvent</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35076">(</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35077">QPaintEvent</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35078">*</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35079">event</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35080">)</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35081" name="videowidget.cpp-200" href=""></a><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35082">{</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35083" name="videowidget.cpp-201" href=""></a>    <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35084">// qDebug() << QString("VideoWidget::paintEvent - %0").arg((long)winId());</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35085" name="videowidget.cpp-202" href=""></a>    <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35086">if</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35087">(</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35088">overlay</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35089">)</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35090">{</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35091" name="videowidget.cpp-203" href=""></a>        <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35092">overlay</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35093">-></span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35094">expose</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35095">();</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35096" name="videowidget.cpp-204" href=""></a>    <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35097">}</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35098">else</span> <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35099">{</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35100" name="videowidget.cpp-205" href=""></a>        <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35101">QWidget</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35102">::</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35103">paintEvent</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35104">(</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35105">event</span><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35106">);</span>
    <span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35113">}</span>
<a rel="nofollow" shape="rect" id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35114" name="videowidget.cpp-208" href=""></a><span id="yiv9566362592yui_3_16_0_ym19_1_1475053871080_35115">}</span></pre> <div class="yiv9566362592qtdSeparateBR"><br clear="none"><br clear="none"></div><div class="yiv9566362592yqt3403958419" id="yiv9566362592yqt57910"><div class="yiv9566362592yahoo_quoted" style="display:block;"> <div style="font-family:lucida console, sans-serif;font-size:13px;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div dir="ltr"><font size="2" face="Arial"> Le Mercredi 28 septembre 2016 0h00, doubledw <dwood@mak.com> a écrit :<br clear="none"></font></div> <blockquote style="border-left:2px solid rgb(16, 16, 255);margin-left:5px;margin-top:5px;padding-left:5px;"> <br clear="none"><br clear="none"> <div class="yiv9566362592y_msg_container">I am sending video playback to a Qt widget using<br clear="none">gst_video_overlay_set_window_handle (Windows VC10-64bit, Qt 4.8.7).<br clear="none">Everything is working smoothly except when I pause playback<br clear="none"><br clear="none">         gst_element_set_state(myPipeline, GST_STATE_PAUSED);<br clear="none"><br clear="none">After the pause, the view goes blank if I move focus away from the Qt widget<br clear="none">or resize the view smaller. If after going blank, I resize the view bigger,<br clear="none">the paused frame will reappear.<br clear="none"><br clear="none">Is there any callback that I can register or signal that I can catch with<br clear="none">gstreamer to control when a paused image is rendered?<br clear="none"><br clear="none">I have tried overriding the various Qt events to prevent the widget from<br clear="none">repainting over the paused image. Even when Qt repainting is short-circuited<br clear="none">the view becomes blank. Based on suggestions from this mailing list, I have<br clear="none">also tried performing gst_video_overlay_expose to re-render the paused<br clear="none">image. However, when I trace the execution after the view has gone blank and<br clear="none">I do another resize smaller, I see where I perform the<br clear="none">gst_video_overlay_expose and the image is re-rendered. The execution then<br clear="none">continues outside of my application's control and something else blanks out<br clear="none">the view again.<br clear="none"><br clear="none">Thanks for any help you can provide.<br clear="none"><br clear="none"><br clear="none"><br clear="none"><br clear="none">--<br clear="none">View this message in context: <a rel="nofollow" shape="rect" target="_blank" href="http://gstreamer-devel.966125.n4.nabble.com/Paused-playback-in-Qt-window-blanks-out-when-losing-focus-or-resizing-smaller-tp4679824.html">http://gstreamer-devel.966125.n4.nabble.com/Paused-playback-in-Qt-window-blanks-out-when-losing-focus-or-resizing-smaller-tp4679824.html</a><br clear="none">Sent from the GStreamer-devel mailing list archive at Nabble.com.<br clear="none">_______________________________________________<br clear="none">gstreamer-devel mailing list<br clear="none"><a rel="nofollow" shape="rect" ymailto="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br clear="none"><a rel="nofollow" shape="rect" target="_blank" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br clear="none"><br clear="none"><br clear="none"></div> </blockquote> </div> </div>  </div></div></div></div></div><br><br></div> </blockquote> </div> </div>  </div></div></body></html>