[vlc-devel] commit: vout: avoid applying subtitle offset twice and modify behavior when subtitles overlap (Jakob Leben )

git version control git at videolan.org
Sun Nov 29 12:12:37 CET 2009


vlc | branch: master | Jakob Leben <jleben at videolan.org> | Sun Nov 29 12:08:36 2009 +0100| [4c627dc613cfc9d740691baefdf1fe74108b4a63] | committer: Jakob Leben 

vout: avoid applying subtitle offset twice and modify behavior when subtitles overlap

Fixes the glitch when displaying subtitles and subtitle position != 0.
Modifies behavior when subtitles overlap: newer subtitles push older ones higher

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

 src/video_output/vout_subpictures.c |    9 ++-------
 1 files changed, 2 insertions(+), 7 deletions(-)

diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c
index e440967..47e24ea 100644
--- a/src/video_output/vout_subpictures.c
+++ b/src/video_output/vout_subpictures.c
@@ -519,17 +519,10 @@ void spu_RenderSubpictures( spu_t *p_spu,
             if( p_subpic->b_subtitle )
             {
                 area = spu_area_unscaled( area, scale );
-                if( !p_subpic->b_absolute && area.i_width > 0 && area.i_height > 0 )
-                {
-                    p_region->i_x = area.i_x;
-                    p_region->i_y = area.i_y;
-                }
                 if( p_subtitle_area )
                     p_subtitle_area[i_subtitle_area++] = area;
             }
         }
-        if( p_subpic->b_subtitle )
-            p_subpic->b_absolute = true;
     }
 
     /* */
@@ -1670,6 +1663,8 @@ static int SubpictureCmp( const void *s0, const void *s1 )
         r = IntegerCmp( p_subpic0->i_channel, p_subpic1->i_channel );
     if( !r )
         r = IntegerCmp( p_subpic0->i_order, p_subpic1->i_order );
+    //NOTE We swap subtitle order so that newer subtitles push older ones higher.
+    if( p_subpic0->b_subtitle && p_subpic1->b_subtitle ) r = !r;
     return r;
 }
 




More information about the vlc-devel mailing list