8 typedef struct _ae_stream
11 size_t avail_in; /* number of bytes available at next_in */
12 size_t total_in; /* total number of input bytes read so far */
15 size_t avail_out; /* remaining free space at next_out */
16 size_t total_out; /* total number of bytes output so far */
18 uint32_t bit_per_sample; /* resolution in bits per sample (n = 1,..., 32) */
19 uint32_t block_size; /* block size in samples (J = 8 or 16) */
20 uint32_t segment_size; /* set of blocks between consecutive reference samples */
21 uint8_t pp; /* pre/post-processor used? */
23 struct internal_state *state;
26 typedef ae_stream *ae_streamp;
29 #define AE_STREAM_END 1
31 #define AE_STREAM_ERROR (-2)
32 #define AE_DATA_ERROR (-3)
33 #define AE_MEM_ERROR (-4)
36 #define AE_PARTIAL_FLUSH 1
37 #define AE_SYNC_FLUSH 2
38 #define AE_FULL_FLUSH 3
43 int ae_decode_init(ae_streamp strm);
45 int ae_decode(ae_streamp strm, int flush);