X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Faudio_filter%2Fconverter%2Fa52tofloat32.c;h=51ee9e47d0a64598d4ce1564a012297e790253d8;hb=0c7e60bf0a0e35f3c7a37e78a7771072d997a3c8;hp=083caf79a91c665be6d79bf317ee79566f09d84d;hpb=7f12470415d98e9e0ac725f2bb96b5fa74ef27f1;p=vlc diff --git a/modules/audio_filter/converter/a52tofloat32.c b/modules/audio_filter/converter/a52tofloat32.c index 083caf79a9..51ee9e47d0 100644 --- a/modules/audio_filter/converter/a52tofloat32.c +++ b/modules/audio_filter/converter/a52tofloat32.c @@ -3,7 +3,7 @@ * This plugin makes use of liba52 to decode A/52 audio * (http://liba52.sf.net/). ***************************************************************************** - * Copyright (C) 2001, 2002 the VideoLAN team + * Copyright (C) 2001-2009 the VideoLAN team * $Id$ * * Authors: Gildas Bazin @@ -102,8 +102,8 @@ vlc_module_begin () set_description( N_("ATSC A/52 (AC-3) audio decoder") ) set_category( CAT_INPUT ) set_subcategory( SUBCAT_INPUT_ACODEC ) - add_bool( "a52-dynrng", 1, NULL, DYNRNG_TEXT, DYNRNG_LONGTEXT, false ) - add_bool( "a52-upmix", 0, NULL, UPMIX_TEXT, UPMIX_LONGTEXT, true ) + add_bool( "a52-dynrng", true, NULL, DYNRNG_TEXT, DYNRNG_LONGTEXT, false ) + add_bool( "a52-upmix", false, NULL, UPMIX_TEXT, UPMIX_LONGTEXT, true ) set_capability( "audio filter", 100 ) set_callbacks( Create, Destroy ) @@ -119,7 +119,7 @@ vlc_module_end () static int Create( vlc_object_t *p_this ) { aout_filter_t *p_filter = (aout_filter_t *)p_this; - filter_sys_t *p_sys = (filter_sys_t *)p_filter->p_sys; + filter_sys_t *p_sys; int i_ret; if ( p_filter->input.i_format != VLC_CODEC_A52 @@ -274,8 +274,8 @@ static int Open( vlc_object_t *p_this, filter_sys_t *p_sys, /***************************************************************************** * Interleave: helper function to interleave channels *****************************************************************************/ -static void Interleave( float * p_out, const float * p_in, int i_nb_channels, - int *pi_chan_table ) +static void Interleave( sample_t * p_out, const sample_t * p_in, + int i_nb_channels, int *pi_chan_table ) { /* We do not only have to interleave, but also reorder the channels */ @@ -292,7 +292,7 @@ static void Interleave( float * p_out, const float * p_in, int i_nb_channels, /***************************************************************************** * Duplicate: helper function to duplicate a unique channel *****************************************************************************/ -static void Duplicate( float * p_out, const float * p_in ) +static void Duplicate( sample_t * p_out, const sample_t * p_in ) { int i; @@ -307,11 +307,11 @@ static void Duplicate( float * p_out, const float * p_in ) /***************************************************************************** * Exchange: helper function to exchange left & right channels *****************************************************************************/ -static void Exchange( float * p_out, const float * p_in ) +static void Exchange( sample_t * p_out, const sample_t * p_in ) { int i; - const float * p_first = p_in + 256; - const float * p_second = p_in; + const sample_t * p_first = p_in + 256; + const sample_t * p_second = p_in; for ( i = 0; i < 256; i++ ) { @@ -334,7 +334,7 @@ static void DoWork( aout_instance_t * p_aout, aout_filter_t * p_filter, #endif int i_flags = p_sys->i_flags; int i_bytes_per_block = 256 * p_sys->i_nb_channels - * sizeof(float); + * sizeof(sample_t); int i; /* Do the actual decoding now. */ @@ -374,19 +374,19 @@ static void DoWork( aout_instance_t * p_aout, aout_filter_t * p_filter, && (p_filter->output.i_physical_channels & (AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT)) ) { - Duplicate( (float *)(p_out_buf->p_buffer + i * i_bytes_per_block), + Duplicate( (sample_t *)(p_out_buf->p_buffer + i * i_bytes_per_block), p_samples ); } else if ( p_filter->output.i_original_channels & AOUT_CHAN_REVERSESTEREO ) { - Exchange( (float *)(p_out_buf->p_buffer + i * i_bytes_per_block), + Exchange( (sample_t *)(p_out_buf->p_buffer + i * i_bytes_per_block), p_samples ); } else { /* Interleave the *$£%ù samples. */ - Interleave( (float *)(p_out_buf->p_buffer + i * i_bytes_per_block), + Interleave( (sample_t *)(p_out_buf->p_buffer + i * i_bytes_per_block), p_samples, p_sys->i_nb_channels, p_sys->pi_chan_table); } } @@ -463,14 +463,14 @@ static block_t *Convert( filter_t *p_filter, block_t *p_block ) block_t *p_out; int i_out_size; - if( !p_block || !p_block->i_samples ) + if( !p_block || !p_block->i_nb_samples ) { if( p_block ) block_Release( p_block ); return NULL; } - i_out_size = p_block->i_samples * + i_out_size = p_block->i_nb_samples * p_filter->fmt_out.audio.i_bitspersample * p_filter->fmt_out.audio.i_channels / 8; @@ -482,7 +482,7 @@ static block_t *Convert( filter_t *p_filter, block_t *p_block ) return NULL; } - p_out->i_samples = p_block->i_samples; + p_out->i_nb_samples = p_block->i_nb_samples; p_out->i_dts = p_block->i_dts; p_out->i_pts = p_block->i_pts; p_out->i_length = p_block->i_length; @@ -495,15 +495,15 @@ static block_t *Convert( filter_t *p_filter, block_t *p_block ) in_buf.p_buffer = p_block->p_buffer; in_buf.i_nb_bytes = p_block->i_buffer; - in_buf.i_nb_samples = p_block->i_samples; + in_buf.i_nb_samples = p_block->i_nb_samples; out_buf.p_buffer = p_out->p_buffer; out_buf.i_nb_bytes = p_out->i_buffer; - out_buf.i_nb_samples = p_out->i_samples; + out_buf.i_nb_samples = p_out->i_nb_samples; DoWork( (aout_instance_t *)p_filter, &aout_filter, &in_buf, &out_buf ); p_out->i_buffer = out_buf.i_nb_bytes; - p_out->i_samples = out_buf.i_nb_samples; + p_out->i_nb_samples = out_buf.i_nb_samples; block_Release( p_block );