<html><head></head><body>I agree that it seems wrong, but I don't think that the grand father clause applies here. A decoder could already pass an odd geometry explicitly, so in all likelihood the current situation is a bug.<br><br><div class="gmail_quote">Le 19 février 2019 11:38:19 GMT+02:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">It seems wrong to do it after the width/height has been adjusted for the chroma.<br>The original width/height is more likely how it's intended to be<br>displayed (and this is an odd value to set by the decoder with mismatching<br>chroma padding, so this must be it).<br><br>But that's how it was done in the vout so we keep it for now<hr> src/input/decoder_helpers.c | 19 +++++++++++++++++++<br> 1 file changed, 19 insertions(+)<br><br>diff --git a/src/input/decoder_helpers.c b/src/input/decoder_helpers.c<br>index 36043753ca..c2242c330a 100644<br>--- a/src/input/decoder_helpers.c<br>+++ b/src/input/decoder_helpers.c<br>@@ -108,6 +108,25 @@ int decoder_UpdateVideoFormat( decoder_t *dec )<br>         }<br>     }<br> <br>+    if( !fmt_out.i_visible_width || !fmt_out.i_visible_height )<br>+    {<br>+        if( dec->fmt_in.video.i_visible_width &&<br>+            dec->fmt_in.video.i_visible_height )<br>+        {<br>+            fmt_out.i_visible_width  = dec->fmt_in.video.i_visible_width;<br>+            fmt_out.i_visible_height = dec->fmt_in.video.i_visible_height;<br>+            fmt_out.i_x_offset       = dec->fmt_in.video.i_x_offset;<br>+            fmt_out.i_y_offset       = dec->fmt_in.video.i_y_offset;<br>+        }<br>+        else<br>+        {<br>+            fmt_out.i_visible_width  = fmt_out.i_width;<br>+            fmt_out.i_visible_height = fmt_out.i_height;<br>+            fmt_out.i_x_offset       = 0;<br>+            fmt_out.i_y_offset       = 0;<br>+        }<br>+    }<br>+<br>     video_format_t original = dec->fmt_out.video;<br>     dec->fmt_out.video = fmt_out;<br>     int err = dec->cbs->video.format_update( dec );</pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>