1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
<title>FLAC/format.h: format components</title>
3
<title>FLAC: FLAC/format.h: format components</title>
4
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
6
<!-- Generated by Doxygen 1.2.14 -->
8
<a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center>
9
<hr><h1>FLAC/format.h: format components<br>
6
<!-- Generated by Doxygen 1.4.2 -->
7
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a></div>
8
<h1>FLAC/format.h: format components<br>
11
10
[<a class="el" href="group__flac.html">FLAC C API</a>]</small>
12
</h1>This module contains structure definitions for the representation of FLAC format components in memory. These are the basic structures used by the rest of the interfaces.
13
<a href="#_details">More...</a><table border=0 cellpadding=0 cellspacing=0>
14
<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
15
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____EntropyCodingMethod__PartitionedRiceContents.html">FLAC__EntropyCodingMethod_PartitionedRiceContents</a></td></tr>
16
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____EntropyCodingMethod__PartitionedRice.html">FLAC__EntropyCodingMethod_PartitionedRice</a></td></tr>
17
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____EntropyCodingMethod.html">FLAC__EntropyCodingMethod</a></td></tr>
18
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Subframe__Constant.html">FLAC__Subframe_Constant</a></td></tr>
19
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Subframe__Verbatim.html">FLAC__Subframe_Verbatim</a></td></tr>
20
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Subframe__Fixed.html">FLAC__Subframe_Fixed</a></td></tr>
21
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Subframe__LPC.html">FLAC__Subframe_LPC</a></td></tr>
22
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Subframe.html">FLAC__Subframe</a></td></tr>
23
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____FrameHeader.html">FLAC__FrameHeader</a></td></tr>
24
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____FrameFooter.html">FLAC__FrameFooter</a></td></tr>
25
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____Frame.html">FLAC__Frame</a></td></tr>
26
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__StreamInfo.html">FLAC__StreamMetadata_StreamInfo</a></td></tr>
27
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__Padding.html">FLAC__StreamMetadata_Padding</a></td></tr>
28
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__Application.html">FLAC__StreamMetadata_Application</a></td></tr>
29
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a></td></tr>
30
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a></td></tr>
31
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a></td></tr>
32
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__VorbisComment.html">FLAC__StreamMetadata_VorbisComment</a></td></tr>
33
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a></td></tr>
34
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__CueSheet__Track.html">FLAC__StreamMetadata_CueSheet_Track</a></td></tr>
35
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a></td></tr>
36
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata__Unknown.html">FLAC__StreamMetadata_Unknown</a></td></tr>
37
<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a></td></tr>
38
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
39
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a75">FLAC__MAX_METADATA_TYPE_CODE</a> (126u)</td></tr>
40
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a76">FLAC__MIN_BLOCK_SIZE</a> (16u)</td></tr>
41
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a77">FLAC__MAX_BLOCK_SIZE</a> (65535u)</td></tr>
42
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a78">FLAC__MAX_CHANNELS</a> (8u)</td></tr>
43
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a79">FLAC__MIN_BITS_PER_SAMPLE</a> (4u)</td></tr>
44
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a80">FLAC__MAX_BITS_PER_SAMPLE</a> (32u)</td></tr>
45
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a81">FLAC__REFERENCE_CODEC_MAX_BITS_PER_SAMPLE</a> (24u)</td></tr>
46
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a82">FLAC__MAX_SAMPLE_RATE</a> (655350u)</td></tr>
47
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a83">FLAC__MAX_LPC_ORDER</a> (32u)</td></tr>
48
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a84">FLAC__MIN_QLP_COEFF_PRECISION</a> (5u)</td></tr>
49
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a85">FLAC__MAX_QLP_COEFF_PRECISION</a> (15u)</td></tr>
50
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a86">FLAC__MAX_FIXED_ORDER</a> (4u)</td></tr>
51
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a87">FLAC__MAX_RICE_PARTITION_ORDER</a> (15u)</td></tr>
52
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a88">FLAC__SUBSET_MAX_RICE_PARTITION_ORDER</a> (8u)</td></tr>
53
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a89">FLAC__STREAM_SYNC_LENGTH</a> (4u)</td></tr>
54
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a90">FLAC__STREAM_METADATA_STREAMINFO_LENGTH</a> (34u)</td></tr>
55
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a91">FLAC__STREAM_METADATA_SEEKPOINT_LENGTH</a> (18u)</td></tr>
56
<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__flac__format.html#a92">FLAC__STREAM_METADATA_HEADER_LENGTH</a> (4u)</td></tr>
57
<tr><td colspan=2><br><h2>Enumerations</h2></td></tr>
58
<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group__flac__format.html#a93">FLAC__EntropyCodingMethodType</a> { <a class="el" href="group__flac__format.html#a93a86">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE</a> = 0
60
<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group__flac__format.html#a94">FLAC__SubframeType</a> { <a class="el" href="group__flac__format.html#a94a87">FLAC__SUBFRAME_TYPE_CONSTANT</a> = 0,
61
<a class="el" href="group__flac__format.html#a94a88">FLAC__SUBFRAME_TYPE_VERBATIM</a> = 1,
62
<a class="el" href="group__flac__format.html#a94a89">FLAC__SUBFRAME_TYPE_FIXED</a> = 2,
63
<a class="el" href="group__flac__format.html#a94a90">FLAC__SUBFRAME_TYPE_LPC</a> = 3
65
<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group__flac__format.html#a95">FLAC__ChannelAssignment</a> { <a class="el" href="group__flac__format.html#a95a91">FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT</a> = 0,
66
<a class="el" href="group__flac__format.html#a95a92">FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE</a> = 1,
67
<a class="el" href="group__flac__format.html#a95a93">FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE</a> = 2,
68
<a class="el" href="group__flac__format.html#a95a94">FLAC__CHANNEL_ASSIGNMENT_MID_SIDE</a> = 3
70
<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group__flac__format.html#a96">FLAC__FrameNumberType</a> { <a class="el" href="group__flac__format.html#a96a95">FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER</a>,
71
<a class="el" href="group__flac__format.html#a96a96">FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER</a>
73
<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group__flac__format.html#a97">FLAC__MetadataType</a> { <br>
74
<a class="el" href="group__flac__format.html#a97a97">FLAC__METADATA_TYPE_STREAMINFO</a> = 0,
75
<a class="el" href="group__flac__format.html#a97a98">FLAC__METADATA_TYPE_PADDING</a> = 1,
76
<a class="el" href="group__flac__format.html#a97a99">FLAC__METADATA_TYPE_APPLICATION</a> = 2,
77
<a class="el" href="group__flac__format.html#a97a100">FLAC__METADATA_TYPE_SEEKTABLE</a> = 3,
79
<a class="el" href="group__flac__format.html#a97a101">FLAC__METADATA_TYPE_VORBIS_COMMENT</a> = 4,
80
<a class="el" href="group__flac__format.html#a97a102">FLAC__METADATA_TYPE_CUESHEET</a> = 5,
81
<a class="el" href="group__flac__format.html#a97a103">FLAC__METADATA_TYPE_UNDEFINED</a> = 6
84
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
85
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a68">FLAC__format_sample_rate_is_valid</a> (unsigned sample_rate)</td></tr>
86
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a69">FLAC__format_vorbiscomment_entry_name_is_legal</a> (const char *name)</td></tr>
87
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a70">FLAC__format_vorbiscomment_entry_value_is_legal</a> (const FLAC__byte *value, unsigned length)</td></tr>
88
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a71">FLAC__format_vorbiscomment_entry_is_legal</a> (const FLAC__byte *entry, unsigned length)</td></tr>
89
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a72">FLAC__format_seektable_is_legal</a> (const <a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table)</td></tr>
90
<tr><td nowrap align=right valign=top>unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a73">FLAC__format_seektable_sort</a> (<a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table)</td></tr>
91
<tr><td nowrap align=right valign=top>FLAC__bool </td><td valign=bottom><a class="el" href="group__flac__format.html#a74">FLAC__format_cuesheet_is_legal</a> (const <a class="el" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a> *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation)</td></tr>
92
<tr><td colspan=2><br><h2>Variables</h2></td></tr>
93
<tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="group__flac__format.html#a0">FLAC__VERSION_STRING</a></td></tr>
94
<tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="group__flac__format.html#a1">FLAC__VENDOR_STRING</a></td></tr>
95
<tr><td nowrap align=right valign=top>const FLAC__byte </td><td valign=bottom><a class="el" href="group__flac__format.html#a2">FLAC__STREAM_SYNC_STRING</a> [4]</td></tr>
96
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a3">FLAC__STREAM_SYNC</a></td></tr>
97
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a4">FLAC__STREAM_SYNC_LEN</a></td></tr>
98
<tr><td nowrap align=right valign=top>const char *const </td><td valign=bottom><a class="el" href="group__flac__format.html#a5">FLAC__EntropyCodingMethodTypeString</a> []</td></tr>
99
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a6">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN</a></td></tr>
100
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a7">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN</a></td></tr>
101
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a8">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN</a></td></tr>
102
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a9">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER</a></td></tr>
103
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a10">FLAC__ENTROPY_CODING_METHOD_TYPE_LEN</a></td></tr>
104
<tr><td nowrap align=right valign=top>const char *const </td><td valign=bottom><a class="el" href="group__flac__format.html#a11">FLAC__SubframeTypeString</a> []</td></tr>
105
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a12">FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN</a></td></tr>
106
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a13">FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN</a></td></tr>
107
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a14">FLAC__SUBFRAME_ZERO_PAD_LEN</a></td></tr>
108
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a15">FLAC__SUBFRAME_TYPE_LEN</a></td></tr>
109
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a16">FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN</a></td></tr>
110
<tr><td nowrap align=right valign=top><a name="a17" doxytag="flac_format::FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK"></a>
111
const unsigned </td><td valign=bottom><b>FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK</b></td></tr>
112
<tr><td nowrap align=right valign=top><a name="a18" doxytag="flac_format::FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK"></a>
113
const unsigned </td><td valign=bottom><b>FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK</b></td></tr>
114
<tr><td nowrap align=right valign=top><a name="a19" doxytag="flac_format::FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK"></a>
115
const unsigned </td><td valign=bottom><b>FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK</b></td></tr>
116
<tr><td nowrap align=right valign=top><a name="a20" doxytag="flac_format::FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK"></a>
117
const unsigned </td><td valign=bottom><b>FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK</b></td></tr>
118
<tr><td nowrap align=right valign=top>const char *const </td><td valign=bottom><a class="el" href="group__flac__format.html#a21">FLAC__ChannelAssignmentString</a> []</td></tr>
119
<tr><td nowrap align=right valign=top>const char *const </td><td valign=bottom><a class="el" href="group__flac__format.html#a22">FLAC__FrameNumberTypeString</a> []</td></tr>
120
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a23">FLAC__FRAME_HEADER_SYNC</a></td></tr>
121
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a24">FLAC__FRAME_HEADER_SYNC_LEN</a></td></tr>
122
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a25">FLAC__FRAME_HEADER_RESERVED_LEN</a></td></tr>
123
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a26">FLAC__FRAME_HEADER_BLOCK_SIZE_LEN</a></td></tr>
124
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a27">FLAC__FRAME_HEADER_SAMPLE_RATE_LEN</a></td></tr>
125
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a28">FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN</a></td></tr>
126
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a29">FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN</a></td></tr>
127
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a30">FLAC__FRAME_HEADER_ZERO_PAD_LEN</a></td></tr>
128
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a31">FLAC__FRAME_HEADER_CRC_LEN</a></td></tr>
129
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a32">FLAC__FRAME_FOOTER_CRC_LEN</a></td></tr>
130
<tr><td nowrap align=right valign=top>const char *const </td><td valign=bottom><a class="el" href="group__flac__format.html#a33">FLAC__MetadataTypeString</a> []</td></tr>
131
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a34">FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN</a></td></tr>
132
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a35">FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN</a></td></tr>
133
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a36">FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN</a></td></tr>
134
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a37">FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN</a></td></tr>
135
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a38">FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN</a></td></tr>
136
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a39">FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN</a></td></tr>
137
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a40">FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN</a></td></tr>
138
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a41">FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN</a></td></tr>
139
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a42">FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN</a></td></tr>
140
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a43">FLAC__STREAM_METADATA_APPLICATION_ID_LEN</a></td></tr>
141
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a44">FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN</a></td></tr>
142
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a45">FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN</a></td></tr>
143
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a46">FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN</a></td></tr>
144
<tr><td nowrap align=right valign=top>const FLAC__uint64 </td><td valign=bottom><a class="el" href="group__flac__format.html#a47">FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER</a></td></tr>
145
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a48">FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN</a></td></tr>
146
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a49">FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN</a></td></tr>
147
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a50">FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN</a></td></tr>
148
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a51">FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN</a></td></tr>
149
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a52">FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN</a></td></tr>
150
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a53">FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN</a></td></tr>
151
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a54">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN</a></td></tr>
152
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a55">FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN</a></td></tr>
153
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a56">FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN</a></td></tr>
154
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a57">FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN</a></td></tr>
155
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a58">FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN</a></td></tr>
156
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a59">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN</a></td></tr>
157
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a60">FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN</a></td></tr>
158
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a61">FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN</a></td></tr>
159
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a62">FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN</a></td></tr>
160
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a63">FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN</a></td></tr>
161
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a64">FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN</a></td></tr>
162
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a65">FLAC__STREAM_METADATA_IS_LAST_LEN</a></td></tr>
163
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a66">FLAC__STREAM_METADATA_TYPE_LEN</a></td></tr>
164
<tr><td nowrap align=right valign=top>const unsigned </td><td valign=bottom><a class="el" href="group__flac__format.html#a67">FLAC__STREAM_METADATA_LENGTH_LEN</a></td></tr>
11
</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
12
This module contains structure definitions for the representation of FLAC format components in memory. These are the basic structures used by the rest of the interfaces.
14
First, you should be familiar with the <a href="../format.html">FLAC format</a>. Many of the values here follow directly from the specification. As a user of libFLAC, the interesting parts really are the structures that describe the frame header and metadata blocks.<p>
15
The format structures here are very primitive, designed to store information in an efficient way. Reading information from the structures is easy but creating or modifying them directly is more complex. For the most part, as a user of a library, editing is not necessary; however, for metadata blocks it is, so there are convenience functions provided in the <a class="el" href="group__flac__metadata.html">metadata module </a> to simplify the manipulation of metadata blocks.<p>
16
<dl compact><dt><b>Note:</b></dt><dd>It's not the best convention, but symbols ending in _LEN are in bits and _LENGTH are in bytes. _LENGTH symbols are #defines instead of global variables because they are usually used when declaring byte arrays and some compilers require compile-time knowledge of array sizes when declared on the stack. </dd></dl>
19
<table border="0" cellpadding="0" cellspacing="0">
21
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
22
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____EntropyCodingMethod__PartitionedRiceContents.html">FLAC__EntropyCodingMethod_PartitionedRiceContents</a></td></tr>
24
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____EntropyCodingMethod__PartitionedRice.html">FLAC__EntropyCodingMethod_PartitionedRice</a></td></tr>
26
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____EntropyCodingMethod.html">FLAC__EntropyCodingMethod</a></td></tr>
28
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Subframe__Constant.html">FLAC__Subframe_Constant</a></td></tr>
30
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Subframe__Verbatim.html">FLAC__Subframe_Verbatim</a></td></tr>
32
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Subframe__Fixed.html">FLAC__Subframe_Fixed</a></td></tr>
34
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Subframe__LPC.html">FLAC__Subframe_LPC</a></td></tr>
36
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Subframe.html">FLAC__Subframe</a></td></tr>
38
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____FrameHeader.html">FLAC__FrameHeader</a></td></tr>
40
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____FrameFooter.html">FLAC__FrameFooter</a></td></tr>
42
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____Frame.html">FLAC__Frame</a></td></tr>
44
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__StreamInfo.html">FLAC__StreamMetadata_StreamInfo</a></td></tr>
46
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__Padding.html">FLAC__StreamMetadata_Padding</a></td></tr>
48
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__Application.html">FLAC__StreamMetadata_Application</a></td></tr>
50
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__SeekPoint.html">FLAC__StreamMetadata_SeekPoint</a></td></tr>
52
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a></td></tr>
54
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__VorbisComment__Entry.html">FLAC__StreamMetadata_VorbisComment_Entry</a></td></tr>
56
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__VorbisComment.html">FLAC__StreamMetadata_VorbisComment</a></td></tr>
58
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__CueSheet__Index.html">FLAC__StreamMetadata_CueSheet_Index</a></td></tr>
60
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__CueSheet__Track.html">FLAC__StreamMetadata_CueSheet_Track</a></td></tr>
62
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a></td></tr>
64
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a></td></tr>
66
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata__Unknown.html">FLAC__StreamMetadata_Unknown</a></td></tr>
68
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structFLAC____StreamMetadata.html">FLAC__StreamMetadata</a></td></tr>
70
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
71
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga85">FLAC__MAX_METADATA_TYPE_CODE</a> (126u)</td></tr>
73
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga86">FLAC__MIN_BLOCK_SIZE</a> (16u)</td></tr>
75
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga87">FLAC__MAX_BLOCK_SIZE</a> (65535u)</td></tr>
77
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga88">FLAC__SUBSET_MAX_BLOCK_SIZE_48000HZ</a> (4608u)</td></tr>
79
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga89">FLAC__MAX_CHANNELS</a> (8u)</td></tr>
81
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga90">FLAC__MIN_BITS_PER_SAMPLE</a> (4u)</td></tr>
83
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga91">FLAC__MAX_BITS_PER_SAMPLE</a> (32u)</td></tr>
85
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga92">FLAC__REFERENCE_CODEC_MAX_BITS_PER_SAMPLE</a> (24u)</td></tr>
87
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga93">FLAC__MAX_SAMPLE_RATE</a> (655350u)</td></tr>
89
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga94">FLAC__MAX_LPC_ORDER</a> (32u)</td></tr>
91
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga95">FLAC__SUBSET_MAX_LPC_ORDER_48000HZ</a> (12u)</td></tr>
93
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga96">FLAC__MIN_QLP_COEFF_PRECISION</a> (5u)</td></tr>
95
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga97">FLAC__MAX_QLP_COEFF_PRECISION</a> (15u)</td></tr>
97
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga98">FLAC__MAX_FIXED_ORDER</a> (4u)</td></tr>
99
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga99">FLAC__MAX_RICE_PARTITION_ORDER</a> (15u)</td></tr>
101
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga100">FLAC__SUBSET_MAX_RICE_PARTITION_ORDER</a> (8u)</td></tr>
103
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga101">FLAC__STREAM_SYNC_LENGTH</a> (4u)</td></tr>
105
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga102">FLAC__STREAM_METADATA_STREAMINFO_LENGTH</a> (34u)</td></tr>
107
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga103">FLAC__STREAM_METADATA_SEEKPOINT_LENGTH</a> (18u)</td></tr>
109
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga104">FLAC__STREAM_METADATA_HEADER_LENGTH</a> (4u)</td></tr>
111
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
112
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga105">FLAC__EntropyCodingMethodType</a> { <a class="el" href="group__flac__format.html#gga105a97">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE</a> = 0
115
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga106">FLAC__SubframeType</a> { <a class="el" href="group__flac__format.html#gga106a98">FLAC__SUBFRAME_TYPE_CONSTANT</a> = 0,
116
<a class="el" href="group__flac__format.html#gga106a99">FLAC__SUBFRAME_TYPE_VERBATIM</a> = 1,
117
<a class="el" href="group__flac__format.html#gga106a100">FLAC__SUBFRAME_TYPE_FIXED</a> = 2,
118
<a class="el" href="group__flac__format.html#gga106a101">FLAC__SUBFRAME_TYPE_LPC</a> = 3
121
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga107">FLAC__ChannelAssignment</a> { <a class="el" href="group__flac__format.html#gga107a102">FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT</a> = 0,
122
<a class="el" href="group__flac__format.html#gga107a103">FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE</a> = 1,
123
<a class="el" href="group__flac__format.html#gga107a104">FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE</a> = 2,
124
<a class="el" href="group__flac__format.html#gga107a105">FLAC__CHANNEL_ASSIGNMENT_MID_SIDE</a> = 3
127
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga108">FLAC__FrameNumberType</a> { <a class="el" href="group__flac__format.html#gga108a106">FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER</a>,
128
<a class="el" href="group__flac__format.html#gga108a107">FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER</a>
131
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga109">FLAC__MetadataType</a> { <br>
132
<a class="el" href="group__flac__format.html#gga109a108">FLAC__METADATA_TYPE_STREAMINFO</a> = 0,
133
<a class="el" href="group__flac__format.html#gga109a109">FLAC__METADATA_TYPE_PADDING</a> = 1,
134
<a class="el" href="group__flac__format.html#gga109a110">FLAC__METADATA_TYPE_APPLICATION</a> = 2,
135
<a class="el" href="group__flac__format.html#gga109a111">FLAC__METADATA_TYPE_SEEKTABLE</a> = 3,
137
<a class="el" href="group__flac__format.html#gga109a112">FLAC__METADATA_TYPE_VORBIS_COMMENT</a> = 4,
138
<a class="el" href="group__flac__format.html#gga109a113">FLAC__METADATA_TYPE_CUESHEET</a> = 5,
139
<a class="el" href="group__flac__format.html#gga109a114">FLAC__METADATA_TYPE_PICTURE</a> = 6,
140
<a class="el" href="group__flac__format.html#gga109a115">FLAC__METADATA_TYPE_UNDEFINED</a> = 7
144
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga110">FLAC__StreamMetadata_Picture_Type</a> { <br>
145
<a class="el" href="group__flac__format.html#gga110a116">FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER</a> = 0,
146
<a class="el" href="group__flac__format.html#gga110a117">FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD</a> = 1,
147
<a class="el" href="group__flac__format.html#gga110a118">FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON</a> = 2,
148
<a class="el" href="group__flac__format.html#gga110a119">FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER</a> = 3,
150
<a class="el" href="group__flac__format.html#gga110a120">FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER</a> = 4,
151
<a class="el" href="group__flac__format.html#gga110a121">FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE</a> = 5,
152
<a class="el" href="group__flac__format.html#gga110a122">FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA</a> = 6,
153
<a class="el" href="group__flac__format.html#gga110a123">FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST</a> = 7,
155
<a class="el" href="group__flac__format.html#gga110a124">FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST</a> = 8,
156
<a class="el" href="group__flac__format.html#gga110a125">FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR</a> = 9,
157
<a class="el" href="group__flac__format.html#gga110a126">FLAC__STREAM_METADATA_PICTURE_TYPE_BAND</a> = 10,
158
<a class="el" href="group__flac__format.html#gga110a127">FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER</a> = 11,
160
<a class="el" href="group__flac__format.html#gga110a128">FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST</a> = 12,
161
<a class="el" href="group__flac__format.html#gga110a129">FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION</a> = 13,
162
<a class="el" href="group__flac__format.html#gga110a130">FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING</a> = 14,
163
<a class="el" href="group__flac__format.html#gga110a131">FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE</a> = 15,
165
<a class="el" href="group__flac__format.html#gga110a132">FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE</a> = 16,
166
<a class="el" href="group__flac__format.html#gga110a133">FLAC__STREAM_METADATA_PICTURE_TYPE_FISH</a> = 17,
167
<a class="el" href="group__flac__format.html#gga110a134">FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION</a> = 18,
168
<a class="el" href="group__flac__format.html#gga110a135">FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE</a> = 19,
170
<a class="el" href="group__flac__format.html#gga110a136">FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE</a> = 20,
171
<b>FLAC__STREAM_METADATA_PICTURE_TYPE_UNDEFINED</b>
175
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
176
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga77">FLAC__format_sample_rate_is_valid</a> (unsigned sample_rate)</td></tr>
178
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga78">FLAC__format_vorbiscomment_entry_name_is_legal</a> (const char *name)</td></tr>
180
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga79">FLAC__format_vorbiscomment_entry_value_is_legal</a> (const FLAC__byte *value, unsigned length)</td></tr>
182
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga80">FLAC__format_vorbiscomment_entry_is_legal</a> (const FLAC__byte *entry, unsigned length)</td></tr>
184
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga81">FLAC__format_seektable_is_legal</a> (const <a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table)</td></tr>
186
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga82">FLAC__format_seektable_sort</a> (<a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> *seek_table)</td></tr>
188
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga83">FLAC__format_cuesheet_is_legal</a> (const <a class="el" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a> *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation)</td></tr>
190
<tr><td class="memItemLeft" nowrap align="right" valign="top">FLAC__bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga84">FLAC__format_picture_is_legal</a> (const <a class="el" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a> *picture, const char **violation)</td></tr>
192
<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
193
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga0">FLAC__VERSION_STRING</a></td></tr>
195
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga1">FLAC__VENDOR_STRING</a></td></tr>
197
<tr><td class="memItemLeft" nowrap align="right" valign="top">const FLAC__byte </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga2">FLAC__STREAM_SYNC_STRING</a> [4]</td></tr>
199
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga3">FLAC__STREAM_SYNC</a></td></tr>
201
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga4">FLAC__STREAM_SYNC_LEN</a></td></tr>
203
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga5">FLAC__EntropyCodingMethodTypeString</a> []</td></tr>
205
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga6">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN</a></td></tr>
207
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga7">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN</a></td></tr>
209
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga8">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN</a></td></tr>
211
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga9">FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER</a></td></tr>
213
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga10">FLAC__ENTROPY_CODING_METHOD_TYPE_LEN</a></td></tr>
215
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga11">FLAC__SubframeTypeString</a> []</td></tr>
217
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga12">FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN</a></td></tr>
219
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga13">FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN</a></td></tr>
221
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga14">FLAC__SUBFRAME_ZERO_PAD_LEN</a></td></tr>
223
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga15">FLAC__SUBFRAME_TYPE_LEN</a></td></tr>
225
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga16">FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN</a></td></tr>
227
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga17">FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK</a></td></tr>
229
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga18">FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK</a></td></tr>
231
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga19">FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK</a></td></tr>
233
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga20">FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK</a></td></tr>
235
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga21">FLAC__ChannelAssignmentString</a> []</td></tr>
237
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga22">FLAC__FrameNumberTypeString</a> []</td></tr>
239
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga23">FLAC__FRAME_HEADER_SYNC</a></td></tr>
241
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga24">FLAC__FRAME_HEADER_SYNC_LEN</a></td></tr>
243
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga25">FLAC__FRAME_HEADER_RESERVED_LEN</a></td></tr>
245
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga26">FLAC__FRAME_HEADER_BLOCK_SIZE_LEN</a></td></tr>
247
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga27">FLAC__FRAME_HEADER_SAMPLE_RATE_LEN</a></td></tr>
249
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga28">FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN</a></td></tr>
251
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga29">FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN</a></td></tr>
253
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga30">FLAC__FRAME_HEADER_ZERO_PAD_LEN</a></td></tr>
255
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga31">FLAC__FRAME_HEADER_CRC_LEN</a></td></tr>
257
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga32">FLAC__FRAME_FOOTER_CRC_LEN</a></td></tr>
259
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga33">FLAC__MetadataTypeString</a> []</td></tr>
261
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga34">FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN</a></td></tr>
263
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga35">FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN</a></td></tr>
265
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga36">FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN</a></td></tr>
267
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga37">FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN</a></td></tr>
269
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga38">FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN</a></td></tr>
271
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga39">FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN</a></td></tr>
273
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga40">FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN</a></td></tr>
275
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga41">FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN</a></td></tr>
277
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga42">FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN</a></td></tr>
279
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga43">FLAC__STREAM_METADATA_APPLICATION_ID_LEN</a></td></tr>
281
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga44">FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN</a></td></tr>
283
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga45">FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN</a></td></tr>
285
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga46">FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN</a></td></tr>
287
<tr><td class="memItemLeft" nowrap align="right" valign="top">const FLAC__uint64 </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga47">FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER</a></td></tr>
289
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga48">FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN</a></td></tr>
291
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga49">FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN</a></td></tr>
293
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga50">FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN</a></td></tr>
295
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga51">FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN</a></td></tr>
297
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga52">FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN</a></td></tr>
299
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga53">FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN</a></td></tr>
301
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga54">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN</a></td></tr>
303
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga55">FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN</a></td></tr>
305
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga56">FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN</a></td></tr>
307
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga57">FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN</a></td></tr>
309
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga58">FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN</a></td></tr>
311
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga59">FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN</a></td></tr>
313
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga60">FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN</a></td></tr>
315
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga61">FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN</a></td></tr>
317
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga62">FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN</a></td></tr>
319
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga63">FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN</a></td></tr>
321
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga64">FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN</a></td></tr>
323
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *const </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga65">FLAC__StreamMetadata_Picture_TypeString</a> []</td></tr>
325
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga66">FLAC__STREAM_METADATA_PICTURE_TYPE_LEN</a></td></tr>
327
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga67">FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN</a></td></tr>
329
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga68">FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN</a></td></tr>
331
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga69">FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN</a></td></tr>
333
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga70">FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN</a></td></tr>
335
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga71">FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN</a></td></tr>
337
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga72">FLAC__STREAM_METADATA_PICTURE_COLORS_LEN</a></td></tr>
339
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga73">FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN</a></td></tr>
341
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga74">FLAC__STREAM_METADATA_IS_LAST_LEN</a></td></tr>
343
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga75">FLAC__STREAM_METADATA_TYPE_LEN</a></td></tr>
345
<tr><td class="memItemLeft" nowrap align="right" valign="top">const unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="group__flac__format.html#ga76">FLAC__STREAM_METADATA_LENGTH_LEN</a></td></tr>
166
<hr><a name="_details"></a><h2>Detailed Description</h2>
167
This module contains structure definitions for the representation of FLAC format components in memory. These are the basic structures used by the rest of the interfaces.
171
First, you should be familiar with the <a href="../format.html">FLAC format</a>. Many of the values here follow directly from the specification. As a user of libFLAC, the interesting parts really are the structures that describe the frame header and metadata blocks.
173
The format structures here are very primitive, designed to store information in an efficient way. Reading information from the structures is easy but creating or modifying them directly is more complex. For the most part, as a user of a library, editing is not necessary; however, for metadata blocks it is, so there are convenience functions provided in the <a class="el" href="group__flac__metadata.html">metadata module</a> to simplify the manipulation of metadata blocks.
177
It's not the best convention, but symbols ending in _LEN are in bits and _LENGTH are in bytes. _LENGTH symbols are #defines instead of global variables because they are usually used when declaring byte arrays and some compilers require compile-time knowledge of array sizes when declared on the stack. </dl><hr><h2>Define Documentation</h2>
178
<a name="a75" doxytag="format.h::FLAC__MAX_METADATA_TYPE_CODE"></a><p>
179
<table width="100%" cellpadding="2" cellspacing="0" border="0">
348
<hr><h2>Define Documentation</h2>
349
<a class="anchor" name="ga85" doxytag="format.h::FLAC__MAX_METADATA_TYPE_CODE"></a><p>
350
<table class="mdTable" cellpadding="2" cellspacing="0">
182
353
<table cellpadding="0" cellspacing="0" border="0">
184
<td class="md" nowrap valign="top"> #define FLAC__MAX_METADATA_TYPE_CODE (126u)
355
<td class="md" nowrap valign="top">#define FLAC__MAX_METADATA_TYPE_CODE (126u) </td>
189
<table cellspacing=5 cellpadding=0 border=0>
361
<table cellspacing="5" cellpadding="0" border="0">
777
Tests that a sample rate is valid for FLAC. Since the rules for valid sample rates are slightly complex, they are encapsulated in this function.<dl compact><dt><b>
779
<table border=0 cellspacing=2 cellpadding=0>
780
<tr><td valign=top><em>sample_rate</em> </td><td>
781
The sample rate to test for compliance. </td></tr>
783
</dl><dl compact><dt><b>
784
Return values: </b><dd>
785
<table border=0 cellspacing=2 cellpadding=0>
786
<tr><td valign=top><em>FLAC__bool</em> </td><td>
787
<code>true</code> if the given sample rate conforms to the specification, else <code>false</code>. </td></tr>
1080
Tests that a sample rate is valid for FLAC. Since the rules for valid sample rates are slightly complex, they are encapsulated in this function.<p>
1081
<dl compact><dt><b>Parameters:</b></dt><dd>
1082
<table border="0" cellspacing="2" cellpadding="0">
1083
<tr><td valign="top"></td><td valign="top"><em>sample_rate</em> </td><td>The sample rate to test for compliance. </td></tr>
1086
<dl compact><dt><b>Return values:</b></dt><dd>
1087
<table border="0" cellspacing="2" cellpadding="0">
1088
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>true</code> if the given sample rate conforms to the specification, else <code>false</code>. </td></tr>
792
<a name="a69" doxytag="format.h::FLAC__format_vorbiscomment_entry_name_is_legal"></a><p>
793
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1094
<a class="anchor" name="ga78" doxytag="format.h::FLAC__format_vorbiscomment_entry_name_is_legal"></a><p>
1095
<table class="mdTable" cellpadding="2" cellspacing="0">
796
1098
<table cellpadding="0" cellspacing="0" border="0">
798
<td class="md" nowrap valign="top"> FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal </td>
1100
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal </td>
799
1101
<td class="md" valign="top">( </td>
800
1102
<td class="md" nowrap valign="top">const char * </td>
801
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
802
<td class="md" valign="top">) </td>
1103
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
1104
<td class="md" valign="top"> ) </td>
803
1105
<td class="md" nowrap></td>
810
<table cellspacing=5 cellpadding=0 border=0>
818
Check a Vorbis comment entry name to see if it conforms to the Vorbis comment specification.
820
Vorbis comment names must be composed only of characters from [0x20-0x3C,0x3E-0x7D].<dl compact><dt><b>
822
<table border=0 cellspacing=2 cellpadding=0>
823
<tr><td valign=top><em>name</em> </td><td>
824
A NUL-terminated string to be checked. </td></tr>
826
</dl><dl compact><dt><b>
828
<div class="fragment"><pre>name != NULL
829
</pre></div> </dl><dl compact><dt><b>
830
Return values: </b><dd>
831
<table border=0 cellspacing=2 cellpadding=0>
832
<tr><td valign=top><em>FLAC__bool</em> </td><td>
833
<code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
838
<a name="a70" doxytag="format.h::FLAC__format_vorbiscomment_entry_value_is_legal"></a><p>
839
<table width="100%" cellpadding="2" cellspacing="0" border="0">
842
<table cellpadding="0" cellspacing="0" border="0">
844
<td class="md" nowrap valign="top"> FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal </td>
845
<td class="md" valign="top">( </td>
846
<td class="md" nowrap valign="top">const FLAC__byte * </td>
847
<td class="mdname" nowrap> <em>value</em>, </td>
852
<td class="md" nowrap>unsigned </td>
853
<td class="mdname" nowrap> <em>length</em></td>
857
<td class="md">) </td>
858
<td class="md" colspan="2"></td>
865
<table cellspacing=5 cellpadding=0 border=0>
873
Check a Vorbis comment entry value to see if it conforms to the Vorbis comment specification.
875
Vorbis comment values must be valid UTF-8 sequences.<dl compact><dt><b>
877
<table border=0 cellspacing=2 cellpadding=0>
878
<tr><td valign=top><em>value</em> </td><td>
879
A string to be checked. </td></tr>
880
<tr><td valign=top><em>length</em> </td><td>
881
A the length of <em>value</em> in bytes. May be <code>(unsigned)(-1)</code> to indicate that <em>value</em> is a plain UTF-8 NUL-terminated string. </td></tr>
883
</dl><dl compact><dt><b>
885
<div class="fragment"><pre>value != NULL
886
</pre></div> </dl><dl compact><dt><b>
887
Return values: </b><dd>
888
<table border=0 cellspacing=2 cellpadding=0>
889
<tr><td valign=top><em>FLAC__bool</em> </td><td>
890
<code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
895
<a name="a71" doxytag="format.h::FLAC__format_vorbiscomment_entry_is_legal"></a><p>
896
<table width="100%" cellpadding="2" cellspacing="0" border="0">
899
<table cellpadding="0" cellspacing="0" border="0">
901
<td class="md" nowrap valign="top"> FLAC__bool FLAC__format_vorbiscomment_entry_is_legal </td>
902
<td class="md" valign="top">( </td>
903
<td class="md" nowrap valign="top">const FLAC__byte * </td>
904
<td class="mdname" nowrap> <em>entry</em>, </td>
909
<td class="md" nowrap>unsigned </td>
910
<td class="mdname" nowrap> <em>length</em></td>
914
<td class="md">) </td>
915
<td class="md" colspan="2"></td>
922
<table cellspacing=5 cellpadding=0 border=0>
930
Check a Vorbis comment entry to see if it conforms to the Vorbis comment specification.
932
Vorbis comment entries must be of the form 'name=value', and 'name' and 'value' must be legal according to <a class="el" href="group__flac__format.html#a69">FLAC__format_vorbiscomment_entry_name_is_legal</a>() and <a class="el" href="group__flac__format.html#a70">FLAC__format_vorbiscomment_entry_value_is_legal</a>() respectively.<dl compact><dt><b>
934
<table border=0 cellspacing=2 cellpadding=0>
935
<tr><td valign=top><em>value</em> </td><td>
936
A string to be checked. </td></tr>
938
</dl><dl compact><dt><b>
940
<div class="fragment"><pre>value != NULL
941
</pre></div> </dl><dl compact><dt><b>
942
Return values: </b><dd>
943
<table border=0 cellspacing=2 cellpadding=0>
944
<tr><td valign=top><em>FLAC__bool</em> </td><td>
945
<code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
950
<a name="a72" doxytag="format.h::FLAC__format_seektable_is_legal"></a><p>
951
<table width="100%" cellpadding="2" cellspacing="0" border="0">
954
<table cellpadding="0" cellspacing="0" border="0">
956
<td class="md" nowrap valign="top"> FLAC__bool FLAC__format_seektable_is_legal </td>
1111
<table cellspacing="5" cellpadding="0" border="0">
1119
Check a Vorbis comment entry name to see if it conforms to the Vorbis comment specification.<p>
1120
Vorbis comment names must be composed only of characters from [0x20-0x3C,0x3E-0x7D].<p>
1121
<dl compact><dt><b>Parameters:</b></dt><dd>
1122
<table border="0" cellspacing="2" cellpadding="0">
1123
<tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>A NUL-terminated string to be checked. </td></tr>
1126
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> name != NULL
1127
</pre></div> </dd></dl>
1128
<dl compact><dt><b>Return values:</b></dt><dd>
1129
<table border="0" cellspacing="2" cellpadding="0">
1130
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
1136
<a class="anchor" name="ga79" doxytag="format.h::FLAC__format_vorbiscomment_entry_value_is_legal"></a><p>
1137
<table class="mdTable" cellpadding="2" cellspacing="0">
1140
<table cellpadding="0" cellspacing="0" border="0">
1142
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal </td>
1143
<td class="md" valign="top">( </td>
1144
<td class="md" nowrap valign="top">const FLAC__byte * </td>
1145
<td class="mdname" nowrap> <em>value</em>, </td>
1148
<td class="md" nowrap align="right"></td>
1149
<td class="md"></td>
1150
<td class="md" nowrap>unsigned </td>
1151
<td class="mdname" nowrap> <em>length</em></td>
1154
<td class="md"></td>
1155
<td class="md">) </td>
1156
<td class="md" colspan="2"></td>
1162
<table cellspacing="5" cellpadding="0" border="0">
1170
Check a Vorbis comment entry value to see if it conforms to the Vorbis comment specification.<p>
1171
Vorbis comment values must be valid UTF-8 sequences.<p>
1172
<dl compact><dt><b>Parameters:</b></dt><dd>
1173
<table border="0" cellspacing="2" cellpadding="0">
1174
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>A string to be checked. </td></tr>
1175
<tr><td valign="top"></td><td valign="top"><em>length</em> </td><td>A the length of <em>value</em> in bytes. May be <code></code>(unsigned)(-1) to indicate that <em>value</em> is a plain UTF-8 NUL-terminated string. </td></tr>
1178
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> value != NULL
1179
</pre></div> </dd></dl>
1180
<dl compact><dt><b>Return values:</b></dt><dd>
1181
<table border="0" cellspacing="2" cellpadding="0">
1182
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
1188
<a class="anchor" name="ga80" doxytag="format.h::FLAC__format_vorbiscomment_entry_is_legal"></a><p>
1189
<table class="mdTable" cellpadding="2" cellspacing="0">
1192
<table cellpadding="0" cellspacing="0" border="0">
1194
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_vorbiscomment_entry_is_legal </td>
1195
<td class="md" valign="top">( </td>
1196
<td class="md" nowrap valign="top">const FLAC__byte * </td>
1197
<td class="mdname" nowrap> <em>entry</em>, </td>
1200
<td class="md" nowrap align="right"></td>
1201
<td class="md"></td>
1202
<td class="md" nowrap>unsigned </td>
1203
<td class="mdname" nowrap> <em>length</em></td>
1206
<td class="md"></td>
1207
<td class="md">) </td>
1208
<td class="md" colspan="2"></td>
1214
<table cellspacing="5" cellpadding="0" border="0">
1222
Check a Vorbis comment entry to see if it conforms to the Vorbis comment specification.<p>
1223
Vorbis comment entries must be of the form 'name=value', and 'name' and 'value' must be legal according to <a class="el" href="group__flac__format.html#ga78">FLAC__format_vorbiscomment_entry_name_is_legal()</a> and <a class="el" href="group__flac__format.html#ga79">FLAC__format_vorbiscomment_entry_value_is_legal()</a> respectively.<p>
1224
<dl compact><dt><b>Parameters:</b></dt><dd>
1225
<table border="0" cellspacing="2" cellpadding="0">
1226
<tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>An entry to be checked. </td></tr>
1227
<tr><td valign="top"></td><td valign="top"><em>length</em> </td><td>The length of <em>entry</em> in bytes. </td></tr>
1230
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> value != NULL
1231
</pre></div> </dd></dl>
1232
<dl compact><dt><b>Return values:</b></dt><dd>
1233
<table border="0" cellspacing="2" cellpadding="0">
1234
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>false</code> if entry name is illegal, else <code>true</code>. </td></tr>
1240
<a class="anchor" name="ga81" doxytag="format.h::FLAC__format_seektable_is_legal"></a><p>
1241
<table class="mdTable" cellpadding="2" cellspacing="0">
1244
<table cellpadding="0" cellspacing="0" border="0">
1246
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_seektable_is_legal </td>
957
1247
<td class="md" valign="top">( </td>
958
1248
<td class="md" nowrap valign="top">const <a class="el" href="structFLAC____StreamMetadata__SeekTable.html">FLAC__StreamMetadata_SeekTable</a> * </td>
959
<td class="mdname1" valign="top" nowrap> <em>seek_table</em> </td>
960
<td class="md" valign="top">) </td>
1249
<td class="mdname1" valign="top" nowrap> <em>seek_table</em> </td>
1250
<td class="md" valign="top"> ) </td>
961
1251
<td class="md" nowrap></td>
968
<table cellspacing=5 cellpadding=0 border=0>
1257
<table cellspacing="5" cellpadding="0" border="0">
1020
Sort a seek table's seek points according to the format specification. This includes a "unique-ification" step to remove duplicates, i.e. seek points with identical <em>sample_number</em> values. Duplicate seek points are converted into placeholder points and sorted to the end of the table.<dl compact><dt><b>
1021
Parameters: </b><dd>
1022
<table border=0 cellspacing=2 cellpadding=0>
1023
<tr><td valign=top><em>seek_table</em> </td><td>
1024
A pointer to a seek table to be sorted. </td></tr>
1026
</dl><dl compact><dt><b>
1028
<div class="fragment"><pre>seek_table != NULL
1029
</pre></div> </dl><dl compact><dt><b>
1030
Return values: </b><dd>
1031
<table border=0 cellspacing=2 cellpadding=0>
1032
<tr><td valign=top><em>unsigned</em> </td><td>
1033
The number of duplicate seek points converted into placeholders. </td></tr>
1306
Sort a seek table's seek points according to the format specification. This includes a "unique-ification" step to remove duplicates, i.e. seek points with identical <em>sample_number</em> values. Duplicate seek points are converted into placeholder points and sorted to the end of the table.<p>
1307
<dl compact><dt><b>Parameters:</b></dt><dd>
1308
<table border="0" cellspacing="2" cellpadding="0">
1309
<tr><td valign="top"></td><td valign="top"><em>seek_table</em> </td><td>A pointer to a seek table to be sorted. </td></tr>
1312
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> seek_table != NULL
1313
</pre></div> </dd></dl>
1314
<dl compact><dt><b>Return values:</b></dt><dd>
1315
<table border="0" cellspacing="2" cellpadding="0">
1316
<tr><td valign="top"></td><td valign="top"><em>unsigned</em> </td><td>The number of duplicate seek points converted into placeholders. </td></tr>
1038
<a name="a74" doxytag="format.h::FLAC__format_cuesheet_is_legal"></a><p>
1039
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1322
<a class="anchor" name="ga83" doxytag="format.h::FLAC__format_cuesheet_is_legal"></a><p>
1323
<table class="mdTable" cellpadding="2" cellspacing="0">
1042
1326
<table cellpadding="0" cellspacing="0" border="0">
1044
<td class="md" nowrap valign="top"> FLAC__bool FLAC__format_cuesheet_is_legal </td>
1328
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_cuesheet_is_legal </td>
1045
1329
<td class="md" valign="top">( </td>
1046
1330
<td class="md" nowrap valign="top">const <a class="el" href="structFLAC____StreamMetadata__CueSheet.html">FLAC__StreamMetadata_CueSheet</a> * </td>
1047
<td class="mdname" nowrap> <em>cue_sheet</em>, </td>
1331
<td class="mdname" nowrap> <em>cue_sheet</em>, </td>
1334
<td class="md" nowrap align="right"></td>
1335
<td class="md"></td>
1052
1336
<td class="md" nowrap>FLAC__bool </td>
1053
<td class="mdname" nowrap> <em>check_cd_da_subset</em>, </td>
1058
<td class="md" nowrap>const char ** </td>
1059
<td class="mdname" nowrap> <em>violation</em></td>
1063
<td class="md">) </td>
1064
<td class="md" colspan="2"></td>
1071
<table cellspacing=5 cellpadding=0 border=0>
1079
Check a cue sheet to see if it conforms to the FLAC specification. See the format specification for limits on the contents of the cue sheet.<dl compact><dt><b>
1080
Parameters: </b><dd>
1081
<table border=0 cellspacing=2 cellpadding=0>
1082
<tr><td valign=top><em>cue_sheet</em> </td><td>
1083
A pointer to an existing cue sheet to be checked. </td></tr>
1084
<tr><td valign=top><em>check_cd_da_subset</em> </td><td>
1085
If <code>true</code>, check CUESHEET against more stringent requirements for a CD-DA (audio) disc. </td></tr>
1086
<tr><td valign=top><em>violation</em> </td><td>
1087
Address of a pointer to a string. If there is a violation, a pointer to a string explanation of the violation will be returned here. <em>violation</em> may be <code>NULL</code> if you don't need the returned string. Do not free the returned string; it will always point to static data. </td></tr>
1089
</dl><dl compact><dt><b>
1091
<div class="fragment"><pre>cue_sheet != NULL
1092
</pre></div> </dl><dl compact><dt><b>
1093
Return values: </b><dd>
1094
<table border=0 cellspacing=2 cellpadding=0>
1095
<tr><td valign=top><em>FLAC__bool</em> </td><td>
1096
<code>false</code> if cue sheet is illegal, else <code>true</code>. </td></tr>
1337
<td class="mdname" nowrap> <em>check_cd_da_subset</em>, </td>
1340
<td class="md" nowrap align="right"></td>
1341
<td class="md"></td>
1342
<td class="md" nowrap>const char ** </td>
1343
<td class="mdname" nowrap> <em>violation</em></td>
1346
<td class="md"></td>
1347
<td class="md">) </td>
1348
<td class="md" colspan="2"></td>
1354
<table cellspacing="5" cellpadding="0" border="0">
1362
Check a cue sheet to see if it conforms to the FLAC specification. See the format specification for limits on the contents of the cue sheet.<p>
1363
<dl compact><dt><b>Parameters:</b></dt><dd>
1364
<table border="0" cellspacing="2" cellpadding="0">
1365
<tr><td valign="top"></td><td valign="top"><em>cue_sheet</em> </td><td>A pointer to an existing cue sheet to be checked. </td></tr>
1366
<tr><td valign="top"></td><td valign="top"><em>check_cd_da_subset</em> </td><td>If <code>true</code>, check CUESHEET against more stringent requirements for a CD-DA (audio) disc. </td></tr>
1367
<tr><td valign="top"></td><td valign="top"><em>violation</em> </td><td>Address of a pointer to a string. If there is a violation, a pointer to a string explanation of the violation will be returned here. <em>violation</em> may be <code>NULL</code> if you don't need the returned string. Do not free the returned string; it will always point to static data. </td></tr>
1370
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> cue_sheet != NULL
1371
</pre></div> </dd></dl>
1372
<dl compact><dt><b>Return values:</b></dt><dd>
1373
<table border="0" cellspacing="2" cellpadding="0">
1374
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>false</code> if cue sheet is illegal, else <code>true</code>. </td></tr>
1380
<a class="anchor" name="ga84" doxytag="format.h::FLAC__format_picture_is_legal"></a><p>
1381
<table class="mdTable" cellpadding="2" cellspacing="0">
1384
<table cellpadding="0" cellspacing="0" border="0">
1386
<td class="md" nowrap valign="top">FLAC__bool FLAC__format_picture_is_legal </td>
1387
<td class="md" valign="top">( </td>
1388
<td class="md" nowrap valign="top">const <a class="el" href="structFLAC____StreamMetadata__Picture.html">FLAC__StreamMetadata_Picture</a> * </td>
1389
<td class="mdname" nowrap> <em>picture</em>, </td>
1392
<td class="md" nowrap align="right"></td>
1393
<td class="md"></td>
1394
<td class="md" nowrap>const char ** </td>
1395
<td class="mdname" nowrap> <em>violation</em></td>
1398
<td class="md"></td>
1399
<td class="md">) </td>
1400
<td class="md" colspan="2"></td>
1406
<table cellspacing="5" cellpadding="0" border="0">
1414
Check picture data to see if it conforms to the FLAC specification. See the format specification for limits on the contents of the PICTURE block.<p>
1415
<dl compact><dt><b>Parameters:</b></dt><dd>
1416
<table border="0" cellspacing="2" cellpadding="0">
1417
<tr><td valign="top"></td><td valign="top"><em>picture</em> </td><td>A pointer to existing picture data to be checked. </td></tr>
1418
<tr><td valign="top"></td><td valign="top"><em>violation</em> </td><td>Address of a pointer to a string. If there is a violation, a pointer to a string explanation of the violation will be returned here. <em>violation</em> may be <code>NULL</code> if you don't need the returned string. Do not free the returned string; it will always point to static data. </td></tr>
1421
<dl compact><dt><b>Assertions: </b></dt><dd><div class="fragment"><pre class="fragment"> picture != NULL
1422
</pre></div> </dd></dl>
1423
<dl compact><dt><b>Return values:</b></dt><dd>
1424
<table border="0" cellspacing="2" cellpadding="0">
1425
<tr><td valign="top"></td><td valign="top"><em>FLAC__bool</em> </td><td><code>false</code> if picture data is illegal, else <code>true</code>. </td></tr>
1101
1431
<hr><h2>Variable Documentation</h2>
1102
<a name="a0" doxytag="format.h::FLAC__VERSION_STRING"></a><p>
1103
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1106
<table cellpadding="0" cellspacing="0" border="0">
1108
<td class="md" nowrap valign="top"> const char* FLAC__VERSION_STRING
1113
<table cellspacing=5 cellpadding=0 border=0>
1121
The version string of the release, stamped onto the libraries and binaries.
1125
This does not correspond to the shared library version number, which is used to determine binary compatibility. </dl> </td>
1128
<a name="a1" doxytag="format.h::FLAC__VENDOR_STRING"></a><p>
1129
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1132
<table cellpadding="0" cellspacing="0" border="0">
1134
<td class="md" nowrap valign="top"> const char* FLAC__VENDOR_STRING
1139
<table cellspacing=5 cellpadding=0 border=0>
1147
The vendor string inserted by the encoder into the VORBIS_COMMENT block. This is a nulL-terminated ASCII string; when inserted into the VORBIS_COMMENT the trailing null is stripped. </td>
1150
<a name="a2" doxytag="format.h::FLAC__STREAM_SYNC_STRING"></a><p>
1151
<table width="100%" cellpadding="2" cellspacing="0" border="0">
1154
<table cellpadding="0" cellspacing="0" border="0">
1156
<td class="md" nowrap valign="top"> const FLAC__byte FLAC__STREAM_SYNC_STRING[4]
1161
<table cellspacing=5 cellpadding=0 border=0>
1432
<a class="anchor" name="ga0" doxytag="format.h::FLAC__VERSION_STRING"></a><p>
1433
<table class="mdTable" cellpadding="2" cellspacing="0">
1436
<table cellpadding="0" cellspacing="0" border="0">
1438
<td class="md" nowrap valign="top">const char* <a class="el" href="group__flac__format.html#ga0">FLAC__VERSION_STRING</a> </td>
1444
<table cellspacing="5" cellpadding="0" border="0">
1452
The version string of the release, stamped onto the libraries and binaries.<p>
1453
<dl compact><dt><b>Note:</b></dt><dd>This does not correspond to the shared library version number, which is used to determine binary compatibility. </dd></dl>
1457
<a class="anchor" name="ga1" doxytag="format.h::FLAC__VENDOR_STRING"></a><p>
1458
<table class="mdTable" cellpadding="2" cellspacing="0">
1461
<table cellpadding="0" cellspacing="0" border="0">
1463
<td class="md" nowrap valign="top">const char* <a class="el" href="group__flac__format.html#ga1">FLAC__VENDOR_STRING</a> </td>
1469
<table cellspacing="5" cellpadding="0" border="0">
1477
The vendor string inserted by the encoder into the VORBIS_COMMENT block. This is a NUL-terminated ASCII string; when inserted into the VORBIS_COMMENT the trailing null is stripped. </td>
1480
<a class="anchor" name="ga2" doxytag="format.h::FLAC__STREAM_SYNC_STRING"></a><p>
1481
<table class="mdTable" cellpadding="2" cellspacing="0">
1484
<table cellpadding="0" cellspacing="0" border="0">
1486
<td class="md" nowrap valign="top">const FLAC__byte <a class="el" href="group__flac__format.html#ga2">FLAC__STREAM_SYNC_STRING</a>[4] </td>
1492
<table cellspacing="5" cellpadding="0" border="0">