]> git.sesse.net Git - vlc/blob - src/ac3_decoder/ac3_decoder.c
Le retour du demoronifier qui n'est pas content.
[vlc] / src / ac3_decoder / ac3_decoder.c
1 #include <math.h>
2 #include <sys/uio.h>                                            /* "input.h" */
3
4 #include "common.h"
5 #include "config.h"
6 #include "vlc_thread.h"
7 #include "mtime.h"
8 #include "input.h"
9 #include "decoder_fifo.h"
10 #include "audio_output.h"
11
12 #include "ac3_decoder.h"
13 #include "ac3_parse.h"
14 #include "ac3_exponent.h"
15 #include "ac3_bit_allocate.h"
16 #include "ac3_mantissa.h"
17 #include "ac3_rematrix.h"
18 #include "ac3_imdct.h"
19 #include "ac3_downmix.h"
20
21 int ac3_audio_block (ac3dec_t * p_ac3dec, s16 * buffer)
22     {
23     parse_audblk( p_ac3dec );
24     exponent_unpack( p_ac3dec );
25     if ( p_ac3dec->b_invalid )
26         return 1;
27     bit_allocate( p_ac3dec );
28     mantissa_unpack( p_ac3dec );
29     if ( p_ac3dec->b_invalid )
30         return 1;
31     if ( p_ac3dec->bsi.acmod == 0x2 )
32         rematrix( p_ac3dec );
33     imdct( p_ac3dec );
34     downmix( p_ac3dec, buffer );
35     return 0;
36     }