[vlc-commits] vout: do not blend SPU early based on resolution

Rémi Denis-Courmont git at videolan.org
Thu Dec 27 18:30:57 CET 2018


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Wed Dec 26 10:33:05 2018 +0200| [59a14dd7a0ef3a78ab0eb1a1912ab04dca01b234] | committer: Rémi Denis-Courmont

vout: do not blend SPU early based on resolution

In general, the best SPU quality should be achieved by rendering
directly to the intended display resolution rather than scaling.

This also avoids certain problems:

- If there is no blending for the source chroma, blending fails
  depending on the display resolution. This is a real problem now with
  opaque chromas and "weird" high-depth chromas.
- If the source resolution is really large, rendering to it is a waste
  of processing power.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=59a14dd7a0ef3a78ab0eb1a1912ab04dca01b234
---

 src/video_output/video_output.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c
index 8c1350feb0..393d3705f2 100644
--- a/src/video_output/video_output.c
+++ b/src/video_output/video_output.c
@@ -1047,9 +1047,7 @@ static int ThreadDisplayRenderPicture(vout_thread_t *vout, bool is_forced)
     //the source format.
     const bool do_early_spu = !do_dr_spu &&
                                vd->source.orientation == ORIENT_NORMAL &&
-                              (vd->info.is_slow ||
-                               do_snapshot ||
-                               vd->fmt.i_width * vd->fmt.i_height <= vd->source.i_width * vd->source.i_height);
+                              (vd->info.is_slow || do_snapshot);
 
     const vlc_fourcc_t *subpicture_chromas;
     video_format_t fmt_spu;



More information about the vlc-commits mailing list