liboggz  1.1.1
oggz_constants.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2003 Commonwealth Scientific and Industrial Research
3  Organisation (CSIRO) Australia
4 
5  Redistribution and use in source and binary forms, with or without
6  modification, are permitted provided that the following conditions
7  are met:
8 
9  - Redistributions of source code must retain the above copyright
10  notice, this list of conditions and the following disclaimer.
11 
12  - Redistributions in binary form must reproduce the above copyright
13  notice, this list of conditions and the following disclaimer in the
14  documentation and/or other materials provided with the distribution.
15 
16  - Neither the name of CSIRO Australia nor the names of its
17  contributors may be used to endorse or promote products derived from
18  this software without specific prior written permission.
19 
20  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
23  PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR
24  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 
33 #ifndef __OGGZ_CONSTANTS_H__
34 #define __OGGZ_CONSTANTS_H__
35 
46 enum OggzFlags {
48  OGGZ_READ = 0x00,
49 
51  OGGZ_WRITE = 0x01,
52 
56 
63  OGGZ_AUTO = 0x20,
64 
70  OGGZ_PREFIX = 0x40,
71 
77  OGGZ_SUFFIX = 0x80
78 
79 };
80 
84 
87 
89  OGGZ_STOP_ERR = -1
90 };
91 
98 
100  OGGZ_FLUSH_AFTER = 0x02
101 };
102 
106 typedef enum OggzStreamContent {
107  OGGZ_CONTENT_THEORA = 0,
108  OGGZ_CONTENT_VORBIS,
109  OGGZ_CONTENT_SPEEX,
110  OGGZ_CONTENT_PCM,
111  OGGZ_CONTENT_CMML,
112  OGGZ_CONTENT_ANX2,
113  OGGZ_CONTENT_SKELETON,
114  OGGZ_CONTENT_FLAC0,
115  OGGZ_CONTENT_FLAC,
116  OGGZ_CONTENT_ANXDATA,
117  OGGZ_CONTENT_CELT,
118  OGGZ_CONTENT_KATE,
119  OGGZ_CONTENT_DIRAC,
120  OGGZ_CONTENT_UNKNOWN
122 
126 enum OggzError {
129 
132 
135 
138 
141 
144 
147 
150 
153 
156 
159 
164 
169 
172 
175 
178 
181 
184 
187 
190 
193 
196 
198  /* 129 == 0x81 is the frame marker for Theora's comments page ;-) */
200 
203 
207 };
208 
209 #endif /* __OGGZ_CONSTANTS_H__ */
OggzStopCtl
Definition: oggz_constants.h:81
@ OGGZ_STOP_ERR
Stop calling callbacks, and purge buffered packet data.
Definition: oggz_constants.h:89
@ OGGZ_STOP_OK
Stop calling callbacks, but retain buffered packet data.
Definition: oggz_constants.h:86
@ OGGZ_CONTINUE
Continue calling read callbacks.
Definition: oggz_constants.h:83
OggzFlags
Flags to oggz_new(), oggz_open(), and oggz_openfd().
Definition: oggz_constants.h:46
@ OGGZ_NONSTRICT
Disable strict adherence to mapping constraints, eg for handling an incomplete stream.
Definition: oggz_constants.h:55
@ OGGZ_SUFFIX
Write Suffix: Assume that we are only writing the suffix of an Ogg stream, ie.
Definition: oggz_constants.h:77
@ OGGZ_WRITE
Write only.
Definition: oggz_constants.h:51
@ OGGZ_READ
Read only.
Definition: oggz_constants.h:48
@ OGGZ_PREFIX
Write Prefix: Assume that we are only writing the prefix of an Ogg stream, ie.
Definition: oggz_constants.h:70
@ OGGZ_AUTO
Scan for known headers while reading, and automatically set metrics appropriately.
Definition: oggz_constants.h:63
OggzError
Definitions of error return values.
Definition: oggz_constants.h:126
@ OGGZ_ERR_BAD_OGGZ
oggz is not a valid OGGZ
Definition: oggz_constants.h:134
@ OGGZ_ERR_OUT_OF_MEMORY
Out of memory.
Definition: oggz_constants.h:177
@ OGGZ_ERR_BAD_GUARD
Guard provided by user has non-zero value.
Definition: oggz_constants.h:202
@ OGGZ_ERR_STOP_ERR
Reading was stopped by an OggzReadCallback returning OGGZ_STOP_ERR or writing was stopped by an OggzW...
Definition: oggz_constants.h:168
@ OGGZ_ERR_BAD_PACKETNO
Packet disallowed due to invalid packetno.
Definition: oggz_constants.h:195
@ OGGZ_ERR_STOP_OK
Reading was stopped by an OggzReadCallback returning OGGZ_STOP_OK or writing was stopped by an OggzWr...
Definition: oggz_constants.h:163
@ OGGZ_ERR_SYSTEM
System specific error; check errno for details.
Definition: oggz_constants.h:152
@ OGGZ_ERR_NOSEEK
Seeking operation is not possible for this OGGZ.
Definition: oggz_constants.h:158
@ OGGZ_ERR_DISABLED
Functionality disabled at build time.
Definition: oggz_constants.h:155
@ OGGZ_ERR_BAD_METRIC
Operation requires a valid metric, but none has been set.
Definition: oggz_constants.h:149
@ OGGZ_ERR_BAD_B_O_S
Packet disallowed due to invalid b_o_s (beginning of stream) flag.
Definition: oggz_constants.h:186
@ OGGZ_ERR_RECURSIVE_WRITE
Attempt to call oggz_write() or oggz_write_output() from within a hungry() callback.
Definition: oggz_constants.h:206
@ OGGZ_ERR_OK
No error.
Definition: oggz_constants.h:128
@ OGGZ_ERR_GENERIC
generic error
Definition: oggz_constants.h:131
@ OGGZ_ERR_BAD_GRANULEPOS
Packet disallowed due to invalid granulepos.
Definition: oggz_constants.h:192
@ OGGZ_ERR_IO_AGAIN
no data available from IO, try again
Definition: oggz_constants.h:171
@ OGGZ_ERR_BOS
Operation is inappropriate for oggz in current bos state.
Definition: oggz_constants.h:143
@ OGGZ_ERR_BAD_BYTES
Packet disallowed due to invalid byte length.
Definition: oggz_constants.h:183
@ OGGZ_ERR_BAD_SERIALNO
The requested serialno does not exist in this OGGZ.
Definition: oggz_constants.h:180
@ OGGZ_ERR_COMMENT_INVALID
Comment violates VorbisComment restrictions.
Definition: oggz_constants.h:199
@ OGGZ_ERR_INVALID
The requested operation is not suitable for this OGGZ.
Definition: oggz_constants.h:137
@ OGGZ_ERR_BAD_E_O_S
Packet disallowed due to invalid e_o_s (end of stream) flag.
Definition: oggz_constants.h:189
@ OGGZ_ERR_HOLE_IN_DATA
Hole (sequence number gap) detected in input data.
Definition: oggz_constants.h:174
@ OGGZ_ERR_EOS
Operation is inappropriate for oggz in current eos state.
Definition: oggz_constants.h:146
@ OGGZ_ERR_NO_STREAMS
oggz contains no logical bitstreams
Definition: oggz_constants.h:140
OggzFlushOpts
Flush options for oggz_write_feed; can be or'ed together.
Definition: oggz_constants.h:95
@ OGGZ_FLUSH_AFTER
Flush after this packet.
Definition: oggz_constants.h:100
@ OGGZ_FLUSH_BEFORE
Flush all streams before beginning this packet.
Definition: oggz_constants.h:97
OggzStreamContent
Definition of stream content types.
Definition: oggz_constants.h:106