dx50 = DX50
[mplayer/glamo.git] / libfaad2 / rvlc.h
blob12353c1cc860cdb73643e3ad7258bd1515b74804
1 /*
2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
3 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
4 **
5 ** This program is free software; you can redistribute it and/or modify
6 ** it under the terms of the GNU General Public License as published by
7 ** the Free Software Foundation; either version 2 of the License, or
8 ** (at your option) any later version.
9 **
10 ** This program is distributed in the hope that it will be useful,
11 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 ** GNU General Public License for more details.
14 **
15 ** You should have received a copy of the GNU General Public License
16 ** along with this program; if not, write to the Free Software
17 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 ** Any non-GPL usage of this software or parts of this software is strictly
20 ** forbidden.
22 ** Commercial non-GPL licensing of this software is possible.
23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
25 ** $Id: rvlc.h,v 1.3 2003/09/09 18:09:52 menno Exp $
26 **/
28 #ifndef __RVLC_SCF_H__
29 #define __RVLC_SCF_H__
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
35 typedef struct
37 int8_t index;
38 uint8_t len;
39 uint32_t cw;
40 } rvlc_huff_table;
43 #define ESC_VAL 7
46 uint8_t rvlc_scale_factor_data(ic_stream *ics, bitfile *ld);
47 uint8_t rvlc_decode_scale_factors(ic_stream *ics, bitfile *ld);
49 static uint8_t rvlc_decode_sf_forward(ic_stream *ics,
50 bitfile *ld_sf,
51 bitfile *ld_esc,
52 uint8_t *is_used);
53 static uint8_t rvlc_decode_sf_reverse(ic_stream *ics,
54 bitfile *ld_sf,
55 bitfile *ld_esc,
56 uint8_t is_used);
57 static int8_t rvlc_huffman_sf(bitfile *ld_sf, bitfile *ld_esc,
58 int8_t direction);
59 static int8_t rvlc_huffman_esc(bitfile *ld_esc, int8_t direction);
62 #ifdef __cplusplus
64 #endif
65 #endif