]> git.sesse.net Git - vlc/blobdiff - src/video_output/vout_pictures.c
macosx: Remove a lonesome pl_Yield.
[vlc] / src / video_output / vout_pictures.c
index 3a89686934581a1e75b46525700dbc8eaa9260b6..6b233df012d5433e0f1b154ab819b4305963d793 100644 (file)
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
 #include <vlc_vout.h>
 #include <vlc_osd.h>
+#include <vlc_filter.h>
 #include "vout_pictures.h"
 
 #include <assert.h>
@@ -377,7 +378,8 @@ picture_t * vout_RenderPicture( vout_thread_t *p_vout, picture_t *p_pic,
         }
 
         /* Convert image to the first direct buffer */
-        p_vout->chroma.pf_convert( p_vout, p_pic, p_tmp_pic );
+        p_vout->p_chroma->p_owner = (filter_owner_sys_t *)p_tmp_pic;
+        p_vout->p_chroma->pf_video_filter( p_vout->p_chroma, p_pic );
 
         /* Render subpictures on the first direct buffer */
         spu_RenderSubpictures( p_vout->p_spu, &p_vout->fmt_out, p_tmp_pic,
@@ -397,7 +399,8 @@ picture_t * vout_RenderPicture( vout_thread_t *p_vout, picture_t *p_pic,
                 return NULL;
 
         /* Convert image to the first direct buffer */
-        p_vout->chroma.pf_convert( p_vout, p_pic, &p_vout->p_picture[0] );
+        p_vout->p_chroma->p_owner = (filter_owner_sys_t *)&p_vout->p_picture[0];
+        p_vout->p_chroma->pf_video_filter( p_vout->p_chroma, p_pic );
 
         /* Render subpictures on the first direct buffer */
         spu_RenderSubpictures( p_vout->p_spu, &p_vout->fmt_out,
@@ -604,6 +607,8 @@ void vout_InitFormat( video_frame_format_t *p_format, vlc_fourcc_t i_chroma,
             break;
 
         case FOURCC_GREY:
+        case FOURCC_Y800:
+        case FOURCC_Y8:
             p_format->i_bits_per_pixel = 8;
             break;
 
@@ -833,6 +838,8 @@ int __vout_InitPicture( vlc_object_t *p_this, picture_t *p_pic,
             break;
 
         case FOURCC_GREY:
+        case FOURCC_Y800:
+        case FOURCC_Y8:
             p_pic->p->i_lines = i_height_aligned;
             p_pic->p->i_visible_lines = i_height;
             p_pic->p->i_pitch = i_width_aligned;
@@ -908,6 +915,20 @@ int vout_ChromaCmp( vlc_fourcc_t i_chroma, vlc_fourcc_t i_amorhc )
                     return 0;
             }
 
+        case FOURCC_GREY:
+        case FOURCC_Y800:
+        case FOURCC_Y8:
+            switch( i_amorhc )
+            {
+                case FOURCC_GREY:
+                case FOURCC_Y800:
+                case FOURCC_Y8:
+                    return 1;
+
+                default:
+                    return 0;
+            }
+
         default:
             return 0;
     }
@@ -923,6 +944,7 @@ int vout_ChromaCmp( vlc_fourcc_t i_chroma, vlc_fourcc_t i_amorhc )
 void __vout_CopyPicture( vlc_object_t *p_this,
                          picture_t *p_dest, picture_t *p_src )
 {
+    VLC_UNUSED( p_this );
     int i;
 
     for( i = 0; i < p_src->i_planes ; i++ )