Chris@1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Chris@1: <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
Chris@1: <title>FLAC: include/FLAC/stream_encoder.h Source File</title>
Chris@1: <link href="doxygen.css" rel="stylesheet" type="text/css">
Chris@1: </head><body>
Chris@1: <!-- Generated by Doxygen 1.4.2 -->
Chris@1: <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: <div class="nav">
Chris@1: <a class="el" href="dir_000000.html">include</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">FLAC</a></div>
Chris@1: <h1>stream_encoder.h</h1><a href="stream__encoder_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: 00002 <span class="comment"> * Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson</span>
Chris@1: 00003 <span class="comment"> *</span>
Chris@1: 00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
Chris@1: 00005 <span class="comment"> * modification, are permitted provided that the following conditions</span>
Chris@1: 00006 <span class="comment"> * are met:</span>
Chris@1: 00007 <span class="comment"> *</span>
Chris@1: 00008 <span class="comment"> * - Redistributions of source code must retain the above copyright</span>
Chris@1: 00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
Chris@1: 00010 <span class="comment"> *</span>
Chris@1: 00011 <span class="comment"> * - Redistributions in binary form must reproduce the above copyright</span>
Chris@1: 00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in the</span>
Chris@1: 00013 <span class="comment"> * documentation and/or other materials provided with the distribution.</span>
Chris@1: 00014 <span class="comment"> *</span>
Chris@1: 00015 <span class="comment"> * - Neither the name of the Xiph.org Foundation nor the names of its</span>
Chris@1: 00016 <span class="comment"> * contributors may be used to endorse or promote products derived from</span>
Chris@1: 00017 <span class="comment"> * this software without specific prior written permission.</span>
Chris@1: 00018 <span class="comment"> *</span>
Chris@1: 00019 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
Chris@1: 00020 <span class="comment"> * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
Chris@1: 00021 <span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
Chris@1: 00022 <span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR</span>
Chris@1: 00023 <span class="comment"> * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,</span>
Chris@1: 00024 <span class="comment"> * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,</span>
Chris@1: 00025 <span class="comment"> * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR</span>
Chris@1: 00026 <span class="comment"> * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF</span>
Chris@1: 00027 <span class="comment"> * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING</span>
Chris@1: 00028 <span class="comment"> * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS</span>
Chris@1: 00029 <span class="comment"> * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
Chris@1: 00030 <span class="comment"> */</span>
Chris@1: 00031 
Chris@1: 00032 <span class="preprocessor">#ifndef FLAC__STREAM_ENCODER_H</span>
Chris@1: 00033 <span class="preprocessor"></span><span class="preprocessor">#define FLAC__STREAM_ENCODER_H</span>
Chris@1: 00034 <span class="preprocessor"></span>
Chris@1: 00035 <span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">/* for FILE */</span>
Chris@1: 00036 <span class="preprocessor">#include "<a class="code" href="export_8h.html">export.h</a>"</span>
Chris@1: 00037 <span class="preprocessor">#include "<a class="code" href="format_8h.html">format.h</a>"</span>
Chris@1: 00038 <span class="preprocessor">#include "<a class="code" href="stream__decoder_8h.html">stream_decoder.h</a>"</span>
Chris@1: 00039 
Chris@1: 00040 <span class="preprocessor">#ifdef __cplusplus</span>
Chris@1: 00041 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
Chris@1: 00042 <span class="preprocessor">#endif</span>
Chris@1: 00043 <span class="preprocessor"></span>
Chris@1: 00044 
Chris@1: <a name="l00240"></a><a class="code" href="group__flac__stream__encoder.html#ga65">00240</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00241 
Chris@1: 00242     <a class="code" href="group__flac__stream__encoder.html#gga65a12">FLAC__STREAM_ENCODER_OK</a> = 0,
Chris@1: 00245     <a class="code" href="group__flac__stream__encoder.html#gga65a13">FLAC__STREAM_ENCODER_UNINITIALIZED</a>,
Chris@1: 00251     <a class="code" href="group__flac__stream__encoder.html#gga65a14">FLAC__STREAM_ENCODER_OGG_ERROR</a>,
Chris@1: 00254     <a class="code" href="group__flac__stream__encoder.html#gga65a15">FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR</a>,
Chris@1: 00259     <a class="code" href="group__flac__stream__encoder.html#gga65a16">FLAC__STREAM_ENCODER_VERIFY_MISMATCH_IN_AUDIO_DATA</a>,
Chris@1: 00264     <a class="code" href="group__flac__stream__encoder.html#gga65a17">FLAC__STREAM_ENCODER_CLIENT_ERROR</a>,
Chris@1: 00267     <a class="code" href="group__flac__stream__encoder.html#gga65a18">FLAC__STREAM_ENCODER_IO_ERROR</a>,
Chris@1: 00272     <a class="code" href="group__flac__stream__encoder.html#gga65a19">FLAC__STREAM_ENCODER_FRAMING_ERROR</a>,
Chris@1: 00277     <a class="code" href="group__flac__stream__encoder.html#gga65a20">FLAC__STREAM_ENCODER_MEMORY_ALLOCATION_ERROR</a>
Chris@1: 00280 } <a class="code" href="group__flac__stream__encoder.html#ga65">FLAC__StreamEncoderState</a>;
Chris@1: 00281 
Chris@1: 00287 <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__stream__encoder.html#ga0">FLAC__StreamEncoderStateString</a>[];
Chris@1: 00288 
Chris@1: 00289 
Chris@1: <a name="l00292"></a><a class="code" href="group__flac__stream__encoder.html#ga66">00292</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00293 
Chris@1: 00294     <a class="code" href="group__flac__stream__encoder.html#gga66a21">FLAC__STREAM_ENCODER_INIT_STATUS_OK</a> = 0,
Chris@1: 00297     <a class="code" href="group__flac__stream__encoder.html#gga66a22">FLAC__STREAM_ENCODER_INIT_STATUS_ENCODER_ERROR</a>,
Chris@1: 00300     <a class="code" href="group__flac__stream__encoder.html#gga66a23">FLAC__STREAM_ENCODER_INIT_STATUS_UNSUPPORTED_CONTAINER</a>,
Chris@1: 00305     <a class="code" href="group__flac__stream__encoder.html#gga66a24">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_CALLBACKS</a>,
Chris@1: 00308     <a class="code" href="group__flac__stream__encoder.html#gga66a25">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_NUMBER_OF_CHANNELS</a>,
Chris@1: 00311     <a class="code" href="group__flac__stream__encoder.html#gga66a26">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_BITS_PER_SAMPLE</a>,
Chris@1: 00317     <a class="code" href="group__flac__stream__encoder.html#gga66a27">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_SAMPLE_RATE</a>,
Chris@1: 00320     <a class="code" href="group__flac__stream__encoder.html#gga66a28">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_BLOCK_SIZE</a>,
Chris@1: 00323     <a class="code" href="group__flac__stream__encoder.html#gga66a29">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_MAX_LPC_ORDER</a>,
Chris@1: 00326     <a class="code" href="group__flac__stream__encoder.html#gga66a30">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_QLP_COEFF_PRECISION</a>,
Chris@1: 00329     <a class="code" href="group__flac__stream__encoder.html#gga66a31">FLAC__STREAM_ENCODER_INIT_STATUS_BLOCK_SIZE_TOO_SMALL_FOR_LPC_ORDER</a>,
Chris@1: 00332     <a class="code" href="group__flac__stream__encoder.html#gga66a32">FLAC__STREAM_ENCODER_INIT_STATUS_NOT_STREAMABLE</a>,
Chris@1: 00335     <a class="code" href="group__flac__stream__encoder.html#gga66a33">FLAC__STREAM_ENCODER_INIT_STATUS_INVALID_METADATA</a>,
Chris@1: 00344     <a class="code" href="group__flac__stream__encoder.html#gga66a34">FLAC__STREAM_ENCODER_INIT_STATUS_ALREADY_INITIALIZED</a>
Chris@1: 00350 } <a class="code" href="group__flac__stream__encoder.html#ga66">FLAC__StreamEncoderInitStatus</a>;
Chris@1: 00351 
Chris@1: 00357 <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__stream__encoder.html#ga1">FLAC__StreamEncoderInitStatusString</a>[];
Chris@1: 00358 
Chris@1: 00359 
Chris@1: <a name="l00362"></a><a class="code" href="group__flac__stream__encoder.html#ga67">00362</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00363 
Chris@1: 00364     <a class="code" href="group__flac__stream__encoder.html#gga67a35">FLAC__STREAM_ENCODER_READ_STATUS_CONTINUE</a>,
Chris@1: 00367     <a class="code" href="group__flac__stream__encoder.html#gga67a36">FLAC__STREAM_ENCODER_READ_STATUS_END_OF_STREAM</a>,
Chris@1: 00370     <a class="code" href="group__flac__stream__encoder.html#gga67a37">FLAC__STREAM_ENCODER_READ_STATUS_ABORT</a>,
Chris@1: 00373     <a class="code" href="group__flac__stream__encoder.html#gga67a38">FLAC__STREAM_ENCODER_READ_STATUS_UNSUPPORTED</a>
Chris@1: 00376 } <a class="code" href="group__flac__stream__encoder.html#ga67">FLAC__StreamEncoderReadStatus</a>;
Chris@1: 00377 
Chris@1: 00383 <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__stream__encoder.html#ga2">FLAC__StreamEncoderReadStatusString</a>[];
Chris@1: 00384 
Chris@1: 00385 
Chris@1: <a name="l00388"></a><a class="code" href="group__flac__stream__encoder.html#ga68">00388</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00389 
Chris@1: 00390     <a class="code" href="group__flac__stream__encoder.html#gga68a39">FLAC__STREAM_ENCODER_WRITE_STATUS_OK</a> = 0,
Chris@1: 00393     <a class="code" href="group__flac__stream__encoder.html#gga68a40">FLAC__STREAM_ENCODER_WRITE_STATUS_FATAL_ERROR</a>
Chris@1: 00396 } <a class="code" href="group__flac__stream__encoder.html#ga68">FLAC__StreamEncoderWriteStatus</a>;
Chris@1: 00397 
Chris@1: 00403 <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__stream__encoder.html#ga3">FLAC__StreamEncoderWriteStatusString</a>[];
Chris@1: 00404 
Chris@1: 00405 
Chris@1: <a name="l00408"></a><a class="code" href="group__flac__stream__encoder.html#ga69">00408</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00409 
Chris@1: 00410     <a class="code" href="group__flac__stream__encoder.html#gga69a41">FLAC__STREAM_ENCODER_SEEK_STATUS_OK</a>,
Chris@1: 00413     <a class="code" href="group__flac__stream__encoder.html#gga69a42">FLAC__STREAM_ENCODER_SEEK_STATUS_ERROR</a>,
Chris@1: 00416     <a class="code" href="group__flac__stream__encoder.html#gga69a43">FLAC__STREAM_ENCODER_SEEK_STATUS_UNSUPPORTED</a>
Chris@1: 00419 } <a class="code" href="group__flac__stream__encoder.html#ga69">FLAC__StreamEncoderSeekStatus</a>;
Chris@1: 00420 
Chris@1: 00426 <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__stream__encoder.html#ga4">FLAC__StreamEncoderSeekStatusString</a>[];
Chris@1: 00427 
Chris@1: 00428 
Chris@1: <a name="l00431"></a><a class="code" href="group__flac__stream__encoder.html#ga70">00431</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
Chris@1: 00432 
Chris@1: 00433     <a class="code" href="group__flac__stream__encoder.html#gga70a44">FLAC__STREAM_ENCODER_TELL_STATUS_OK</a>,
Chris@1: 00436     <a class="code" href="group__flac__stream__encoder.html#gga70a45">FLAC__STREAM_ENCODER_TELL_STATUS_ERROR</a>,
Chris@1: 00439     <a class="code" href="group__flac__stream__encoder.html#gga70a46">FLAC__STREAM_ENCODER_TELL_STATUS_UNSUPPORTED</a>
Chris@1: 00442 } <a class="code" href="group__flac__stream__encoder.html#ga70">FLAC__StreamEncoderTellStatus</a>;
Chris@1: 00443 
Chris@1: 00449 <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__stream__encoder.html#ga5">FLAC__StreamEncoderTellStatusString</a>[];
Chris@1: 00450 
Chris@1: 00451 
Chris@1: 00452 <span class="comment">/***********************************************************************</span>
Chris@1: 00453 <span class="comment"> *</span>
Chris@1: 00454 <span class="comment"> * class FLAC__StreamEncoder</span>
Chris@1: 00455 <span class="comment"> *</span>
Chris@1: 00456 <span class="comment"> ***********************************************************************/</span>
Chris@1: 00457 
Chris@1: 00458 <span class="keyword">struct </span>FLAC__StreamEncoderProtected;
Chris@1: 00459 <span class="keyword">struct </span>FLAC__StreamEncoderPrivate;
Chris@1: <a name="l00464"></a><a class="code" href="structFLAC____StreamEncoder.html">00464</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
Chris@1: 00465     <span class="keyword">struct </span>FLAC__StreamEncoderProtected *protected_; <span class="comment">/* avoid the C++ keyword 'protected' */</span>
Chris@1: 00466     <span class="keyword">struct </span>FLAC__StreamEncoderPrivate *private_; <span class="comment">/* avoid the C++ keyword 'private' */</span>
Chris@1: 00467 } <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a>;
Chris@1: 00468 
Chris@1: <a name="l00518"></a><a class="code" href="group__flac__stream__encoder.html#ga6">00518</a> <span class="keyword">typedef</span> <a class="code" href="group__flac__stream__encoder.html#ga67">FLAC__StreamEncoderReadStatus</a> (*<a class="code" href="group__flac__stream__encoder.html#ga6">FLAC__StreamEncoderReadCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__byte buffer[], size_t *bytes, <span class="keywordtype">void</span> *client_data);
Chris@1: 00519 
Chris@1: <a name="l00556"></a><a class="code" href="group__flac__stream__encoder.html#ga7">00556</a> <span class="keyword">typedef</span> <a class="code" href="group__flac__stream__encoder.html#ga68">FLAC__StreamEncoderWriteStatus</a> (*<a class="code" href="group__flac__stream__encoder.html#ga7">FLAC__StreamEncoderWriteCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> FLAC__byte buffer[], size_t bytes, <span class="keywordtype">unsigned</span> samples, <span class="keywordtype">unsigned</span> current_frame, <span class="keywordtype">void</span> *client_data);
Chris@1: 00557 
Chris@1: <a name="l00590"></a><a class="code" href="group__flac__stream__encoder.html#ga8">00590</a> <span class="keyword">typedef</span> <a class="code" href="group__flac__stream__encoder.html#ga69">FLAC__StreamEncoderSeekStatus</a> (*<a class="code" href="group__flac__stream__encoder.html#ga8">FLAC__StreamEncoderSeekCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__uint64 absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
Chris@1: 00591 
Chris@1: <a name="l00635"></a><a class="code" href="group__flac__stream__encoder.html#ga9">00635</a> <span class="keyword">typedef</span> <a class="code" href="group__flac__stream__encoder.html#ga70">FLAC__StreamEncoderTellStatus</a> (*<a class="code" href="group__flac__stream__encoder.html#ga9">FLAC__StreamEncoderTellCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__uint64 *absolute_byte_offset, <span class="keywordtype">void</span> *client_data);
Chris@1: 00636 
Chris@1: <a name="l00654"></a><a class="code" href="group__flac__stream__encoder.html#ga10">00654</a> <span class="keyword">typedef</span> void (*<a class="code" href="group__flac__stream__encoder.html#ga10">FLAC__StreamEncoderMetadataCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> <a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> *metadata, <span class="keywordtype">void</span> *client_data);
Chris@1: 00655 
Chris@1: <a name="l00677"></a><a class="code" href="group__flac__stream__encoder.html#ga11">00677</a> <span class="keyword">typedef</span> void (*<a class="code" href="group__flac__stream__encoder.html#ga11">FLAC__StreamEncoderProgressCallback</a>)(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__uint64 bytes_written, FLAC__uint64 samples_written, <span class="keywordtype">unsigned</span> frames_written, <span class="keywordtype">unsigned</span> total_frames_estimate, <span class="keywordtype">void</span> *client_data);
Chris@1: 00678 
Chris@1: 00679 
Chris@1: 00680 <span class="comment">/***********************************************************************</span>
Chris@1: 00681 <span class="comment"> *</span>
Chris@1: 00682 <span class="comment"> * Class constructor/destructor</span>
Chris@1: 00683 <span class="comment"> *</span>
Chris@1: 00684 <span class="comment"> ***********************************************************************/</span>
Chris@1: 00685 
Chris@1: 00693 FLAC_API <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *<a class="code" href="group__flac__stream__encoder.html#ga12">FLAC__stream_encoder_new</a>(<span class="keywordtype">void</span>);
Chris@1: 00694 
Chris@1: 00701 FLAC_API <span class="keywordtype">void</span> <a class="code" href="group__flac__stream__encoder.html#ga13">FLAC__stream_encoder_delete</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 00702 
Chris@1: 00703 
Chris@1: 00704 <span class="comment">/***********************************************************************</span>
Chris@1: 00705 <span class="comment"> *</span>
Chris@1: 00706 <span class="comment"> * Public class method prototypes</span>
Chris@1: 00707 <span class="comment"> *</span>
Chris@1: 00708 <span class="comment"> ***********************************************************************/</span>
Chris@1: 00709 
Chris@1: 00727 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga14">FLAC__stream_encoder_set_ogg_serial_number</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">long</span> serial_number);
Chris@1: 00728 
Chris@1: 00743 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga15">FLAC__stream_encoder_set_verify</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 00744 
Chris@1: 00761 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga16">FLAC__stream_encoder_set_streamable_subset</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 00762 
Chris@1: 00773 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga17">FLAC__stream_encoder_set_channels</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00774 
Chris@1: 00789 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga18">FLAC__stream_encoder_set_bits_per_sample</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00790 
Chris@1: 00801 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga19">FLAC__stream_encoder_set_sample_rate</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00802 
Chris@1: 00864 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga20">FLAC__stream_encoder_set_compression_level</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00865 
Chris@1: 00879 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga21">FLAC__stream_encoder_set_blocksize</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00880 
Chris@1: 00893 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga22">FLAC__stream_encoder_set_do_mid_side_stereo</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 00894 
Chris@1: 00909 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga23">FLAC__stream_encoder_set_loose_mid_side_stereo</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 00910 
Chris@1: 00954 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga24">FLAC__stream_encoder_set_apodization</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> <span class="keywordtype">char</span> *specification);
Chris@1: 00955 
Chris@1: 00966 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga25">FLAC__stream_encoder_set_max_lpc_order</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00967 
Chris@1: 00984 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga26">FLAC__stream_encoder_set_qlp_coeff_precision</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 00985 
Chris@1: 00998 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga27">FLAC__stream_encoder_set_do_qlp_coeff_prec_search</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 00999 
Chris@1: 01010 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga28">FLAC__stream_encoder_set_do_escape_coding</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 01011 
Chris@1: 01024 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga29">FLAC__stream_encoder_set_do_exhaustive_model_search</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__bool value);
Chris@1: 01025 
Chris@1: 01047 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga30">FLAC__stream_encoder_set_min_residual_partition_order</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 01048 
Chris@1: 01070 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga31">FLAC__stream_encoder_set_max_residual_partition_order</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 01071 
Chris@1: 01082 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga32">FLAC__stream_encoder_set_rice_parameter_search_dist</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keywordtype">unsigned</span> value);
Chris@1: 01083 
Chris@1: 01098 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga33">FLAC__stream_encoder_set_total_samples_estimate</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__uint64 value);
Chris@1: 01099 
Chris@1: 01181 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga34">FLAC__stream_encoder_set_metadata</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <a class="code" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a> **metadata, <span class="keywordtype">unsigned</span> num_blocks);
Chris@1: 01182 
Chris@1: 01191 FLAC_API FLAC__StreamEncoderState <a class="code" href="group__flac__stream__encoder.html#ga35">FLAC__stream_encoder_get_state</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01192 
Chris@1: 01203 FLAC_API <a class="code" href="group__flac__stream__decoder.html#ga50">FLAC__StreamDecoderState</a> <a class="code" href="group__flac__stream__encoder.html#ga36">FLAC__stream_encoder_get_verify_decoder_state</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01204 
Chris@1: 01216 FLAC_API <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__flac__stream__encoder.html#ga37">FLAC__stream_encoder_get_resolved_state_string</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01217 
Chris@1: 01235 FLAC_API <span class="keywordtype">void</span> <a class="code" href="group__flac__stream__encoder.html#ga38">FLAC__stream_encoder_get_verify_decoder_error_stats</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FLAC__uint64 *absolute_sample, <span class="keywordtype">unsigned</span> *frame_number, <span class="keywordtype">unsigned</span> *channel, <span class="keywordtype">unsigned</span> *sample, FLAC__int32 *expected, FLAC__int32 *got);
Chris@1: 01236 
Chris@1: 01245 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga39">FLAC__stream_encoder_get_verify</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01246 
Chris@1: 01255 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga40">FLAC__stream_encoder_get_streamable_subset</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01256 
Chris@1: 01265 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga41">FLAC__stream_encoder_get_channels</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01266 
Chris@1: 01275 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga42">FLAC__stream_encoder_get_bits_per_sample</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01276 
Chris@1: 01285 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga43">FLAC__stream_encoder_get_sample_rate</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01286 
Chris@1: 01295 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga44">FLAC__stream_encoder_get_blocksize</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01296 
Chris@1: 01305 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga45">FLAC__stream_encoder_get_do_mid_side_stereo</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01306 
Chris@1: 01315 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga46">FLAC__stream_encoder_get_loose_mid_side_stereo</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01316 
Chris@1: 01325 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga47">FLAC__stream_encoder_get_max_lpc_order</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01326 
Chris@1: 01335 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga48">FLAC__stream_encoder_get_qlp_coeff_precision</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01336 
Chris@1: 01345 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga49">FLAC__stream_encoder_get_do_qlp_coeff_prec_search</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01346 
Chris@1: 01355 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga50">FLAC__stream_encoder_get_do_escape_coding</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01356 
Chris@1: 01365 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga51">FLAC__stream_encoder_get_do_exhaustive_model_search</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01366 
Chris@1: 01375 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga52">FLAC__stream_encoder_get_min_residual_partition_order</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01376 
Chris@1: 01385 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga53">FLAC__stream_encoder_get_max_residual_partition_order</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01386 
Chris@1: 01395 FLAC_API <span class="keywordtype">unsigned</span> <a class="code" href="group__flac__stream__encoder.html#ga54">FLAC__stream_encoder_get_rice_parameter_search_dist</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01396 
Chris@1: 01408 FLAC_API FLAC__uint64 <a class="code" href="group__flac__stream__encoder.html#ga55">FLAC__stream_encoder_get_total_samples_estimate</a>(<span class="keyword">const</span> <a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01409 
Chris@1: 01471 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga56">FLAC__stream_encoder_init_stream</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <a class="code" href="group__flac__stream__encoder.html#ga7">FLAC__StreamEncoderWriteCallback</a> write_callback, <a class="code" href="group__flac__stream__encoder.html#ga8">FLAC__StreamEncoderSeekCallback</a> seek_callback, <a class="code" href="group__flac__stream__encoder.html#ga9">FLAC__StreamEncoderTellCallback</a> tell_callback, <a class="code" href="group__flac__stream__encoder.html#ga10">FLAC__StreamEncoderMetadataCallback</a> metadata_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01472 
Chris@1: 01539 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga57">FLAC__stream_encoder_init_ogg_stream</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <a class="code" href="group__flac__stream__encoder.html#ga6">FLAC__StreamEncoderReadCallback</a> read_callback, <a class="code" href="group__flac__stream__encoder.html#ga7">FLAC__StreamEncoderWriteCallback</a> write_callback, <a class="code" href="group__flac__stream__encoder.html#ga8">FLAC__StreamEncoderSeekCallback</a> seek_callback, <a class="code" href="group__flac__stream__encoder.html#ga9">FLAC__StreamEncoderTellCallback</a> tell_callback, <a class="code" href="group__flac__stream__encoder.html#ga10">FLAC__StreamEncoderMetadataCallback</a> metadata_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01540 
Chris@1: 01574 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga58">FLAC__stream_encoder_init_FILE</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FILE *file, <a class="code" href="group__flac__stream__encoder.html#ga11">FLAC__StreamEncoderProgressCallback</a> progress_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01575 
Chris@1: 01609 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga59">FLAC__stream_encoder_init_ogg_FILE</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, FILE *file, <a class="code" href="group__flac__stream__encoder.html#ga11">FLAC__StreamEncoderProgressCallback</a> progress_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01610 
Chris@1: 01641 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga60">FLAC__stream_encoder_init_file</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <a class="code" href="group__flac__stream__encoder.html#ga11">FLAC__StreamEncoderProgressCallback</a> progress_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01642 
Chris@1: 01673 FLAC_API FLAC__StreamEncoderInitStatus <a class="code" href="group__flac__stream__encoder.html#ga61">FLAC__stream_encoder_init_ogg_file</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <a class="code" href="group__flac__stream__encoder.html#ga11">FLAC__StreamEncoderProgressCallback</a> progress_callback, <span class="keywordtype">void</span> *client_data);
Chris@1: 01674 
Chris@1: 01701 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga62">FLAC__stream_encoder_finish</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder);
Chris@1: 01702 
Chris@1: 01728 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga63">FLAC__stream_encoder_process</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> FLAC__int32 * <span class="keyword">const</span> buffer[], <span class="keywordtype">unsigned</span> samples);
Chris@1: 01729 
Chris@1: 01760 FLAC_API FLAC__bool <a class="code" href="group__flac__stream__encoder.html#ga64">FLAC__stream_encoder_process_interleaved</a>(<a class="code" href="structFLAC____StreamEncoder.html">FLAC__StreamEncoder</a> *encoder, <span class="keyword">const</span> FLAC__int32 buffer[], <span class="keywordtype">unsigned</span> samples);
Chris@1: 01761 
Chris@1: 01762 <span class="comment">/* \} */</span>
Chris@1: 01763 
Chris@1: 01764 <span class="preprocessor">#ifdef __cplusplus</span>
Chris@1: 01765 <span class="preprocessor"></span>}
Chris@1: 01766 <span class="preprocessor">#endif</span>
Chris@1: 01767 <span class="preprocessor"></span>
Chris@1: 01768 <span class="preprocessor">#endif</span>
Chris@1: </pre></div>
Chris@1: <hr size="1">
Chris@1: <div class="copyright">
Chris@1: 	<!-- @@@ oh so hacky -->
Chris@1: 	<table>
Chris@1: 		<tr>
Chris@1: 			<td align="left">
Chris@1: 				Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson
Chris@1: 			</td>
Chris@1: 			<td width="1%" align="right">
Chris@1: 				<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: 			</td>
Chris@1: 		</tr>
Chris@1: 	</table>
Chris@1: </div>
Chris@1: <!-- Copyright (c)  2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson -->
Chris@1: <!-- Permission is granted to copy, distribute and/or modify this document -->
Chris@1: <!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
Chris@1: <!-- or any later version published by the Free Software Foundation; -->
Chris@1: <!-- with no invariant sections. -->
Chris@1: <!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
Chris@1: </body>
Chris@1: </html>