]> git.sesse.net Git - vlc/commitdiff
Removed picture_heap_t rgb informations.
authorLaurent Aimar <fenrir@videolan.org>
Sun, 18 Apr 2010 02:17:02 +0000 (04:17 +0200)
committerLaurent Aimar <fenrir@videolan.org>
Sun, 18 Apr 2010 12:58:38 +0000 (14:58 +0200)
They are copies of vout->fmt_*.

include/vlc_vout.h
src/input/decoder.c
src/video_output/video_output.c
src/video_output/vout_wrapper.c

index 6f1c9820d50e6e4b882fb1f6b941268b47d796f4..005467d85cfbc01b7645a913f7f6b63ade01c617 100644 (file)
@@ -56,11 +56,6 @@ struct picture_heap_t
     /* Real pictures */
     picture_t*      pp_picture[VOUT_MAX_PICTURES];             /**< pictures */
     int             i_last_used_pic;              /**< last used pic in heap */
-
-    /* Stuff used for truecolor RGB planes */
-    uint32_t i_rmask; int i_rrshift, i_lrshift;
-    uint32_t i_gmask; int i_rgshift, i_lgshift;
-    uint32_t i_bmask; int i_rbshift, i_lbshift;
 };
 
 /*****************************************************************************
index 2dc6404a359524b1874f33f2925861fb4ce683bb..a9594f1185191aa586f43b1b265aa306a6568121 100644 (file)
@@ -2349,13 +2349,6 @@ static picture_t *vout_new_buffer( decoder_t *p_dec )
             p_dec->b_error = true;
             return NULL;
         }
-
-        if( p_owner->video.i_rmask )
-            p_owner->p_vout->render.i_rmask = p_owner->video.i_rmask;
-        if( p_owner->video.i_gmask )
-            p_owner->p_vout->render.i_gmask = p_owner->video.i_gmask;
-        if( p_owner->video.i_bmask )
-            p_owner->p_vout->render.i_bmask = p_owner->video.i_bmask;
     }
 
     /* Get a new picture
index 3b428f757c267a8a5d59c75043fb51a18180d13c..391ac2d1493bad1440c0b79f8555c60596e625a0 100644 (file)
@@ -66,9 +66,6 @@ static void     ErrorThread       ( vout_thread_t * );
 static void     CleanThread       ( vout_thread_t * );
 static void     EndThread         ( vout_thread_t * );
 
-static void VideoFormatImportRgb( video_format_t *, const picture_heap_t * );
-static void PictureHeapFixRgb( picture_heap_t * );
-
 static void     vout_Destructor   ( vlc_object_t * p_this );
 
 /* Object variables callbacks */
@@ -203,6 +200,8 @@ vout_thread_t *vout_Request( vlc_object_t *p_this, vout_thread_t *p_vout,
             free( psz_filter_chain );
         }
 
+#warning "FIXME: Check RGB masks in vout_Request"
+        /* FIXME: check RGB masks */
         if( p_vout->fmt_render.i_chroma != vlc_fourcc_GetCodec( VIDEO_ES, p_fmt->i_chroma ) ||
             p_vout->fmt_render.i_width != p_fmt->i_width ||
             p_vout->fmt_render.i_height != p_fmt->i_height ||
@@ -341,15 +340,14 @@ vout_thread_t * vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt )
     p_vout->fmt_render        = *p_fmt;   /* FIXME palette */
     p_vout->fmt_in            = *p_fmt;   /* FIXME palette */
 
+    video_format_FixRgb( &p_vout->fmt_render );
+    video_format_FixRgb( &p_vout->fmt_in );
+
     p_vout->render.i_width    = i_width;
     p_vout->render.i_height   = i_height;
     p_vout->render.i_chroma   = i_chroma;
     p_vout->render.i_aspect   = i_aspect;
 
-    p_vout->render.i_rmask    = p_fmt->i_rmask;
-    p_vout->render.i_gmask    = p_fmt->i_gmask;
-    p_vout->render.i_bmask    = p_fmt->i_bmask;
-
     p_vout->render.i_last_used_pic = -1;
 
     /* Zero the output heap */
@@ -359,10 +357,6 @@ vout_thread_t * vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt )
     p_vout->output.i_chroma   = 0;
     p_vout->output.i_aspect   = 0;
 
-    p_vout->output.i_rmask    = 0;
-    p_vout->output.i_gmask    = 0;
-    p_vout->output.i_bmask    = 0;
-
     /* Initialize misc stuff */
     p_vout->i_changes    = 0;
     p_vout->b_fullscreen = 0;
