summaryrefslogtreecommitdiff
path: root/core/multimedia/opieplayer/libmad/stream.h
Unidiff
Diffstat (limited to 'core/multimedia/opieplayer/libmad/stream.h') (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/libmad/stream.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/core/multimedia/opieplayer/libmad/stream.h b/core/multimedia/opieplayer/libmad/stream.h
index cf3280e..08e6dc5 100644
--- a/core/multimedia/opieplayer/libmad/stream.h
+++ b/core/multimedia/opieplayer/libmad/stream.h
@@ -1,8 +1,8 @@
1/* 1/*
2 * mad - MPEG audio decoder 2 * libmad - MPEG audio decoder library
3 * Copyright (C) 2000-2001 Robert Leslie 3 * Copyright (C) 2000-2001 Robert Leslie
4 * 4 *
5 * This program is free software; you can redistribute it and/or modify 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 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 7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version. 8 * (at your option) any later version.
@@ -25,12 +25,14 @@
25# include "bit.h" 25# include "bit.h"
26 26
27 # define MAD_BUFFER_GUARD8 27 # define MAD_BUFFER_GUARD8
28 # define MAD_BUFFER_MDLEN(511 + 2048 + MAD_BUFFER_GUARD) 28 # define MAD_BUFFER_MDLEN(511 + 2048 + MAD_BUFFER_GUARD)
29 29
30enum mad_error { 30enum mad_error {
31 MAD_ERROR_NONE = 0x0000,/* no error */
32
31 MAD_ERROR_BUFLEN = 0x0001,/* input buffer too small (or EOF) */ 33 MAD_ERROR_BUFLEN = 0x0001,/* input buffer too small (or EOF) */
32 MAD_ERROR_BUFPTR = 0x0002,/* invalid (null) buffer pointer */ 34 MAD_ERROR_BUFPTR = 0x0002,/* invalid (null) buffer pointer */
33 35
34 MAD_ERROR_NOMEM = 0x0031,/* not enough memory */ 36 MAD_ERROR_NOMEM = 0x0031,/* not enough memory */
35 37
36 MAD_ERROR_LOSTSYNC = 0x0101,/* lost synchronization */ 38 MAD_ERROR_LOSTSYNC = 0x0101,/* lost synchronization */
@@ -77,26 +79,29 @@ struct mad_stream {
77 int options; /* decoding options (see below) */ 79 int options; /* decoding options (see below) */
78 enum mad_error error; /* error code (see above) */ 80 enum mad_error error; /* error code (see above) */
79}; 81};
80 82
81enum { 83enum {
82 MAD_OPTION_IGNORECRC = 0x0001,/* ignore CRC errors */ 84 MAD_OPTION_IGNORECRC = 0x0001,/* ignore CRC errors */
83 MAD_OPTION_HALFSAMPLERATE = 0x0002,/* generate PCM at 1/2 sample rate */ 85 MAD_OPTION_HALFSAMPLERATE = 0x0002/* generate PCM at 1/2 sample rate */
84# if 0 /* not yet implemented */ 86# if 0 /* not yet implemented */
85 MAD_OPTION_LEFTCHANNEL = 0x0010,/* decode left channel only */ 87 MAD_OPTION_LEFTCHANNEL = 0x0010,/* decode left channel only */
86 MAD_OPTION_RIGHTCHANNEL = 0x0020,/* decode right channel only */ 88 MAD_OPTION_RIGHTCHANNEL = 0x0020,/* decode right channel only */
87 MAD_OPTION_SINGLECHANNEL = 0x0030,/* combine channels */ 89 MAD_OPTION_SINGLECHANNEL = 0x0030/* combine channels */
88# endif 90# endif
89}; 91};
90 92
91void mad_stream_init(struct mad_stream *); 93void mad_stream_init(struct mad_stream *);
92void mad_stream_finish(struct mad_stream *); 94void mad_stream_finish(struct mad_stream *);
93 95
94# define mad_stream_options(stream, opts) ((stream)->options = (opts)) 96# define mad_stream_options(stream, opts) \
97 ((void) ((stream)->options = (opts)))
95 98
96void mad_stream_buffer(struct mad_stream *, 99void mad_stream_buffer(struct mad_stream *,
97 unsigned char const *, unsigned long); 100 unsigned char const *, unsigned long);
98void mad_stream_skip(struct mad_stream *, unsigned long); 101void mad_stream_skip(struct mad_stream *, unsigned long);
99 102
100int mad_stream_sync(struct mad_stream *); 103int mad_stream_sync(struct mad_stream *);
101 104
105char const *mad_stream_errorstr(struct mad_stream const *);
106
102# endif 107# endif