]> git.sesse.net Git - vlc/blobdiff - modules/codec/ogt/cvd.c
* ALL: separation of the SPU engine from the VOUT.
[vlc] / modules / codec / ogt / cvd.c
index ed6c5d633ccccc35f7f9ab894bbc8cb1a24215cb..46abe55ca2552dfe8e2f5b8cf87bf177f53927c7 100644 (file)
@@ -75,10 +75,9 @@ vlc_module_end();
  *****************************************************************************/
 
 static block_t *Reassemble( decoder_t *, block_t ** );
-static void     Decode   ( decoder_t *, block_t ** );
+static subpicture_t *Decode( decoder_t *, block_t ** );
 static block_t *Packetize( decoder_t *, block_t ** );
 
-
 /*****************************************************************************
  * VCDSubOpen
  *****************************************************************************
@@ -140,7 +139,7 @@ static int PacketizerOpen( vlc_object_t *p_this )
 /*****************************************************************************
  * Decode:
  *****************************************************************************/
-static void
+static subpicture_t *
 Decode ( decoder_t *p_dec, block_t **pp_block )
 {
     decoder_sys_t *p_sys = p_dec->p_sys;
@@ -159,8 +158,8 @@ Decode ( decoder_t *p_dec, block_t **pp_block )
         {
             if( p_last_vout != p_sys->p_vout )
             {
-                p_sys->i_subpic_channel =
-                    vout_RegisterOSDChannel( p_sys->p_vout );
+                spu_Control( p_sys->p_vout->p_spu, SPU_CHANNEL_REGISTER,
+                             &p_sys->i_subpic_channel );
             }
 
             /* Parse and decode */
@@ -172,6 +171,7 @@ Decode ( decoder_t *p_dec, block_t **pp_block )
         VCDSubInitSubtitleBlock ( p_sys );
     }
 
+    return NULL;
 }
 
 /*****************************************************************************