@@ -807,11 +801,8 @@ static int InitThread( vout_thread_t *p_vout )
 
     /* FIXME removed the need of both fmt_* and heap infos */
     /* Calculate shifts from system-updated masks */
-    PictureHeapFixRgb( &p_vout->render );
-    VideoFormatImportRgb( &p_vout->fmt_render, &p_vout->render );
-
-    PictureHeapFixRgb( &p_vout->output );
-    VideoFormatImportRgb( &p_vout->fmt_out, &p_vout->output );
+    video_format_FixRgb( &p_vout->fmt_render );
+    video_format_FixRgb( &p_vout->fmt_out );
 
     /* print some usefull debug info about different vout formats
      */
@@ -1339,57 +1330,6 @@ static void EndThread( vout_thread_t *p_vout )
 
 /* following functions are local */
 
-/**
- * This function copies all RGB informations from a picture_heap_t into
- * a video_format_t
- */
-static void VideoFormatImportRgb( video_format_t *p_fmt, const picture_heap_t *p_heap )
-{
-    p_fmt->i_rmask = p_heap->i_rmask;
-    p_fmt->i_gmask = p_heap->i_gmask;
-    p_fmt->i_bmask = p_heap->i_bmask;
-    p_fmt->i_rrshift = p_heap->i_rrshift;
-    p_fmt->i_lrshift = p_heap->i_lrshift;
-    p_fmt->i_rgshift = p_heap->i_rgshift;
-    p_fmt->i_lgshift = p_heap->i_lgshift;
-    p_fmt->i_rbshift = p_heap->i_rbshift;
-    p_fmt->i_lbshift = p_heap->i_lbshift;
-}
-
-/**
- * This funtion copes all RGB informations from a video_format_t into
- * a picture_heap_t
- */
-static void VideoFormatExportRgb( const video_format_t *p_fmt, picture_heap_t *p_heap )
-{
-    p_heap->i_rmask = p_fmt->i_rmask;
-    p_heap->i_gmask = p_fmt->i_gmask;
-    p_heap->i_bmask = p_fmt->i_bmask;
-    p_heap->i_rrshift = p_fmt->i_rrshift;
-    p_heap->i_lrshift = p_fmt->i_lrshift;
-    p_heap->i_rgshift = p_fmt->i_rgshift;
-    p_heap->i_lgshift = p_fmt->i_lgshift;
-    p_heap->i_rbshift = p_fmt->i_rbshift;
-    p_heap->i_lbshift = p_fmt->i_lbshift;
-}
-
-/**
- * This function computes rgb shifts from masks
- */
-static void PictureHeapFixRgb( picture_heap_t *p_heap )
-{
-    video_format_t fmt;
-
-    /* */
-    fmt.i_chroma = p_heap->i_chroma;
-    VideoFormatImportRgb( &fmt, p_heap );
-
-    /* */
-    video_format_FixRgb( &fmt );
-
-    VideoFormatExportRgb( &fmt, p_heap );
-}
-
 /*****************************************************************************
  * object variables callbacks: a bunch of object variables are used by the
  * interfaces to interact with the vout.
index 9ea1486e281520d3689f59e8e5db820f0bb9a88f..7a97877c71b6dc85e28f272f90452325bca3d6ff 100644 (file)
@@ -150,9 +150,6 @@ int vout_InitWrapper(vout_thread_t *vout)
     vout->output.i_width  = source.i_width;
     vout->output.i_height = source.i_height;
     vout->output.i_aspect = (int64_t)source.i_sar_num * source.i_width * VOUT_ASPECT_FACTOR / source.i_sar_den / source.i_height;
-    vout->output.i_rmask  = source.i_rmask;
-    vout->output.i_gmask  = source.i_gmask;
-    vout->output.i_bmask  = source.i_bmask;
 
     /* also set fmt_out (completly broken API) */
     vout->fmt_out.i_chroma         = vout->output.i_chroma;
@@ -164,6 +161,9 @@ int vout_InitWrapper(vout_thread_t *vout)
     vout->fmt_out.i_sar_den        = VOUT_ASPECT_FACTOR    * vout->output.i_width;
     vout->fmt_out.i_x_offset       = 0;
     vout->fmt_out.i_y_offset       = 0;
+    vout->fmt_out.i_rmask          = source.i_rmask;
+    vout->fmt_out.i_gmask          = source.i_gmask;
+    vout->fmt_out.i_bmask          = source.i_bmask;
 
     if (vout->fmt_in.i_visible_width  != source.i_visible_width ||
         vout->fmt_in.i_visible_height != source.i_visible_height ||