]> git.sesse.net Git - vlc/blobdiff - modules/audio_filter/format.c
Extract: thread-safety
[vlc] / modules / audio_filter / format.c
index 56543a8d2ebd3d6e59d22eae1f0d09836f6b1af8..0811231b104a31ce661f3fde102299723099b0e7 100644 (file)
@@ -30,7 +30,8 @@
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
+#include <vlc_plugin.h>
 #include <vlc_aout.h>
 #include <vlc_block.h>
 #include "vlc_filter.h"
@@ -116,7 +117,7 @@ static block_t *S8toU8( filter_t *, block_t * );
 static block_t *Swap16( filter_t *, block_t * );
 static block_t *Swap24( filter_t *, block_t * );
 
-static struct
+static const struct
 {
     vlc_fourcc_t i_src;
     vlc_fourcc_t i_dst;
@@ -200,13 +201,13 @@ static struct
 /*****************************************************************************
  * Module descriptor
  *****************************************************************************/
-vlc_module_begin();
-    set_description( _("Audio filter for PCM format conversion") );
-    set_category( CAT_AUDIO );
-    set_subcategory( SUBCAT_AUDIO_MISC );
-    set_capability( "audio filter2", 1 );
-    set_callbacks( Open, NULL );
-vlc_module_end();
+vlc_module_begin ()
+    set_description( N_("Audio filter for PCM format conversion") )
+    set_category( CAT_AUDIO )
+    set_subcategory( SUBCAT_AUDIO_MISC )
+    set_capability( "audio filter2", 1 )
+    set_callbacks( Open, NULL )
+vlc_module_end ()
 
 /*****************************************************************************
  * Open:
@@ -228,11 +229,14 @@ static int Open( vlc_object_t *p_this )
     p_filter->pf_audio_filter = ConvertTable[i].pf_convert;
     p_filter->fmt_out.audio = p_filter->fmt_in.audio;
     p_filter->fmt_out.audio.i_format = p_filter->fmt_out.i_codec;
+    p_filter->fmt_out.audio.i_bitspersample =
+        aout_BitsPerSample( p_filter->fmt_out.i_codec );
 
-    msg_Dbg( p_this, "%4.4s->%4.4s, bits per sample: %i",
+    msg_Dbg( p_this, "%4.4s->%4.4s, bits per sample: %i->%i",
              (char *)&p_filter->fmt_in.i_codec,
              (char *)&p_filter->fmt_out.i_codec,
-             p_filter->fmt_in.audio.i_bitspersample );
+             p_filter->fmt_in.audio.i_bitspersample,
+             p_filter->fmt_out.audio.i_bitspersample );
 
     return VLC_SUCCESS;
 }
@@ -242,6 +246,7 @@ static int Open( vlc_object_t *p_this )
  *****************************************************************************/
 static block_t *Float32toS24( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     float *p_in = (float *)p_block->p_buffer;
     uint8_t *p_out = (uint8_t *)p_in;
@@ -270,6 +275,7 @@ static block_t *Float32toS24( filter_t *p_filter, block_t *p_block )
 
 static block_t *Float32toS16( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     float *p_in = (float *)p_block->p_buffer;
     int16_t *p_out = (int16_t *)p_in;
@@ -298,6 +304,7 @@ static block_t *Float32toS16( filter_t *p_filter, block_t *p_block )
 
 static block_t *Float32toU16( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     float *p_in = (float *)p_block->p_buffer;
     uint16_t *p_out = (uint16_t *)p_in;
@@ -351,12 +358,13 @@ static block_t *S24toFloat32( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
 static block_t *S24toS16( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     uint8_t *p_in = (uint8_t *)p_block->p_buffer;
     uint8_t *p_out = (uint8_t *)p_in;
@@ -419,7 +427,7 @@ static block_t *S16toFloat32( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -452,7 +460,7 @@ static block_t *U16toFloat32( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -492,12 +500,13 @@ static block_t *S16toS24( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
 static block_t *S16toS8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     int16_t *p_in = (int16_t *)p_block->p_buffer;
     int8_t *p_out = (int8_t *)p_in;
@@ -510,6 +519,7 @@ static block_t *S16toS8( filter_t *p_filter, block_t *p_block )
 }
 static block_t *S16toU8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     int16_t *p_in = (int16_t *)p_block->p_buffer;
     uint8_t *p_out = (uint8_t *)p_in;
@@ -522,6 +532,7 @@ static block_t *S16toU8( filter_t *p_filter, block_t *p_block )
 }
 static block_t *S16toU16( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     int16_t *p_in = (int16_t *)p_block->p_buffer;
     uint16_t *p_out = (uint16_t *)p_in;
@@ -534,6 +545,7 @@ static block_t *S16toU16( filter_t *p_filter, block_t *p_block )
 
 static block_t *U16toS8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     uint16_t *p_in = (uint16_t *)p_block->p_buffer;
     int8_t *p_out = (int8_t *)p_in;
@@ -546,6 +558,7 @@ static block_t *U16toS8( filter_t *p_filter, block_t *p_block )
 }
 static block_t *U16toU8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     uint16_t *p_in = (uint16_t *)p_block->p_buffer;
     uint8_t *p_out = (uint8_t *)p_in;
@@ -558,6 +571,7 @@ static block_t *U16toU8( filter_t *p_filter, block_t *p_block )
 }
 static block_t *U16toS16( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     uint16_t *p_in = (uint16_t *)p_block->p_buffer;
     int16_t *p_out = (int16_t *)p_in;
@@ -570,6 +584,7 @@ static block_t *U16toS16( filter_t *p_filter, block_t *p_block )
 
 static block_t *S8toU8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     int8_t *p_in = (int8_t *)p_block->p_buffer;
     uint8_t *p_out = (uint8_t *)p_in;
@@ -581,6 +596,7 @@ static block_t *S8toU8( filter_t *p_filter, block_t *p_block )
 }
 static block_t *U8toS8( filter_t *p_filter, block_t *p_block )
 {
+    VLC_UNUSED(p_filter);
     int i;
     uint8_t *p_in = (uint8_t *)p_block->p_buffer;
     int8_t *p_out = (int8_t *)p_in;
@@ -619,7 +635,7 @@ static block_t *S8toU16( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -650,7 +666,7 @@ static block_t *U8toS16( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -682,7 +698,7 @@ static block_t *S8toS16( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -713,7 +729,7 @@ static block_t *U8toU16( filter_t *p_filter, block_t *p_block )
     p_block_out->i_length = p_block->i_length;
     p_block_out->i_rate = p_block->i_rate;
 
-    p_block->pf_release( p_block );
+    block_Release( p_block );
     return p_block_out;
 }
 
@@ -722,7 +738,8 @@ static block_t *U8toU16( filter_t *p_filter, block_t *p_block )
  *****************************************************************************/
 static block_t *Swap16( filter_t *p_filter, block_t *p_block )
 {
-    int i;
+    VLC_UNUSED(p_filter);
+    size_t i;
     uint8_t *p_in = (uint8_t *)p_block->p_buffer;
     uint8_t tmp;
 
@@ -739,7 +756,8 @@ static block_t *Swap16( filter_t *p_filter, block_t *p_block )
 
 static block_t *Swap24( filter_t *p_filter, block_t *p_block )
 {
-    int i;
+    VLC_UNUSED(p_filter);
+    size_t i;
     uint8_t *p_in = (uint8_t *)p_block->p_buffer;
     uint8_t tmp;