@ -1374,7 +1374,7 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data,
avctx - > audio_service_type = AV_AUDIO_SERVICE_TYPE_KARAOKE ;
/* get output buffer */
frame - > nb_samples = s - > num_blocks * 256 ;
frame - > nb_samples = s - > num_blocks * AC3_BLOCK_SIZE ;
if ( ( ret = ff_get_buffer ( avctx , frame , 0 ) ) < 0 )
return ret ;
@ -1395,7 +1395,7 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data,
}
if ( err )
for ( ch = 0 ; ch < s - > out_channels ; ch + + )
memcpy ( ( ( float * ) frame - > data [ ch ] ) + AC3_BLOCK_SIZE * blk , output [ ch ] , 1024 ) ;
memcpy ( ( ( float * ) frame - > data [ ch ] ) + AC3_BLOCK_SIZE * blk , output [ ch ] , sizeof ( * * output ) * AC3_BLOCK_SIZE ) ;
for ( ch = 0 ; ch < s - > out_channels ; ch + + )
output [ ch ] = s - > outptr [ channel_map [ ch ] ] ;
for ( ch = 0 ; ch < s - > out_channels ; ch + + ) {
@ -1408,7 +1408,7 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data,
/* keep last block for error concealment in next frame */
for ( ch = 0 ; ch < s - > out_channels ; ch + + )
memcpy ( s - > output [ ch ] , output [ ch ] , 1024 ) ;
memcpy ( s - > output [ ch ] , output [ ch ] , sizeof ( * * output ) * AC3_BLOCK_SIZE ) ;
* got_frame_ptr = 1 ;