]> git.sesse.net Git - vlc/blobdiff - modules/codec/mash.cpp
Fix MS ADPCM in w64 files.
[vlc] / modules / codec / mash.cpp
index 74e63f885a843cba4f65a1e7d3d70aa58ee96828..c5dce5bfe35fb08226108e8085e09dddef81b735 100644 (file)
@@ -28,9 +28,9 @@
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
+#include <vlc_plugin.h>
 #include <vlc_codec.h>
-#include <vlc_vout.h>
 #include <vlc_block.h>
 
 #include <p64/p64.h>
@@ -66,13 +66,13 @@ static block_t   *SendFrame  ( decoder_t *, block_t * );
 /*****************************************************************************
  * Module descriptor
  *****************************************************************************/
-vlc_module_begin();
-    set_description( _("Video decoder using openmash") );
-    set_capability( "decoder", 50 );
-    set_category( CAT_INPUT );
-    set_subcategory( SUBCAT_INPUT_VCODEC );
-    set_callbacks( OpenDecoder, CloseDecoder );
-vlc_module_end();
+vlc_module_begin ()
+    set_description( N_("Video decoder using openmash") )
+    set_capability( "decoder", 50 )
+    set_category( CAT_INPUT )
+    set_subcategory( SUBCAT_INPUT_VCODEC )
+    set_callbacks( OpenDecoder, CloseDecoder )
+vlc_module_end ()
 
 /*****************************************************************************
  * OpenDecoder: probe the decoder and return score
@@ -85,8 +85,7 @@ static int OpenDecoder( vlc_object_t *p_this )
     switch( p_dec->fmt_in.i_codec )
     {
         /* Planar YUV */
-        case VLC_FOURCC('h','2','6','1'):
-        case VLC_FOURCC('H','2','6','1'):
+        case VLC_CODEC_H261:
             break;
 
         default:
@@ -96,10 +95,7 @@ static int OpenDecoder( vlc_object_t *p_this )
     /* Allocate the memory needed to store the decoder's structure */
     if( ( p_dec->p_sys = p_sys =
           (decoder_sys_t *)malloc(sizeof(decoder_sys_t)) ) == NULL )
-    {
-        msg_Err( p_dec, "out of memory" );
-        return VLC_EGENERIC;
-    }
+        return VLC_ENOMEM;
     /* Misc init */
     p_sys->i_pts = 0;
     p_sys->b_inited = false;
@@ -107,7 +103,7 @@ static int OpenDecoder( vlc_object_t *p_this )
 
     /* Set output properties */
     p_dec->fmt_out.i_cat = VIDEO_ES;
-    p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+    p_dec->fmt_out.i_codec = VLC_CODEC_I420;
 
     /* Set callbacks */
     p_dec->pf_decode_video = (picture_t *(*)(decoder_t *, block_t **))
@@ -194,9 +190,9 @@ static void *DecodeBlock( decoder_t *p_dec, block_t **pp_block )
     {
         msg_Dbg( p_dec, "video size is perhaps %dx%d", i_width,
                   i_height);
-        vout_InitFormat( &p_dec->fmt_out.video, VLC_FOURCC('I','4','2','0'),
-                         i_width, i_height,
-                         VOUT_ASPECT_FACTOR * i_width / i_height );
+        video_format_Setup( &p_dec->fmt_out.video, VLC_CODEC_I420,
+                            i_width, i_height,
+                            VOUT_ASPECT_FACTOR * i_width / i_height );
         p_sys->b_inited = true;
     }
     p_pic = NULL;
@@ -204,7 +200,7 @@ static void *DecodeBlock( decoder_t *p_dec, block_t **pp_block )
 //    p_sys->p_decoder->sync();
     if( p_block->i_flags & BLOCK_FLAG_END_OF_FRAME )
     {
-        p_pic = p_dec->pf_vout_buffer_new( p_dec );
+        p_pic = decoder_NewPicture( p_dec );
         if( !p_pic )
         {
             block_Release( p_block );