Remove name parameter from GET_VLC.
[paraslash.git] / wma.h
1 /**
2  * Information contained in an asf audio file header.
3  *
4  * Both para_filter and para_afh need to read the header.
5  */
6
7 /** Information stored in the asf header. */
8 struct asf_header_info {
9         /** The size of the audio file header. */
10         int header_len;
11         /** Offset of the audio stream info header. */
12         int audio_stream_info_start;
13         /** Number of channels. */
14         uint8_t channels;
15         /** One of the 5 possible sample rates. */
16         uint16_t sample_rate;
17         /** Size of one data block. */
18         uint16_t block_align;
19         /** Bits per second. */
20         uint32_t bit_rate;
21         /** Further decoding information (ignored). */
22         uint32_t flags1;
23         /** Whether to use exp_vlc, bit reservoir, variable block len. */
24         uint16_t flags2;
25 };
26
27 /* wma_common.c */
28 int wma_log2(unsigned int v);
29 const char *search_pattern(const char *pattern, int pattern_len,
30                 const char *buf, int buf_size);
31 int read_asf_header(char *buf, int loaded, struct asf_header_info *ahi);
32
33 #define WMA_FRAME_SKIP 31
34 #define DECLARE_ALIGNED(n,t,v)      t v __attribute__ ((aligned (n)))
35 #define DECLARE_ALIGNED_16(t, v) DECLARE_ALIGNED(16, t, v)