liboggz 1.1.1
|
00001 /* 00002 Copyright (C) 2003 Commonwealth Scientific and Industrial Research 00003 Organisation (CSIRO) Australia 00004 00005 Redistribution and use in source and binary forms, with or without 00006 modification, are permitted provided that the following conditions 00007 are met: 00008 00009 - Redistributions of source code must retain the above copyright 00010 notice, this list of conditions and the following disclaimer. 00011 00012 - Redistributions in binary form must reproduce the above copyright 00013 notice, this list of conditions and the following disclaimer in the 00014 documentation and/or other materials provided with the distribution. 00015 00016 - Neither the name of CSIRO Australia nor the names of its 00017 contributors may be used to endorse or promote products derived from 00018 this software without specific prior written permission. 00019 00020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00021 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00022 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 00023 PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR 00024 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00025 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00026 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 00027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 00028 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 00029 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 00030 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00031 */ 00032 00033 #ifndef __OGGZ_CONSTANTS_H__ 00034 #define __OGGZ_CONSTANTS_H__ 00035 00046 enum OggzFlags { 00048 OGGZ_READ = 0x00, 00049 00051 OGGZ_WRITE = 0x01, 00052 00055 OGGZ_NONSTRICT = 0x10, 00056 00063 OGGZ_AUTO = 0x20, 00064 00070 OGGZ_PREFIX = 0x40, 00071 00077 OGGZ_SUFFIX = 0x80 00078 00079 }; 00080 00081 enum OggzStopCtl { 00083 OGGZ_CONTINUE = 0, 00084 00086 OGGZ_STOP_OK = 1, 00087 00089 OGGZ_STOP_ERR = -1 00090 }; 00091 00095 enum OggzFlushOpts { 00097 OGGZ_FLUSH_BEFORE = 0x01, 00098 00100 OGGZ_FLUSH_AFTER = 0x02 00101 }; 00102 00106 typedef enum OggzStreamContent { 00107 OGGZ_CONTENT_THEORA = 0, 00108 OGGZ_CONTENT_VORBIS, 00109 OGGZ_CONTENT_SPEEX, 00110 OGGZ_CONTENT_PCM, 00111 OGGZ_CONTENT_CMML, 00112 OGGZ_CONTENT_ANX2, 00113 OGGZ_CONTENT_SKELETON, 00114 OGGZ_CONTENT_FLAC0, 00115 OGGZ_CONTENT_FLAC, 00116 OGGZ_CONTENT_ANXDATA, 00117 OGGZ_CONTENT_CELT, 00118 OGGZ_CONTENT_KATE, 00119 OGGZ_CONTENT_DIRAC, 00120 OGGZ_CONTENT_UNKNOWN 00121 } OggzStreamContent; 00122 00126 enum OggzError { 00128 OGGZ_ERR_OK = 0, 00129 00131 OGGZ_ERR_GENERIC = -1, 00132 00134 OGGZ_ERR_BAD_OGGZ = -2, 00135 00137 OGGZ_ERR_INVALID = -3, 00138 00140 OGGZ_ERR_NO_STREAMS = -4, 00141 00143 OGGZ_ERR_BOS = -5, 00144 00146 OGGZ_ERR_EOS = -6, 00147 00149 OGGZ_ERR_BAD_METRIC = -7, 00150 00152 OGGZ_ERR_SYSTEM = -10, 00153 00155 OGGZ_ERR_DISABLED = -11, 00156 00158 OGGZ_ERR_NOSEEK = -13, 00159 00163 OGGZ_ERR_STOP_OK = -14, 00164 00168 OGGZ_ERR_STOP_ERR = -15, 00169 00171 OGGZ_ERR_IO_AGAIN = -16, 00172 00174 OGGZ_ERR_HOLE_IN_DATA = -17, 00175 00177 OGGZ_ERR_OUT_OF_MEMORY = -18, 00178 00180 OGGZ_ERR_BAD_SERIALNO = -20, 00181 00183 OGGZ_ERR_BAD_BYTES = -21, 00184 00186 OGGZ_ERR_BAD_B_O_S = -22, 00187 00189 OGGZ_ERR_BAD_E_O_S = -23, 00190 00192 OGGZ_ERR_BAD_GRANULEPOS = -24, 00193 00195 OGGZ_ERR_BAD_PACKETNO = -25, 00196 00198 /* 129 == 0x81 is the frame marker for Theora's comments page ;-) */ 00199 OGGZ_ERR_COMMENT_INVALID = -129, 00200 00202 OGGZ_ERR_BAD_GUARD = -210, 00203 00206 OGGZ_ERR_RECURSIVE_WRITE = -266 00207 }; 00208 00209 #endif /* __OGGZ_CONSTANTS_H__ */