]> git.sesse.net Git - vlc/commitdiff
- fixed the ratio/position problem in YUV, now patching Stable.
authorPierre Baillet <octplane@videolan.org>
Tue, 19 Dec 2000 17:51:32 +0000 (17:51 +0000)
committerPierre Baillet <octplane@videolan.org>
Tue, 19 Dec 2000 17:51:32 +0000 (17:51 +0000)
include/video_output.h
plugins/sdl/vout_sdl.c
src/video_output/video_output.c

index 69321d798e0236871380fdaaa664d3f01ed340a0..0326318f5b6d8362e12d9505b84fe96e759f4b0c 100644 (file)
@@ -185,6 +185,7 @@ typedef struct vout_thread_s
     boolean_t           b_scale;                    /* allow picture scaling */
     mtime_t             render_time;             /* last picture render time */
 
+
     /* Idle screens management */
     mtime_t             last_display_date;     /* last non idle display date */
     mtime_t             last_idle_date;            /* last idle display date */
index c1cafa731d0d5b4f14cc906e47edac087e917af4..54d71a06981cad6d947241b2086f79caebdb2f27 100644 (file)
@@ -233,8 +233,8 @@ void vout_SDLDisplay( vout_thread_t *p_vout )
                                              SDL_YV12_OVERLAY, 
                                              p_vout->p_sys->p_display
                                            );
-                intf_Msg("[YUV acceleration] : %d\n",
-                            p_vout->p_sys->p_overlay->hw_overlay);
+                intf_Msg("[YUV acceleration] : %d,\n",
+                            p_vout->p_sys->p_overlay->hw_overlay); 
             }
 
             SDL_LockYUVOverlay(p_vout->p_sys->p_overlay);
@@ -254,12 +254,12 @@ void vout_SDLDisplay( vout_thread_t *p_vout )
                    p_vout->p_rendered_pic->p_u,
                    p_vout->p_sys->p_overlay->h *
                    p_vout->p_sys->p_overlay->pitches[2] / 2);
-        
-            disp.x = 0;
-            disp.y = 0;
-            disp.w = p_vout->i_width;
-            disp.h = p_vout->i_height;
-        
+       
+            disp.w = (&p_vout->p_buffer[p_vout->i_buffer_index])->i_pic_width;
+            disp.h = (&p_vout->p_buffer[p_vout->i_buffer_index])->i_pic_height;
+            disp.x = (p_vout->i_width - disp.w)/2;
+            disp.y = (p_vout->i_height - disp.h)/2;
             SDL_DisplayYUVOverlay( p_vout->p_sys->p_overlay , &disp );
             SDL_UnlockYUVOverlay(p_vout->p_sys->p_overlay);
         }
index 4a93b4593f893d44b0e3dae45959e052bc031375..27fabbc701dc3440a2d4f027527efb61f24ff30b 100644 (file)
@@ -1069,6 +1069,9 @@ static void RunThread( vout_thread_t *p_vout)
             b_display = p_vout->b_active;
             p_vout->last_display_date = display_date;
             p_vout->p_rendered_pic = p_pic;
+            
+
+
 
             /* FIXME: if b_need_render == 0 we need to do something with
              * the subpictures one day. */
@@ -1571,6 +1574,7 @@ static void SetBufferPicture( vout_thread_t *p_vout, picture_t *p_pic )
         /* Set picture position */
         i_pic_x = (p_vout->i_width - i_pic_width) / 2;
         i_pic_y = (p_vout->i_height - i_pic_height) / 2;
+
     }
     else
     {
@@ -1670,7 +1674,9 @@ static void RenderPicture( vout_thread_t *p_vout, picture_t *p_pic )
 #ifdef DEBUG_VOUT
     render_time = mdate();
 #endif
 
+    
     /*
      * Choose appropriate rendering function and render picture
      */