annotate src/flac-1.2.1/doc/html/api/format_8h-source.html @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 05aa0afa9217
children
rev   line source
Chris@1 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Chris@1 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
Chris@1 3 <title>FLAC: include/FLAC/format.h Source File</title>
Chris@1 4 <link href="doxygen.css" rel="stylesheet" type="text/css">
Chris@1 5 </head><body>
Chris@1 6 <!-- Generated by Doxygen 1.4.2 -->
Chris@1 7 <div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
Chris@1 8 <div class="nav">
Chris@1 9 <a class="el" href="dir_000000.html">include</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">FLAC</a></div>
Chris@1 10 <h1>format.h</h1><a href="format_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 <span class="comment">/* libFLAC - Free Lossless Audio Codec library</span>
Chris@1 11 00002 <span class="comment"> * Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson</span>
Chris@1 12 00003 <span class="comment"> *</span>
Chris@1 13 00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
Chris@1 14 00005 <span class="comment"> * modification, are permitted provided that the following conditions</span>
Chris@1 15 00006 <span class="comment"> * are met:</span>
Chris@1 16 00007 <span class="comment"> *</span>
Chris@1 17 00008 <span class="comment"> * - Redistributions of source code must retain the above copyright</span>
Chris@1 18 00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
Chris@1 19 00010 <span class="comment"> *</span>
Chris@1 20 00011 <span class="comment"> * - Redistributions in binary form must reproduce the above copyright</span>
Chris@1 21 00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in the</span>
Chris@1 22 00013 <span class="comment"> * documentation and/or other materials provided with the distribution.</span>
Chris@1 23 00014 <span class="comment"> *</span>
Chris@1 24 00015 <span class="comment"> * - Neither the name of the Xiph.org Foundation nor the names of its</span>
Chris@1 25 00016 <span class="comment"> * contributors may be used to endorse or promote products derived from</span>
Chris@1 26 00017 <span class="comment"> * this software without specific prior written permission.</span>
Chris@1 27 00018 <span class="comment"> *</span>
Chris@1 28 00019 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
Chris@1 29 00020 <span class="comment"> * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
Chris@1 30 00021 <span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
Chris@1 31 00022 <span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR</span>
Chris@1 32 00023 <span class="comment"> * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,</span>
Chris@1 33 00024 <span class="comment"> * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,</span>
Chris@1 34 00025 <span class="comment"> * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR</span>
Chris@1 35 00026 <span class="comment"> * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF</span>
Chris@1 36 00027 <span class="comment"> * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING</span>
Chris@1 37 00028 <span class="comment"> * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS</span>
Chris@1 38 00029 <span class="comment"> * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
Chris@1 39 00030 <span class="comment"> */</span>
Chris@1 40 00031
Chris@1 41 00032 <span class="preprocessor">#ifndef FLAC__FORMAT_H</span>
Chris@1 42 00033 <span class="preprocessor"></span><span class="preprocessor">#define FLAC__FORMAT_H</span>
Chris@1 43 00034 <span class="preprocessor"></span>
Chris@1 44 00035 <span class="preprocessor">#include "<a class="code" href="export_8h.html">export.h</a>"</span>
Chris@1 45 00036 <span class="preprocessor">#include "ordinals.h"</span>
Chris@1 46 00037
Chris@1 47 00038 <span class="preprocessor">#ifdef __cplusplus</span>
Chris@1 48 00039 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
Chris@1 49 00040 <span class="preprocessor">#endif</span>
Chris@1 50 00041 <span class="preprocessor"></span>
Chris@1 51 00086 <span class="comment">/*</span>
Chris@1 52 00087 <span class="comment"> Most of the values described in this file are defined by the FLAC</span>
Chris@1 53 00088 <span class="comment"> format specification. There is nothing to tune here.</span>
Chris@1 54 00089 <span class="comment">*/</span>
Chris@1 55 00090
Chris@1 56 <a name="l00092"></a><a class="code" href="group__flac__format.html#ga89">00092</a> <span class="preprocessor">#define FLAC__MAX_METADATA_TYPE_CODE (126u)</span>
Chris@1 57 00093 <span class="preprocessor"></span>
Chris@1 58 <a name="l00095"></a><a class="code" href="group__flac__format.html#ga90">00095</a> <span class="preprocessor">#define FLAC__MIN_BLOCK_SIZE (16u)</span>
Chris@1 59 00096 <span class="preprocessor"></span>
Chris@1 60 <a name="l00098"></a><a class="code" href="group__flac__format.html#ga91">00098</a> <span class="preprocessor">#define FLAC__MAX_BLOCK_SIZE (65535u)</span>
Chris@1 61 00099 <span class="preprocessor"></span>
Chris@1 62 <a name="l00102"></a><a class="code" href="group__flac__format.html#ga92">00102</a> <span class="preprocessor">#define FLAC__SUBSET_MAX_BLOCK_SIZE_48000HZ (4608u)</span>
Chris@1 63 00103 <span class="preprocessor"></span>
Chris@1 64 <a name="l00105"></a><a class="code" href="group__flac__format.html#ga93">00105</a> <span class="preprocessor">#define FLAC__MAX_CHANNELS (8u)</span>
Chris@1 65 00106 <span class="preprocessor"></span>
Chris@1 66 <a name="l00108"></a><a class="code" href="group__flac__format.html#ga94">00108</a> <span class="preprocessor">#define FLAC__MIN_BITS_PER_SAMPLE (4u)</span>
Chris@1 67 00109 <span class="preprocessor"></span>
Chris@1 68 <a name="l00111"></a><a class="code" href="group__flac__format.html#ga95">00111</a> <span class="preprocessor">#define FLAC__MAX_BITS_PER_SAMPLE (32u)</span>
Chris@1 69 00112 <span class="preprocessor"></span>
Chris@1 70 <a name="l00121"></a><a class="code" href="group__flac__format.html#ga96">00121</a> <span class="preprocessor">#define FLAC__REFERENCE_CODEC_MAX_BITS_PER_SAMPLE (24u)</span>
Chris@1 71 00122 <span class="preprocessor"></span>
Chris@1 72 <a name="l00127"></a><a class="code" href="group__flac__format.html#ga97">00127</a> <span class="preprocessor">#define FLAC__MAX_SAMPLE_RATE (655350u)</span>
Chris@1 73 00128 <span class="preprocessor"></span>
Chris@1 74 <a name="l00130"></a><a class="code" href="group__flac__format.html#ga98">00130</a> <span class="preprocessor">#define FLAC__MAX_LPC_ORDER (32u)</span>
Chris@1 75 00131 <span class="preprocessor"></span>
Chris@1 76 <a name="l00134"></a><a class="code" href="group__flac__format.html#ga99">00134</a> <span class="preprocessor">#define FLAC__SUBSET_MAX_LPC_ORDER_48000HZ (12u)</span>
Chris@1 77 00135 <span class="preprocessor"></span>
Chris@1 78 <a name="l00139"></a><a class="code" href="group__flac__format.html#ga100">00139</a> <span class="preprocessor">#define FLAC__MIN_QLP_COEFF_PRECISION (5u)</span>
Chris@1 79 00140 <span class="preprocessor"></span>
Chris@1 80 <a name="l00144"></a><a class="code" href="group__flac__format.html#ga101">00144</a> <span class="preprocessor">#define FLAC__MAX_QLP_COEFF_PRECISION (15u)</span>
Chris@1 81 00145 <span class="preprocessor"></span>
Chris@1 82 <a name="l00147"></a><a class="code" href="group__flac__format.html#ga102">00147</a> <span class="preprocessor">#define FLAC__MAX_FIXED_ORDER (4u)</span>
Chris@1 83 00148 <span class="preprocessor"></span>
Chris@1 84 <a name="l00150"></a><a class="code" href="group__flac__format.html#ga103">00150</a> <span class="preprocessor">#define FLAC__MAX_RICE_PARTITION_ORDER (15u)</span>
Chris@1 85 00151 <span class="preprocessor"></span>
Chris@1 86 <a name="l00153"></a><a class="code" href="group__flac__format.html#ga104">00153</a> <span class="preprocessor">#define FLAC__SUBSET_MAX_RICE_PARTITION_ORDER (8u)</span>
Chris@1 87 00154 <span class="preprocessor"></span>
Chris@1 88 00161 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__flac__format.html#ga0">FLAC__VERSION_STRING</a>;
Chris@1 89 00162
Chris@1 90 00167 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__flac__format.html#ga1">FLAC__VENDOR_STRING</a>;
Chris@1 91 00168
Chris@1 92 00170 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> FLAC__byte <a class="code" href="group__flac__format.html#ga2">FLAC__STREAM_SYNC_STRING</a>[4]; <span class="comment">/* = "fLaC" */</span>
Chris@1 93 00171
Chris@1 94 00175 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga3">FLAC__STREAM_SYNC</a>; <span class="comment">/* = 0x664C6143 */</span>
Chris@1 95 00176
Chris@1 96 00178 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga4">FLAC__STREAM_SYNC_LEN</a>; <span class="comment">/* = 32 bits */</span>
Chris@1 97 00179
Chris@1 98 <a name="l00181"></a><a class="code" href="group__flac__format.html#ga105">00181</a> <span class="preprocessor">#define FLAC__STREAM_SYNC_LENGTH (4u)</span>
Chris@1 99 00182 <span class="preprocessor"></span>
Chris@1 100 00183
Chris@1 101 00184 <span class="comment">/*****************************************************************************</span>
Chris@1 102 00185 <span class="comment"> *</span>
Chris@1 103 00186 <span class="comment"> * Subframe structures</span>
Chris@1 104 00187 <span class="comment"> *</span>
Chris@1 105 00188 <span class="comment"> *****************************************************************************/</span>
Chris@1 106 00189
Chris@1 107 00190 <span class="comment">/*****************************************************************************/</span>
Chris@1 108 00191
Chris@1 109 <a name="l00193"></a><a class="code" href="group__flac__format.html#ga109">00193</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 110 00194 <a class="code" href="group__flac__format.html#gga109a100">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE</a> = 0,
Chris@1 111 00198 <a class="code" href="group__flac__format.html#gga109a101">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2</a> = 1
Chris@1 112 00201 } <a class="code" href="group__flac__format.html#ga109">FLAC__EntropyCodingMethodType</a>;
Chris@1 113 00202
Chris@1 114 00208 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga5">FLAC__EntropyCodingMethodTypeString</a>[];
Chris@1 115 00209
Chris@1 116 00210
Chris@1 117 <a name="l00213"></a><a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRiceContents.html">00213</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 118 00214
Chris@1 119 00215 <span class="keywordtype">unsigned</span> *parameters;
Chris@1 120 00218 <span class="keywordtype">unsigned</span> *raw_bits;
Chris@1 121 00223 <span class="keywordtype">unsigned</span> capacity_by_order;
Chris@1 122 00228 } <a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRiceContents.html">FLAC__EntropyCodingMethod_PartitionedRiceContents</a>;
Chris@1 123 00229
Chris@1 124 <a name="l00232"></a><a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRice.html">00232</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 125 00233
Chris@1 126 00234 <span class="keywordtype">unsigned</span> order;
Chris@1 127 00237 <span class="keyword">const</span> <a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRiceContents.html">FLAC__EntropyCodingMethod_PartitionedRiceContents</a> *contents;
Chris@1 128 00240 } <a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRice.html">FLAC__EntropyCodingMethod_PartitionedRice</a>;
Chris@1 129 00241
Chris@1 130 00242 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga6">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN</a>;
Chris@1 131 00243 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga7">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN</a>;
Chris@1 132 00244 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga8">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN</a>;
Chris@1 133 00245 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga9">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN</a>;
Chris@1 134 00247 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga10">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER</a>;
Chris@1 135 00249 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga11">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER</a>;
Chris@1 136 <a name="l00254"></a><a class="code" href="structFLAC____EntropyCodingMethod.html">00254</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 137 00255 <a class="code" href="group__flac__format.html#ga109">FLAC__EntropyCodingMethodType</a> type;
Chris@1 138 00256 <span class="keyword">union </span>{
Chris@1 139 00257 <a class="code" href="structFLAC____EntropyCodingMethod__PartitionedRice.html">FLAC__EntropyCodingMethod_PartitionedRice</a> partitioned_rice;
Chris@1 140 00258 } data;
Chris@1 141 00259 } <a class="code" href="structFLAC____EntropyCodingMethod.html">FLAC__EntropyCodingMethod</a>;
Chris@1 142 00260
Chris@1 143 00261 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga12">FLAC__ENTROPY_CODING_METHOD_TYPE_LEN</a>;
Chris@1 144 00263 <span class="comment">/*****************************************************************************/</span>
Chris@1 145 00264
Chris@1 146 <a name="l00266"></a><a class="code" href="group__flac__format.html#ga110">00266</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 147 00267 <a class="code" href="group__flac__format.html#gga110a102">FLAC__SUBFRAME_TYPE_CONSTANT</a> = 0,
Chris@1 148 00268 <a class="code" href="group__flac__format.html#gga110a103">FLAC__SUBFRAME_TYPE_VERBATIM</a> = 1,
Chris@1 149 00269 <a class="code" href="group__flac__format.html#gga110a104">FLAC__SUBFRAME_TYPE_FIXED</a> = 2,
Chris@1 150 00270 <a class="code" href="group__flac__format.html#gga110a105">FLAC__SUBFRAME_TYPE_LPC</a> = 3
Chris@1 151 00271 } <a class="code" href="group__flac__format.html#ga110">FLAC__SubframeType</a>;
Chris@1 152 00272
Chris@1 153 00278 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga13">FLAC__SubframeTypeString</a>[];
Chris@1 154 00279
Chris@1 155 00280
Chris@1 156 <a name="l00283"></a><a class="code" href="structFLAC____Subframe__Constant.html">00283</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 157 <a name="l00284"></a><a class="code" href="structFLAC____Subframe__Constant.html#FLAC____Subframe__Constanto0">00284</a> FLAC__int32 value;
Chris@1 158 00285 } <a class="code" href="structFLAC____Subframe__Constant.html">FLAC__Subframe_Constant</a>;
Chris@1 159 00286
Chris@1 160 00287
Chris@1 161 <a name="l00290"></a><a class="code" href="structFLAC____Subframe__Verbatim.html">00290</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 162 <a name="l00291"></a><a class="code" href="structFLAC____Subframe__Verbatim.html#FLAC____Subframe__Verbatimo0">00291</a> <span class="keyword">const</span> FLAC__int32 *data;
Chris@1 163 00292 } <a class="code" href="structFLAC____Subframe__Verbatim.html">FLAC__Subframe_Verbatim</a>;
Chris@1 164 00293
Chris@1 165 00294
Chris@1 166 <a name="l00297"></a><a class="code" href="structFLAC____Subframe__Fixed.html">00297</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 167 00298 <a class="code" href="structFLAC____EntropyCodingMethod.html">FLAC__EntropyCodingMethod</a> entropy_coding_method;
Chris@1 168 00301 <span class="keywordtype">unsigned</span> order;
Chris@1 169 00304 FLAC__int32 warmup[<a class="code" href="group__flac__format.html#ga102">FLAC__MAX_FIXED_ORDER</a>];
Chris@1 170 00307 <span class="keyword">const</span> FLAC__int32 *residual;
Chris@1 171 00309 } <a class="code" href="structFLAC____Subframe__Fixed.html">FLAC__Subframe_Fixed</a>;
Chris@1 172 00310
Chris@1 173 00311
Chris@1 174 <a name="l00314"></a><a class="code" href="structFLAC____Subframe__LPC.html">00314</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 175 00315 <a class="code" href="structFLAC____EntropyCodingMethod.html">FLAC__EntropyCodingMethod</a> entropy_coding_method;
Chris@1 176 00318 <span class="keywordtype">unsigned</span> order;
Chris@1 177 00321 <span class="keywordtype">unsigned</span> qlp_coeff_precision;
Chris@1 178 00324 <span class="keywordtype">int</span> quantization_level;
Chris@1 179 00327 FLAC__int32 qlp_coeff[<a class="code" href="group__flac__format.html#ga98">FLAC__MAX_LPC_ORDER</a>];
Chris@1 180 00330 FLAC__int32 warmup[<a class="code" href="group__flac__format.html#ga98">FLAC__MAX_LPC_ORDER</a>];
Chris@1 181 00333 <span class="keyword">const</span> FLAC__int32 *residual;
Chris@1 182 00335 } <a class="code" href="structFLAC____Subframe__LPC.html">FLAC__Subframe_LPC</a>;
Chris@1 183 00336
Chris@1 184 00337 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga14">FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN</a>;
Chris@1 185 00338 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga15">FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN</a>;
Chris@1 186 <a name="l00343"></a><a class="code" href="structFLAC____Subframe.html">00343</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 187 00344 <a class="code" href="group__flac__format.html#ga110">FLAC__SubframeType</a> type;
Chris@1 188 00345 <span class="keyword">union </span>{
Chris@1 189 00346 <a class="code" href="structFLAC____Subframe__Constant.html">FLAC__Subframe_Constant</a> constant;
Chris@1 190 00347 <a class="code" href="structFLAC____Subframe__Fixed.html">FLAC__Subframe_Fixed</a> fixed;
Chris@1 191 00348 <a class="code" href="structFLAC____Subframe__LPC.html">FLAC__Subframe_LPC</a> lpc;
Chris@1 192 00349 <a class="code" href="structFLAC____Subframe__Verbatim.html">FLAC__Subframe_Verbatim</a> verbatim;
Chris@1 193 00350 } data;
Chris@1 194 00351 <span class="keywordtype">unsigned</span> wasted_bits;
Chris@1 195 00352 } <a class="code" href="structFLAC____Subframe.html">FLAC__Subframe</a>;
Chris@1 196 00353
Chris@1 197 00361 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga16">FLAC__SUBFRAME_ZERO_PAD_LEN</a>;
Chris@1 198 00362 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga17">FLAC__SUBFRAME_TYPE_LEN</a>;
Chris@1 199 00363 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga18">FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN</a>;
Chris@1 200 00365 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga19">FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK</a>;
Chris@1 201 00366 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga20">FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK</a>;
Chris@1 202 00367 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga21">FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK</a>;
Chris@1 203 00368 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga22">FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK</a>;
Chris@1 204 00370 <span class="comment">/*****************************************************************************/</span>
Chris@1 205 00371
Chris@1 206 00372
Chris@1 207 00373 <span class="comment">/*****************************************************************************</span>
Chris@1 208 00374 <span class="comment"> *</span>
Chris@1 209 00375 <span class="comment"> * Frame structures</span>
Chris@1 210 00376 <span class="comment"> *</span>
Chris@1 211 00377 <span class="comment"> *****************************************************************************/</span>
Chris@1 212 00378
Chris@1 213 <a name="l00380"></a><a class="code" href="group__flac__format.html#ga111">00380</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 214 00381 <a class="code" href="group__flac__format.html#gga111a106">FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT</a> = 0,
Chris@1 215 00382 <a class="code" href="group__flac__format.html#gga111a107">FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE</a> = 1,
Chris@1 216 00383 <a class="code" href="group__flac__format.html#gga111a108">FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE</a> = 2,
Chris@1 217 00384 <a class="code" href="group__flac__format.html#gga111a109">FLAC__CHANNEL_ASSIGNMENT_MID_SIDE</a> = 3
Chris@1 218 00385 } <a class="code" href="group__flac__format.html#ga111">FLAC__ChannelAssignment</a>;
Chris@1 219 00386
Chris@1 220 00392 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga23">FLAC__ChannelAssignmentString</a>[];
Chris@1 221 00393
Chris@1 222 <a name="l00395"></a><a class="code" href="group__flac__format.html#ga112">00395</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 223 00396 <a class="code" href="group__flac__format.html#gga112a110">FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER</a>,
Chris@1 224 00397 <a class="code" href="group__flac__format.html#gga112a111">FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER</a>
Chris@1 225 00398 } <a class="code" href="group__flac__format.html#ga112">FLAC__FrameNumberType</a>;
Chris@1 226 00399
Chris@1 227 00405 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga24">FLAC__FrameNumberTypeString</a>[];
Chris@1 228 00406
Chris@1 229 00407
Chris@1 230 <a name="l00410"></a><a class="code" href="structFLAC____FrameHeader.html">00410</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 231 00411 <span class="keywordtype">unsigned</span> blocksize;
Chris@1 232 00414 <span class="keywordtype">unsigned</span> sample_rate;
Chris@1 233 00417 <span class="keywordtype">unsigned</span> channels;
Chris@1 234 00420 <a class="code" href="group__flac__format.html#ga111">FLAC__ChannelAssignment</a> channel_assignment;
Chris@1 235 00423 <span class="keywordtype">unsigned</span> bits_per_sample;
Chris@1 236 00426 FLAC__FrameNumberType number_type;
Chris@1 237 00431 <span class="keyword">union </span>{
Chris@1 238 00432 FLAC__uint32 frame_number;
Chris@1 239 00433 FLAC__uint64 sample_number;
Chris@1 240 00434 } number;
Chris@1 241 00438 FLAC__uint8 crc;
Chris@1 242 00443 } <a class="code" href="structFLAC____FrameHeader.html">FLAC__FrameHeader</a>;
Chris@1 243 00444
Chris@1 244 00445 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga25">FLAC__FRAME_HEADER_SYNC</a>;
Chris@1 245 00446 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga26">FLAC__FRAME_HEADER_SYNC_LEN</a>;
Chris@1 246 00447 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga27">FLAC__FRAME_HEADER_RESERVED_LEN</a>;
Chris@1 247 00448 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga28">FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN</a>;
Chris@1 248 00449 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga29">FLAC__FRAME_HEADER_BLOCK_SIZE_LEN</a>;
Chris@1 249 00450 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga30">FLAC__FRAME_HEADER_SAMPLE_RATE_LEN</a>;
Chris@1 250 00451 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga31">FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN</a>;
Chris@1 251 00452 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga32">FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN</a>;
Chris@1 252 00453 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga33">FLAC__FRAME_HEADER_ZERO_PAD_LEN</a>;
Chris@1 253 00454 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga34">FLAC__FRAME_HEADER_CRC_LEN</a>;
Chris@1 254 <a name="l00459"></a><a class="code" href="structFLAC____FrameFooter.html">00459</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 255 00460 FLAC__uint16 crc;
Chris@1 256 00465 } <a class="code" href="structFLAC____FrameFooter.html">FLAC__FrameFooter</a>;
Chris@1 257 00466
Chris@1 258 00467 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga35">FLAC__FRAME_FOOTER_CRC_LEN</a>;
Chris@1 259 <a name="l00472"></a><a class="code" href="structFLAC____Frame.html">00472</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 260 00473 <a class="code" href="structFLAC____FrameHeader.html">FLAC__FrameHeader</a> header;
Chris@1 261 00474 <a class="code" href="structFLAC____Subframe.html">FLAC__Subframe</a> subframes[<a class="code" href="group__flac__format.html#ga93">FLAC__MAX_CHANNELS</a>];
Chris@1 262 00475 <a class="code" href="structFLAC____FrameFooter.html">FLAC__FrameFooter</a> footer;
Chris@1 263 00476 } <a class="code" href="structFLAC____Frame.html">FLAC__Frame</a>;
Chris@1 264 00477
Chris@1 265 00478 <span class="comment">/*****************************************************************************/</span>
Chris@1 266 00479
Chris@1 267 00480
Chris@1 268 00481 <span class="comment">/*****************************************************************************</span>
Chris@1 269 00482 <span class="comment"> *</span>
Chris@1 270 00483 <span class="comment"> * Meta-data structures</span>
Chris@1 271 00484 <span class="comment"> *</span>
Chris@1 272 00485 <span class="comment"> *****************************************************************************/</span>
Chris@1 273 00486
Chris@1 274 <a name="l00488"></a><a class="code" href="group__flac__format.html#ga113">00488</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 275 00489
Chris@1 276 00490 <a class="code" href="group__flac__format.html#gga113a112">FLAC__METADATA_TYPE_STREAMINFO</a> = 0,
Chris@1 277 00493 <a class="code" href="group__flac__format.html#gga113a113">FLAC__METADATA_TYPE_PADDING</a> = 1,
Chris@1 278 00496 <a class="code" href="group__flac__format.html#gga113a114">FLAC__METADATA_TYPE_APPLICATION</a> = 2,
Chris@1 279 00499 <a class="code" href="group__flac__format.html#gga113a115">FLAC__METADATA_TYPE_SEEKTABLE</a> = 3,
Chris@1 280 00502 <a class="code" href="group__flac__format.html#gga113a116">FLAC__METADATA_TYPE_VORBIS_COMMENT</a> = 4,
Chris@1 281 00505 <a class="code" href="group__flac__format.html#gga113a117">FLAC__METADATA_TYPE_CUESHEET</a> = 5,
Chris@1 282 00508 <a class="code" href="group__flac__format.html#gga113a118">FLAC__METADATA_TYPE_PICTURE</a> = 6,
Chris@1 283 00511 <a class="code" href="group__flac__format.html#gga113a119">FLAC__METADATA_TYPE_UNDEFINED</a> = 7
Chris@1 284 00514 } <a class="code" href="group__flac__format.html#ga113">FLAC__MetadataType</a>;
Chris@1 285 00515
Chris@1 286 00521 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga36">FLAC__MetadataTypeString</a>[];
Chris@1 287 00522
Chris@1 288 00523
Chris@1 289 <a name="l00526"></a><a class="code" href="structFLAC____StreamMetadata__StreamInfo.html">00526</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 290 00527 <span class="keywordtype">unsigned</span> min_blocksize, max_blocksize;
Chris@1 291 00528 <span class="keywordtype">unsigned</span> min_framesize, max_framesize;
Chris@1 292 00529 <span class="keywordtype">unsigned</span> sample_rate;
Chris@1 293 00530 <span class="keywordtype">unsigned</span> channels;
Chris@1 294 00531 <span class="keywordtype">unsigned</span> bits_per_sample;
Chris@1 295 00532 FLAC__uint64 total_samples;
Chris@1 296 00533 FLAC__byte md5sum[16];
Chris@1 297 00534 } <a class="code" href="structFLAC____StreamMetadata__StreamInfo.html">FLAC__StreamMetadata_StreamInfo</a>;
Chris@1 298 00535
Chris@1 299 00536 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga37">FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN</a>;
Chris@1 300 00537 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga38">FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN</a>;
Chris@1 301 00538 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga39">FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN</a>;
Chris@1 302 00539 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga40">FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN</a>;
Chris@1 303 00540 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga41">FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN</a>;
Chris@1 304 00541 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga42">FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN</a>;
Chris@1 305 00542 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga43">FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN</a>;
Chris@1 306 00543 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga44">FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN</a>;
Chris@1 307 00544 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga45">FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN</a>;
Chris@1 308 <a name="l00547"></a><a class="code" href="group__flac__format.html#ga106">00547</a> <span class="preprocessor">#define FLAC__STREAM_METADATA_STREAMINFO_LENGTH (34u)</span>
Chris@1 309 00548 <span class="preprocessor"></span>
Chris@1 310 <a name="l00551"></a><a class="code" href="structFLAC____StreamMetadata__Padding.html">00551</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 311 00552 <span class="keywordtype">int</span> dummy;
Chris@1 312 00557 } <a class="code" href="structFLAC____StreamMetadata__Padding.html">FLAC__StreamMetadata_Padding</a>;
Chris@1 313 00558
Chris@1 314 00559
Chris@1 315 <a name="l00562"></a><a class="code" href="structFLAC____StreamMetadata__Application.html">00562</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 316 00563 FLAC__byte <span class="keywordtype">id</span>[4];
Chris@1 317 00564 FLAC__byte *data;
Chris@1 318 00565 } <a class="code" href="structFLAC____StreamMetadata__Application.html">FLAC__StreamMetadata_Application</a>;
Chris@1 319 00566
Chris@1 320 00567 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga46">FLAC__STREAM_METADATA_APPLICATION_ID_LEN</a>;
Chris@1 321 <a name="l00571"></a><a class="code" href="structFLAC____StreamMetadata__SeekPoint.html">00571</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 322 00572 FLAC__uint64 sample_number;
Chris@1 323 00575 FLAC__uint64 stream_offset;
Chris@1 324 00579 <span class="keywordtype">unsigned</span> frame_samples;
Chris@1 325 00581 } <a class="code" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a>;
Chris@1 326 00582
Chris@1 327 00583 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga47">FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN</a>;
Chris@1 328 00584 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga48">FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN</a>;
Chris@1 329 00585 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga49">FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN</a>;
Chris@1 330 <a name="l00588"></a><a class="code" href="group__flac__format.html#ga107">00588</a> <span class="preprocessor">#define FLAC__STREAM_METADATA_SEEKPOINT_LENGTH (18u)</span>
Chris@1 331 00589 <span class="preprocessor"></span>
Chris@1 332 00594 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> FLAC__uint64 <a class="code" href="group__flac__format.html#ga50">FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER</a>;
Chris@1 333 00595
Chris@1 334 00596
Chris@1 335 <a name="l00609"></a><a class="code" href="structFLAC____StreamMetadata__SeekTable.html">00609</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 336 00610 <span class="keywordtype">unsigned</span> num_points;
Chris@1 337 00611 <a class="code" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a> *points;
Chris@1 338 00612 } <a class="code" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a>;
Chris@1 339 00613
Chris@1 340 00614
Chris@1 341 <a name="l00621"></a><a class="code" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">00621</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 342 00622 FLAC__uint32 length;
Chris@1 343 00623 FLAC__byte *entry;
Chris@1 344 00624 } <a class="code" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a>;
Chris@1 345 00625
Chris@1 346 00626 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga51">FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN</a>;
Chris@1 347 <a name="l00631"></a><a class="code" href="structFLAC____StreamMetadata__VorbisComment.html">00631</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 348 00632 <a class="code" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a> vendor_string;
Chris@1 349 00633 FLAC__uint32 num_comments;
Chris@1 350 00634 <a class="code" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a> *comments;
Chris@1 351 00635 } <a class="code" href="structFLAC____StreamMetadata__VorbisComment.html">FLAC__StreamMetadata_VorbisComment</a>;
Chris@1 352 00636
Chris@1 353 00637 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga52">FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN</a>;
Chris@1 354 <a name="l00644"></a><a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">00644</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 355 00645 FLAC__uint64 offset;
Chris@1 356 00650 FLAC__byte number;
Chris@1 357 00652 } <a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a>;
Chris@1 358 00653
Chris@1 359 00654 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga53">FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN</a>;
Chris@1 360 00655 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga54">FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN</a>;
Chris@1 361 00656 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga55">FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN</a>;
Chris@1 362 <a name="l00663"></a><a class="code" href="structFLAC____StreamMetadata__CueSheet__Track.html">00663</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 363 00664 FLAC__uint64 offset;
Chris@1 364 00667 FLAC__byte number;
Chris@1 365 00670 <span class="keywordtype">char</span> isrc[13];
Chris@1 366 00673 <span class="keywordtype">unsigned</span> type:1;
Chris@1 367 00676 <span class="keywordtype">unsigned</span> pre_emphasis:1;
Chris@1 368 00679 FLAC__byte num_indices;
Chris@1 369 00682 <a class="code" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a> *indices;
Chris@1 370 00685 } <a class="code" href="structFLAC____StreamMetadata__CueSheet__Track.html">FLAC__StreamMetadata_CueSheet_Track</a>;
Chris@1 371 00686
Chris@1 372 00687 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga56">FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN</a>;
Chris@1 373 00688 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga57">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN</a>;
Chris@1 374 00689 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga58">FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN</a>;
Chris@1 375 00690 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga59">FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN</a>;
Chris@1 376 00691 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga60">FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN</a>;
Chris@1 377 00692 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga61">FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN</a>;
Chris@1 378 00693 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga62">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN</a>;
Chris@1 379 <a name="l00700"></a><a class="code" href="structFLAC____StreamMetadata__CueSheet.html">00700</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 380 00701 <span class="keywordtype">char</span> media_catalog_number[129];
Chris@1 381 00707 FLAC__uint64 lead_in;
Chris@1 382 00710 FLAC__bool is_cd;
Chris@1 383 00713 <span class="keywordtype">unsigned</span> num_tracks;
Chris@1 384 00716 <a class="code" href="structFLAC____StreamMetadata__CueSheet__Track.html">FLAC__StreamMetadata_CueSheet_Track</a> *tracks;
Chris@1 385 00719 } <a class="code" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a>;
Chris@1 386 00720
Chris@1 387 00721 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga63">FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN</a>;
Chris@1 388 00722 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga64">FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN</a>;
Chris@1 389 00723 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga65">FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN</a>;
Chris@1 390 00724 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga66">FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN</a>;
Chris@1 391 00725 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga67">FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN</a>;
Chris@1 392 <a name="l00729"></a><a class="code" href="group__flac__format.html#ga114">00729</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1 393 00730 <a class="code" href="group__flac__format.html#gga114a120">FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER</a> = 0,
Chris@1 394 00731 <a class="code" href="group__flac__format.html#gga114a121">FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD</a> = 1,
Chris@1 395 00732 <a class="code" href="group__flac__format.html#gga114a122">FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON</a> = 2,
Chris@1 396 00733 <a class="code" href="group__flac__format.html#gga114a123">FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER</a> = 3,
Chris@1 397 00734 <a class="code" href="group__flac__format.html#gga114a124">FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER</a> = 4,
Chris@1 398 00735 <a class="code" href="group__flac__format.html#gga114a125">FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE</a> = 5,
Chris@1 399 00736 <a class="code" href="group__flac__format.html#gga114a126">FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA</a> = 6,
Chris@1 400 00737 <a class="code" href="group__flac__format.html#gga114a127">FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST</a> = 7,
Chris@1 401 00738 <a class="code" href="group__flac__format.html#gga114a128">FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST</a> = 8,
Chris@1 402 00739 <a class="code" href="group__flac__format.html#gga114a129">FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR</a> = 9,
Chris@1 403 00740 <a class="code" href="group__flac__format.html#gga114a130">FLAC__STREAM_METADATA_PICTURE_TYPE_BAND</a> = 10,
Chris@1 404 00741 <a class="code" href="group__flac__format.html#gga114a131">FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER</a> = 11,
Chris@1 405 00742 <a class="code" href="group__flac__format.html#gga114a132">FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST</a> = 12,
Chris@1 406 00743 <a class="code" href="group__flac__format.html#gga114a133">FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION</a> = 13,
Chris@1 407 00744 <a class="code" href="group__flac__format.html#gga114a134">FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING</a> = 14,
Chris@1 408 00745 <a class="code" href="group__flac__format.html#gga114a135">FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE</a> = 15,
Chris@1 409 00746 <a class="code" href="group__flac__format.html#gga114a136">FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE</a> = 16,
Chris@1 410 00747 <a class="code" href="group__flac__format.html#gga114a137">FLAC__STREAM_METADATA_PICTURE_TYPE_FISH</a> = 17,
Chris@1 411 00748 <a class="code" href="group__flac__format.html#gga114a138">FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION</a> = 18,
Chris@1 412 00749 <a class="code" href="group__flac__format.html#gga114a139">FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE</a> = 19,
Chris@1 413 00750 <a class="code" href="group__flac__format.html#gga114a140">FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE</a> = 20,
Chris@1 414 00751 FLAC__STREAM_METADATA_PICTURE_TYPE_UNDEFINED
Chris@1 415 00752 } <a class="code" href="group__flac__format.html#ga114">FLAC__StreamMetadata_Picture_Type</a>;
Chris@1 416 00753
Chris@1 417 00760 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="group__flac__format.html#ga68">FLAC__StreamMetadata_Picture_TypeString</a>[];
Chris@1 418 00761
Chris@1 419 <a name="l00766"></a><a class="code" href="structFLAC____StreamMetadata__Picture.html">00766</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 420 00767 FLAC__StreamMetadata_Picture_Type type;
Chris@1 421 00770 <span class="keywordtype">char</span> *mime_type;
Chris@1 422 00781 FLAC__byte *description;
Chris@1 423 00788 FLAC__uint32 width;
Chris@1 424 00791 FLAC__uint32 height;
Chris@1 425 00794 FLAC__uint32 depth;
Chris@1 426 00797 FLAC__uint32 colors;
Chris@1 427 00802 FLAC__uint32 data_length;
Chris@1 428 00805 FLAC__byte *data;
Chris@1 429 00808 } <a class="code" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a>;
Chris@1 430 00809
Chris@1 431 00810 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga69">FLAC__STREAM_METADATA_PICTURE_TYPE_LEN</a>;
Chris@1 432 00811 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga70">FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN</a>;
Chris@1 433 00812 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga71">FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN</a>;
Chris@1 434 00813 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga72">FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN</a>;
Chris@1 435 00814 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga73">FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN</a>;
Chris@1 436 00815 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga74">FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN</a>;
Chris@1 437 00816 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga75">FLAC__STREAM_METADATA_PICTURE_COLORS_LEN</a>;
Chris@1 438 00817 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga76">FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN</a>;
Chris@1 439 <a name="l00824"></a><a class="code" href="structFLAC____StreamMetadata__Unknown.html">00824</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 440 00825 FLAC__byte *data;
Chris@1 441 00826 } <a class="code" href="structFLAC____StreamMetadata__Unknown.html">FLAC__StreamMetadata_Unknown</a>;
Chris@1 442 00827
Chris@1 443 00828
Chris@1 444 <a name="l00831"></a><a class="code" href="structFLAC____StreamMetadata.html">00831</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1 445 00832 <a class="code" href="group__flac__format.html#ga113">FLAC__MetadataType</a> type;
Chris@1 446 00837 FLAC__bool is_last;
Chris@1 447 00840 <span class="keywordtype">unsigned</span> length;
Chris@1 448 00843 <span class="keyword">union </span>{
Chris@1 449 00844 <a class="code" href="structFLAC____StreamMetadata__StreamInfo.html">FLAC__StreamMetadata_StreamInfo</a> stream_info;
Chris@1 450 00845 <a class="code" href="structFLAC____StreamMetadata__Padding.html">FLAC__StreamMetadata_Padding</a> padding;
Chris@1 451 00846 <a class="code" href="structFLAC____StreamMetadata__Application.html">FLAC__StreamMetadata_Application</a> application;
Chris@1 452 00847 <a class="code" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> seek_table;
Chris@1 453 00848 <a class="code" href="structFLAC____StreamMetadata__VorbisComment.html">FLAC__StreamMetadata_VorbisComment</a> vorbis_comment;
Chris@1 454 00849 <a class="code" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a> cue_sheet;
Chris@1 455 00850 <a class="code" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a> picture;
Chris@1 456 00851 <a class="code" href="structFLAC____StreamMetadata__Unknown.html">FLAC__StreamMetadata_Unknown</a> unknown;
Chris@1 457 00852 } data;
Chris@1 458 00855 } <a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a>;
Chris@1 459 00856
Chris@1 460 00857 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga77">FLAC__STREAM_METADATA_IS_LAST_LEN</a>;
Chris@1 461 00858 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga78">FLAC__STREAM_METADATA_TYPE_LEN</a>;
Chris@1 462 00859 <span class="keyword">extern</span> FLAC_API <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga79">FLAC__STREAM_METADATA_LENGTH_LEN</a>;
Chris@1 463 <a name="l00862"></a><a class="code" href="group__flac__format.html#ga108">00862</a> <span class="preprocessor">#define FLAC__STREAM_METADATA_HEADER_LENGTH (4u)</span>
Chris@1 464 00863 <span class="preprocessor"></span>
Chris@1 465 00864 <span class="comment">/*****************************************************************************/</span>
Chris@1 466 00865
Chris@1 467 00866
Chris@1 468 00867 <span class="comment">/*****************************************************************************</span>
Chris@1 469 00868 <span class="comment"> *</span>
Chris@1 470 00869 <span class="comment"> * Utility functions</span>
Chris@1 471 00870 <span class="comment"> *</span>
Chris@1 472 00871 <span class="comment"> *****************************************************************************/</span>
Chris@1 473 00872
Chris@1 474 00880 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga80">FLAC__format_sample_rate_is_valid</a>(<span class="keywordtype">unsigned</span> sample_rate);
Chris@1 475 00881
Chris@1 476 00891 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga81">FLAC__format_sample_rate_is_subset</a>(<span class="keywordtype">unsigned</span> sample_rate);
Chris@1 477 00892
Chris@1 478 00905 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga82">FLAC__format_vorbiscomment_entry_name_is_legal</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name);
Chris@1 479 00906
Chris@1 480 00921 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga83">FLAC__format_vorbiscomment_entry_value_is_legal</a>(<span class="keyword">const</span> FLAC__byte *value, <span class="keywordtype">unsigned</span> length);
Chris@1 481 00922
Chris@1 482 00938 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga84">FLAC__format_vorbiscomment_entry_is_legal</a>(<span class="keyword">const</span> FLAC__byte *entry, <span class="keywordtype">unsigned</span> length);
Chris@1 483 00939
Chris@1 484 00950 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga85">FLAC__format_seektable_is_legal</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table);
Chris@1 485 00951
Chris@1 486 00964 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__format.html#ga86">FLAC__format_seektable_sort</a>(<a class="code" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table);
Chris@1 487 00965
Chris@1 488 00984 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga87">FLAC__format_cuesheet_is_legal</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a> *cue_sheet, FLAC__bool check_cd_da_subset, <span class="keyword">const</span> <span class="keywordtype">char</span> **violation);
Chris@1 489 00985
Chris@1 490 01002 FLAC_API FLAC__bool <a class="code" href="group__flac__format.html#ga88">FLAC__format_picture_is_legal</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a> *picture, <span class="keyword">const</span> <span class="keywordtype">char</span> **violation);
Chris@1 491 01003
Chris@1 492 01004 <span class="comment">/* \} */</span>
Chris@1 493 01005
Chris@1 494 01006 <span class="preprocessor">#ifdef __cplusplus</span>
Chris@1 495 01007 <span class="preprocessor"></span>}
Chris@1 496 01008 <span class="preprocessor">#endif</span>
Chris@1 497 01009 <span class="preprocessor"></span>
Chris@1 498 01010 <span class="preprocessor">#endif</span>
Chris@1 499 </pre></div>
Chris@1 500 <hr size="1">
Chris@1 501 <div class="copyright">
Chris@1 502 <!-- @@@ oh so hacky -->
Chris@1 503 <table>
Chris@1 504 <tr>
Chris@1 505 <td align="left">
Chris@1 506 Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
Chris@1 507 </td>
Chris@1 508 <td width="1%" align="right">
Chris@1 509 <a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=13478&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
Chris@1 510 </td>
Chris@1 511 </tr>
Chris@1 512 </table>
Chris@1 513 </div>
Chris@1 514 <!-- Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson -->
Chris@1 515 <!-- Permission is granted to copy, distribute and/or modify this document -->
Chris@1 516 <!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
Chris@1 517 <!-- or any later version published by the Free Software Foundation; -->
Chris@1 518 <!-- with no invariant sections. -->
Chris@1 519 <!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
Chris@1 520 </body>
Chris@1 521 </html>