1 /* libFLAC - Free Lossless Audio Codec library
2 * Copyright (C) 2001,2002,2003 Josh Coalson
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
20 #ifndef FLAC__PROTECTED__STREAM_ENCODER_H
21 #define FLAC__PROTECTED__STREAM_ENCODER_H
23 #include "FLAC/stream_encoder.h"
25 typedef struct FLAC__StreamEncoderProtected {
26 FLAC__StreamEncoderState state;
28 FLAC__bool streamable_subset;
29 FLAC__bool do_mid_side_stereo;
30 FLAC__bool loose_mid_side_stereo;
32 unsigned bits_per_sample;
35 unsigned max_lpc_order;
36 unsigned qlp_coeff_precision;
37 FLAC__bool do_qlp_coeff_prec_search;
38 FLAC__bool do_exhaustive_model_search;
39 FLAC__bool do_escape_coding;
40 unsigned min_residual_partition_order;
41 unsigned max_residual_partition_order;
42 unsigned rice_parameter_search_dist;
43 FLAC__uint64 total_samples_estimate;
44 FLAC__StreamMetadata **metadata;
45 unsigned num_metadata_blocks;
46 } FLAC__StreamEncoderProtected;