FLAC 1.4.3 Free Lossless Audio Codec

format.h
Go to the documentation of this file.
1 /* libFLAC - Free Lossless Audio Codec library
2 * Copyright (C) 2000-2009 Josh Coalson
3 * Copyright (C) 2011-2023 Xiph.Org Foundation
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * - Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * - Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * - Neither the name of the Xiph.org Foundation nor the names of its
17 * contributors may be used to endorse or promote products derived from
18 * this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32
33 #ifndef FLAC__FORMAT_H
34 #define FLAC__FORMAT_H
35
36 #include "export.h"
37 #include "ordinals.h"
38
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42
87 /*
88 Most of the values described in this file are defined by the FLAC
89 format specification. There is nothing to tune here.
90 */
91
93 #define FLAC__MAX_METADATA_TYPE_CODE (126u)
94
96 #define FLAC__MIN_BLOCK_SIZE (16u)
97
99 #define FLAC__MAX_BLOCK_SIZE (65535u)
100
103 #define FLAC__SUBSET_MAX_BLOCK_SIZE_48000HZ (4608u)
104
106 #define FLAC__MAX_CHANNELS (8u)
107
109 #define FLAC__MIN_BITS_PER_SAMPLE (4u)
110
112 #define FLAC__MAX_BITS_PER_SAMPLE (32u)
113
120 #define FLAC__REFERENCE_CODEC_MAX_BITS_PER_SAMPLE (32u)
121
125 #define FLAC__MAX_SAMPLE_RATE (1048575u)
126
128 #define FLAC__MAX_LPC_ORDER (32u)
129
132 #define FLAC__SUBSET_MAX_LPC_ORDER_48000HZ (12u)
133
137 #define FLAC__MIN_QLP_COEFF_PRECISION (5u)
138
142 #define FLAC__MAX_QLP_COEFF_PRECISION (15u)
143
145 #define FLAC__MAX_FIXED_ORDER (4u)
146
148 #define FLAC__MAX_RICE_PARTITION_ORDER (15u)
149
151 #define FLAC__SUBSET_MAX_RICE_PARTITION_ORDER (8u)
152
159 extern FLAC_API const char *FLAC__VERSION_STRING;
160
165 extern FLAC_API const char *FLAC__VENDOR_STRING;
166
168 extern FLAC_API const FLAC__byte FLAC__STREAM_SYNC_STRING[4]; /* = "fLaC" */
169
173 extern FLAC_API const uint32_t FLAC__STREAM_SYNC; /* = 0x664C6143 */
174
176 extern FLAC_API const uint32_t FLAC__STREAM_SYNC_LEN; /* = 32 bits */
177
179 #define FLAC__STREAM_SYNC_LENGTH (4u)
180
181
182 /*****************************************************************************
183 *
184 * Subframe structures
185 *
186 *****************************************************************************/
187
188 /*****************************************************************************/
189
191 typedef enum {
192 FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE = 0,
196 FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2 = 1
199 } FLAC__EntropyCodingMethodType;
200
206 extern FLAC_API const char * const FLAC__EntropyCodingMethodTypeString[];
207
208
211 typedef struct {
212
213 uint32_t *parameters;
216 uint32_t *raw_bits;
221 uint32_t capacity_by_order;
226 } FLAC__EntropyCodingMethod_PartitionedRiceContents;
227
230 typedef struct {
231
232 uint32_t order;
235 const FLAC__EntropyCodingMethod_PartitionedRiceContents *contents;
238 } FLAC__EntropyCodingMethod_PartitionedRice;
239
240 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN;
241 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN;
242 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN;
243 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN;
245 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER;
247 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER;
252 typedef struct {
253 FLAC__EntropyCodingMethodType type;
254 union {
255 FLAC__EntropyCodingMethod_PartitionedRice partitioned_rice;
256 } data;
257 } FLAC__EntropyCodingMethod;
258
259 extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_TYPE_LEN;
261 /*****************************************************************************/
262
264 typedef enum {
265 FLAC__SUBFRAME_TYPE_CONSTANT = 0,
266 FLAC__SUBFRAME_TYPE_VERBATIM = 1,
267 FLAC__SUBFRAME_TYPE_FIXED = 2,
268 FLAC__SUBFRAME_TYPE_LPC = 3
269 } FLAC__SubframeType;
270
276 extern FLAC_API const char * const FLAC__SubframeTypeString[];
277
278
281 typedef struct {
282 FLAC__int64 value;
283 } FLAC__Subframe_Constant;
284
286 typedef enum {
287 FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT32,
288 FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT64
289 } FLAC__VerbatimSubframeDataType;
290
291
294 typedef struct {
295 union {
296 const FLAC__int32 *int32;
297 const FLAC__int64 *int64;
298 } data;
299 FLAC__VerbatimSubframeDataType data_type;
300 } FLAC__Subframe_Verbatim;
301
302
305 typedef struct {
306 FLAC__EntropyCodingMethod entropy_coding_method;
309 uint32_t order;
312 FLAC__int64 warmup[FLAC__MAX_FIXED_ORDER];
315 const FLAC__int32 *residual;
317 } FLAC__Subframe_Fixed;
318
319
322 typedef struct {
323 FLAC__EntropyCodingMethod entropy_coding_method;
326 uint32_t order;
329 uint32_t qlp_coeff_precision;
332 int quantization_level;
335 FLAC__int32 qlp_coeff[FLAC__MAX_LPC_ORDER];
338 FLAC__int64 warmup[FLAC__MAX_LPC_ORDER];
341 const FLAC__int32 *residual;
343 } FLAC__Subframe_LPC;
344
345 extern FLAC_API const uint32_t FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN;
346 extern FLAC_API const uint32_t FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN;
351 typedef struct {
352 FLAC__SubframeType type;
353 union {
354 FLAC__Subframe_Constant constant;
355 FLAC__Subframe_Fixed fixed;
356 FLAC__Subframe_LPC lpc;
357 FLAC__Subframe_Verbatim verbatim;
358 } data;
359 uint32_t wasted_bits;
360 } FLAC__Subframe;
361
369 extern FLAC_API const uint32_t FLAC__SUBFRAME_ZERO_PAD_LEN;
370 extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_LEN;
371 extern FLAC_API const uint32_t FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN;
373 extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK;
374 extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK;
375 extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK;
376 extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK;
378 /*****************************************************************************/
379
380
381 /*****************************************************************************
382 *
383 * Frame structures
384 *
385 *****************************************************************************/
386
388 typedef enum {
389 FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT = 0,
390 FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE = 1,
391 FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE = 2,
392 FLAC__CHANNEL_ASSIGNMENT_MID_SIDE = 3
393 } FLAC__ChannelAssignment;
394
400 extern FLAC_API const char * const FLAC__ChannelAssignmentString[];
401
403 typedef enum {
404 FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER,
405 FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER
406 } FLAC__FrameNumberType;
407
413 extern FLAC_API const char * const FLAC__FrameNumberTypeString[];
414
415
418 typedef struct {
419 uint32_t blocksize;
422 uint32_t sample_rate;
425 uint32_t channels;
428 FLAC__ChannelAssignment channel_assignment;
431 uint32_t bits_per_sample;
434 FLAC__FrameNumberType number_type;
439 union {
440 FLAC__uint32 frame_number;
441 FLAC__uint64 sample_number;
442 } number;
446 FLAC__uint8 crc;
451 } FLAC__FrameHeader;
452
453 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SYNC;
454 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SYNC_LEN;
455 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_RESERVED_LEN;
456 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN;
457 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BLOCK_SIZE_LEN;
458 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SAMPLE_RATE_LEN;
459 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN;
460 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN;
461 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_ZERO_PAD_LEN;
462 extern FLAC_API const uint32_t FLAC__FRAME_HEADER_CRC_LEN;
467 typedef struct {
468 FLAC__uint16 crc;
473 } FLAC__FrameFooter;
474
475 extern FLAC_API const uint32_t FLAC__FRAME_FOOTER_CRC_LEN;
480 typedef struct {
481 FLAC__FrameHeader header;
482 FLAC__Subframe subframes[FLAC__MAX_CHANNELS];
483 FLAC__FrameFooter footer;
484 } FLAC__Frame;
485
486 /*****************************************************************************/
487
488
489 /*****************************************************************************
490 *
491 * Meta-data structures
492 *
493 *****************************************************************************/
494
496 typedef enum {
497
498 FLAC__METADATA_TYPE_STREAMINFO = 0,
501 FLAC__METADATA_TYPE_PADDING = 1,
504 FLAC__METADATA_TYPE_APPLICATION = 2,
507 FLAC__METADATA_TYPE_SEEKTABLE = 3,
510 FLAC__METADATA_TYPE_VORBIS_COMMENT = 4,
513 FLAC__METADATA_TYPE_CUESHEET = 5,
516 FLAC__METADATA_TYPE_PICTURE = 6,
519 FLAC__METADATA_TYPE_UNDEFINED = 7,
522 FLAC__MAX_METADATA_TYPE = FLAC__MAX_METADATA_TYPE_CODE,
524 } FLAC__MetadataType;
525
531 extern FLAC_API const char * const FLAC__MetadataTypeString[];
532
533
536 typedef struct {
537 uint32_t min_blocksize, max_blocksize;
538 uint32_t min_framesize, max_framesize;
539 uint32_t sample_rate;
540 uint32_t channels;
541 uint32_t bits_per_sample;
542 FLAC__uint64 total_samples;
543 FLAC__byte md5sum[16];
544 } FLAC__StreamMetadata_StreamInfo;
545
546 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN;
547 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN;
548 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN;
549 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN;
550 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN;
551 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN;
552 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN;
553 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN;
554 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN;
557 #define FLAC__STREAM_METADATA_STREAMINFO_LENGTH (34u)
558
561 typedef struct {
562 int dummy;
567 } FLAC__StreamMetadata_Padding;
568
569
572 typedef struct {
573 FLAC__byte id[4];
574 FLAC__byte *data;
575 } FLAC__StreamMetadata_Application;
576
577 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_APPLICATION_ID_LEN;
581 typedef struct {
582 FLAC__uint64 sample_number;
585 FLAC__uint64 stream_offset;
589 uint32_t frame_samples;
591 } FLAC__StreamMetadata_SeekPoint;
592
593 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN;
594 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN;
595 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN;
598 #define FLAC__STREAM_METADATA_SEEKPOINT_LENGTH (18u)
599
604 extern FLAC_API const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER;
605
606
619 typedef struct {
620 uint32_t num_points;
621 FLAC__StreamMetadata_SeekPoint *points;
622 } FLAC__StreamMetadata_SeekTable;
623
624
631 typedef struct {
632 FLAC__uint32 length;
633 FLAC__byte *entry;
634 } FLAC__StreamMetadata_VorbisComment_Entry;
635
636 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN;
641 typedef struct {
642 FLAC__StreamMetadata_VorbisComment_Entry vendor_string;
643 FLAC__uint32 num_comments;
644 FLAC__StreamMetadata_VorbisComment_Entry *comments;
645 } FLAC__StreamMetadata_VorbisComment;
646
647 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN;
654 typedef struct {
655 FLAC__uint64 offset;
660 FLAC__byte number;
662 } FLAC__StreamMetadata_CueSheet_Index;
663
664 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN;
665 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN;
666 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN;
673 typedef struct {
674 FLAC__uint64 offset;
677 FLAC__byte number;
680 char isrc[13];
683 uint32_t type:1;
686 uint32_t pre_emphasis:1;
689 FLAC__byte num_indices;
692 FLAC__StreamMetadata_CueSheet_Index *indices;
695 } FLAC__StreamMetadata_CueSheet_Track;
696
697 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN;
698 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN;
699 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN;
700 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN;
701 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN;
702 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN;
703 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN;
710 typedef struct {
711 char media_catalog_number[129];
717 FLAC__uint64 lead_in;
720 FLAC__bool is_cd;
723 uint32_t num_tracks;
726 FLAC__StreamMetadata_CueSheet_Track *tracks;
729 } FLAC__StreamMetadata_CueSheet;
730
731 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN;
732 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN;
733 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN;
734 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN;
735 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN;
739 typedef enum {
740 FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER = 0,
741 FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD = 1,
742 FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON = 2,
743 FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER = 3,
744 FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER = 4,
745 FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE = 5,
746 FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA = 6,
747 FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST = 7,
748 FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST = 8,
749 FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR = 9,
750 FLAC__STREAM_METADATA_PICTURE_TYPE_BAND = 10,
751 FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER = 11,
752 FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST = 12,
753 FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION = 13,
754 FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING = 14,
755 FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE = 15,
756 FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE = 16,
757 FLAC__STREAM_METADATA_PICTURE_TYPE_FISH = 17,
758 FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION = 18,
759 FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE = 19,
760 FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE = 20,
761 FLAC__STREAM_METADATA_PICTURE_TYPE_UNDEFINED
762 } FLAC__StreamMetadata_Picture_Type;
763
770 extern FLAC_API const char * const FLAC__StreamMetadata_Picture_TypeString[];
771
776 typedef struct {
777 FLAC__StreamMetadata_Picture_Type type;
780 char *mime_type;
791 FLAC__byte *description;
798 FLAC__uint32 width;
801 FLAC__uint32 height;
804 FLAC__uint32 depth;
807 FLAC__uint32 colors;
812 FLAC__uint32 data_length;
815 FLAC__byte *data;
818 } FLAC__StreamMetadata_Picture;
819
820 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_TYPE_LEN;
821 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN;
822 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN;
823 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN;
824 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN;
825 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN;
826 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_COLORS_LEN;
827 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN;
834 typedef struct {
835 FLAC__byte *data;
836 } FLAC__StreamMetadata_Unknown;
837
838
841 typedef struct FLAC__StreamMetadata {
842 FLAC__MetadataType type;
847 FLAC__bool is_last;
850 uint32_t length;
853 union {
854 FLAC__StreamMetadata_StreamInfo stream_info;
855 FLAC__StreamMetadata_Padding padding;
856 FLAC__StreamMetadata_Application application;
857 FLAC__StreamMetadata_SeekTable seek_table;
858 FLAC__StreamMetadata_VorbisComment vorbis_comment;
859 FLAC__StreamMetadata_CueSheet cue_sheet;
860 FLAC__StreamMetadata_Picture picture;
861 FLAC__StreamMetadata_Unknown unknown;
862 } data;
865 } FLAC__StreamMetadata;
866
867 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_IS_LAST_LEN;
868 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_TYPE_LEN;
869 extern FLAC_API const uint32_t FLAC__STREAM_METADATA_LENGTH_LEN;
872 #define FLAC__STREAM_METADATA_HEADER_LENGTH (4u)
873
874 /*****************************************************************************/
875
876
877 /*****************************************************************************
878 *
879 * Utility functions
880 *
881 *****************************************************************************/
882
890 FLAC_API FLAC__bool FLAC__format_sample_rate_is_valid(uint32_t sample_rate);
891
902 FLAC_API FLAC__bool FLAC__format_blocksize_is_subset(uint32_t blocksize, uint32_t sample_rate);
903
913 FLAC_API FLAC__bool FLAC__format_sample_rate_is_subset(uint32_t sample_rate);
914
927 FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal(const char *name);
928
943 FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal(const FLAC__byte *value, uint32_t length);
944
960 FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_is_legal(const FLAC__byte *entry, uint32_t length);
961
972 FLAC_API FLAC__bool FLAC__format_seektable_is_legal(const FLAC__StreamMetadata_SeekTable *seek_table);
973
986 FLAC_API uint32_t FLAC__format_seektable_sort(FLAC__StreamMetadata_SeekTable *seek_table);
987
1006 FLAC_API FLAC__bool FLAC__format_cuesheet_is_legal(const FLAC__StreamMetadata_CueSheet *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation);
1007
1024 FLAC_API FLAC__bool FLAC__format_picture_is_legal(const FLAC__StreamMetadata_Picture *picture, const char **violation);
1025
1026 /* \} */
1027
1028 #ifdef __cplusplus
1029 }
1030 #endif
1031
1032 #endif
export.h
This module contains #defines and symbols for exporting function calls, and providing version informa...
FLAC_API
#define FLAC_API
Definition: export.h:91
FLAC__format_seektable_is_legal
FLAC__bool FLAC__format_seektable_is_legal(const FLAC__StreamMetadata_SeekTable *seek_table)
FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN
FLAC__StreamMetadata_CueSheet::num_tracks
uint32_t num_tracks
Definition: format.h:723
FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN
FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN
FLAC__Subframe_Fixed::entropy_coding_method
FLAC__EntropyCodingMethod entropy_coding_method
Definition: format.h:306
FLAC__StreamMetadata_Picture::depth
FLAC__uint32 depth
Definition: format.h:804
FLAC__StreamMetadata_CueSheet_Track::type
uint32_t type
Definition: format.h:683
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN
FLAC__format_vorbiscomment_entry_is_legal
FLAC__bool FLAC__format_vorbiscomment_entry_is_legal(const FLAC__byte *entry, uint32_t length)
FLAC__StreamMetadata_CueSheet_Track::indices
FLAC__StreamMetadata_CueSheet_Index * indices
Definition: format.h:692
FLAC__MAX_LPC_ORDER
#define FLAC__MAX_LPC_ORDER
Definition: format.h:128
FLAC__FrameHeader::blocksize
uint32_t blocksize
Definition: format.h:419
FLAC__StreamMetadata_Picture::width
FLAC__uint32 width
Definition: format.h:798
FLAC__ENTROPY_CODING_METHOD_TYPE_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_TYPE_LEN
FLAC__format_vorbiscomment_entry_value_is_legal
FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal(const FLAC__byte *value, uint32_t length)
FLAC__SubframeType
FLAC__SubframeType
Definition: format.h:264
FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN
const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN
FLAC__Subframe_Verbatim::int64
const FLAC__int64 * int64
Definition: format.h:297
FLAC__format_seektable_sort
uint32_t FLAC__format_seektable_sort(FLAC__StreamMetadata_SeekTable *seek_table)
FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN
FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN
FLAC__StreamMetadata_Picture_TypeString
const char *const FLAC__StreamMetadata_Picture_TypeString[]
FLAC__FrameHeader::sample_rate
uint32_t sample_rate
Definition: format.h:422
FLAC__EntropyCodingMethod_PartitionedRice::contents
const FLAC__EntropyCodingMethod_PartitionedRiceContents * contents
Definition: format.h:235
FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN
const uint32_t FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN
FLAC__StreamMetadata
struct FLAC__StreamMetadata FLAC__StreamMetadata
FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN
FLAC__StreamMetadata::type
FLAC__MetadataType type
Definition: format.h:842
FLAC__FRAME_HEADER_ZERO_PAD_LEN
const uint32_t FLAC__FRAME_HEADER_ZERO_PAD_LEN
FLAC__FRAME_FOOTER_CRC_LEN
const uint32_t FLAC__FRAME_FOOTER_CRC_LEN
FLAC__STREAM_SYNC_STRING
const FLAC__byte FLAC__STREAM_SYNC_STRING[4]
FLAC__STREAM_METADATA_PICTURE_COLORS_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_COLORS_LEN
FLAC__StreamMetadata_CueSheet_Track::offset
FLAC__uint64 offset
Definition: format.h:674
FLAC__EntropyCodingMethodTypeString
const char *const FLAC__EntropyCodingMethodTypeString[]
FLAC__StreamMetadata_CueSheet_Track::number
FLAC__byte number
Definition: format.h:677
FLAC__StreamMetadata_CueSheet::lead_in
FLAC__uint64 lead_in
Definition: format.h:717
FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN
const uint32_t FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN
FLAC__format_sample_rate_is_valid
FLAC__bool FLAC__format_sample_rate_is_valid(uint32_t sample_rate)
FLAC__MAX_CHANNELS
#define FLAC__MAX_CHANNELS
Definition: format.h:106
FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN
FLAC__EntropyCodingMethod_PartitionedRiceContents::parameters
uint32_t * parameters
Definition: format.h:213
FLAC__format_blocksize_is_subset
FLAC__bool FLAC__format_blocksize_is_subset(uint32_t blocksize, uint32_t sample_rate)
FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN
FLAC__Subframe_LPC::qlp_coeff_precision
uint32_t qlp_coeff_precision
Definition: format.h:329
FLAC__StreamMetadata_Padding::dummy
int dummy
Definition: format.h:562
FLAC__VERSION_STRING
const char * FLAC__VERSION_STRING
FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN
FLAC__StreamMetadata_Picture::description
FLAC__byte * description
Definition: format.h:791
FLAC__StreamMetadata_CueSheet::tracks
FLAC__StreamMetadata_CueSheet_Track * tracks
Definition: format.h:726
FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK
const uint32_t FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK
FLAC__StreamMetadata_CueSheet_Track::num_indices
FLAC__byte num_indices
Definition: format.h:689
FLAC__StreamMetadata_SeekPoint::stream_offset
FLAC__uint64 stream_offset
Definition: format.h:585
FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN
FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN
FLAC__MAX_METADATA_TYPE_CODE
#define FLAC__MAX_METADATA_TYPE_CODE
Definition: format.h:93
FLAC__Subframe_LPC::order
uint32_t order
Definition: format.h:326
FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN
FLAC__SUBFRAME_TYPE_LEN
const uint32_t FLAC__SUBFRAME_TYPE_LEN
FLAC__StreamMetadata_CueSheet::is_cd
FLAC__bool is_cd
Definition: format.h:720
FLAC__Subframe_Verbatim::int32
const FLAC__int32 * int32
Definition: format.h:296
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN
FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN
FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN
FLAC__StreamMetadata_CueSheet_Index::number
FLAC__byte number
Definition: format.h:660
FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN
const uint32_t FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN
FLAC__EntropyCodingMethod_PartitionedRiceContents::capacity_by_order
uint32_t capacity_by_order
Definition: format.h:221
FLAC__StreamMetadata_Picture::height
FLAC__uint32 height
Definition: format.h:801
FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN
FLAC__SubframeTypeString
const char *const FLAC__SubframeTypeString[]
FLAC__ChannelAssignment
FLAC__ChannelAssignment
Definition: format.h:388
FLAC__FrameHeader::number_type
FLAC__FrameNumberType number_type
Definition: format.h:434
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN
FLAC__FRAME_HEADER_SYNC
const uint32_t FLAC__FRAME_HEADER_SYNC
FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN
FLAC__STREAM_METADATA_APPLICATION_ID_LEN
const uint32_t FLAC__STREAM_METADATA_APPLICATION_ID_LEN
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER
FLAC__format_picture_is_legal
FLAC__bool FLAC__format_picture_is_legal(const FLAC__StreamMetadata_Picture *picture, const char **violation)
FLAC__Subframe_Fixed::order
uint32_t order
Definition: format.h:309
FLAC__EntropyCodingMethod_PartitionedRiceContents::raw_bits
uint32_t * raw_bits
Definition: format.h:216
FLAC__FRAME_HEADER_SAMPLE_RATE_LEN
const uint32_t FLAC__FRAME_HEADER_SAMPLE_RATE_LEN
FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN
const uint32_t FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN
FLAC__SUBFRAME_ZERO_PAD_LEN
const uint32_t FLAC__SUBFRAME_ZERO_PAD_LEN
FLAC__FrameNumberType
FLAC__FrameNumberType
Definition: format.h:403
FLAC__STREAM_METADATA_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_LENGTH_LEN
FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN
const uint32_t FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN
FLAC__FrameNumberTypeString
const char *const FLAC__FrameNumberTypeString[]
FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK
const uint32_t FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK
FLAC__EntropyCodingMethodType
FLAC__EntropyCodingMethodType
Definition: format.h:191
FLAC__FrameHeader::channels
uint32_t channels
Definition: format.h:425
FLAC__StreamMetadata_SeekPoint::sample_number
FLAC__uint64 sample_number
Definition: format.h:582
FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN
FLAC__FrameHeader::crc
FLAC__uint8 crc
Definition: format.h:446
FLAC__FrameHeader::channel_assignment
FLAC__ChannelAssignment channel_assignment
Definition: format.h:428
FLAC__STREAM_METADATA_PICTURE_TYPE_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_TYPE_LEN
FLAC__StreamMetadata_Picture::mime_type
char * mime_type
Definition: format.h:780
FLAC__StreamMetadata_Picture::data
FLAC__byte * data
Definition: format.h:815
FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN
FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN
FLAC__Subframe_Constant::value
FLAC__int64 value
Definition: format.h:282
FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN
FLAC__STREAM_METADATA_IS_LAST_LEN
const uint32_t FLAC__STREAM_METADATA_IS_LAST_LEN
FLAC__STREAM_SYNC_LEN
const uint32_t FLAC__STREAM_SYNC_LEN
FLAC__MetadataTypeString
const char *const FLAC__MetadataTypeString[]
FLAC__format_cuesheet_is_legal
FLAC__bool FLAC__format_cuesheet_is_legal(const FLAC__StreamMetadata_CueSheet *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation)
FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN
FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN
FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN
FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN
FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN
FLAC__StreamMetadata::data
union FLAC__StreamMetadata::@4 data
FLAC__ChannelAssignmentString
const char *const FLAC__ChannelAssignmentString[]
FLAC__FRAME_HEADER_SYNC_LEN
const uint32_t FLAC__FRAME_HEADER_SYNC_LEN
FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN
FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN
FLAC__Subframe_Fixed::residual
const FLAC__int32 * residual
Definition: format.h:315
FLAC__StreamMetadata::length
uint32_t length
Definition: format.h:850
FLAC__MAX_FIXED_ORDER
#define FLAC__MAX_FIXED_ORDER
Definition: format.h:145
FLAC__FrameHeader::bits_per_sample
uint32_t bits_per_sample
Definition: format.h:431
FLAC__FrameFooter::crc
FLAC__uint16 crc
Definition: format.h:468
FLAC__VerbatimSubframeDataType
FLAC__VerbatimSubframeDataType
Definition: format.h:286
FLAC__FRAME_HEADER_CRC_LEN
const uint32_t FLAC__FRAME_HEADER_CRC_LEN
FLAC__StreamMetadata_CueSheet_Index::offset
FLAC__uint64 offset
Definition: format.h:655
FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN
FLAC__MetadataType
FLAC__MetadataType
Definition: format.h:496
FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK
const uint32_t FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK
FLAC__Subframe_LPC::residual
const FLAC__int32 * residual
Definition: format.h:341
FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK
const uint32_t FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK
FLAC__StreamMetadata_Picture::data_length
FLAC__uint32 data_length
Definition: format.h:812
FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN
FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN
FLAC__VENDOR_STRING
const char * FLAC__VENDOR_STRING
FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER
const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER
FLAC__StreamMetadata_CueSheet_Track::pre_emphasis
uint32_t pre_emphasis
Definition: format.h:686
FLAC__Subframe_LPC::entropy_coding_method
FLAC__EntropyCodingMethod entropy_coding_method
Definition: format.h:323
FLAC__StreamMetadata_SeekPoint::frame_samples
uint32_t frame_samples
Definition: format.h:589
FLAC__StreamMetadata_Picture::type
FLAC__StreamMetadata_Picture_Type type
Definition: format.h:777
FLAC__EntropyCodingMethod_PartitionedRice::order
uint32_t order
Definition: format.h:232
FLAC__format_sample_rate_is_subset
FLAC__bool FLAC__format_sample_rate_is_subset(uint32_t sample_rate)
FLAC__format_vorbiscomment_entry_name_is_legal
FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal(const char *name)
FLAC__STREAM_METADATA_TYPE_LEN
const uint32_t FLAC__STREAM_METADATA_TYPE_LEN
FLAC__FRAME_HEADER_RESERVED_LEN
const uint32_t FLAC__FRAME_HEADER_RESERVED_LEN
FLAC__Subframe_LPC::quantization_level
int quantization_level
Definition: format.h:332
FLAC__StreamMetadata::is_last
FLAC__bool is_last
Definition: format.h:847
FLAC__StreamMetadata_Picture::colors
FLAC__uint32 colors
Definition: format.h:807
FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN
const uint32_t FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN
FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN
FLAC__StreamMetadata_Picture_Type
FLAC__StreamMetadata_Picture_Type
Definition: format.h:739
FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN
FLAC__STREAM_SYNC
const uint32_t FLAC__STREAM_SYNC
FLAC__FRAME_HEADER_BLOCK_SIZE_LEN
const uint32_t FLAC__FRAME_HEADER_BLOCK_SIZE_LEN
FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN
FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN
FLAC__SUBFRAME_TYPE_LPC
@ FLAC__SUBFRAME_TYPE_LPC
Definition: format.h:268
FLAC__SUBFRAME_TYPE_FIXED
@ FLAC__SUBFRAME_TYPE_FIXED
Definition: format.h:267
FLAC__SUBFRAME_TYPE_VERBATIM
@ FLAC__SUBFRAME_TYPE_VERBATIM
Definition: format.h:266
FLAC__SUBFRAME_TYPE_CONSTANT
@ FLAC__SUBFRAME_TYPE_CONSTANT
Definition: format.h:265
FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE
@ FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE
Definition: format.h:390
FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT
@ FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT
Definition: format.h:389
FLAC__CHANNEL_ASSIGNMENT_MID_SIDE
@ FLAC__CHANNEL_ASSIGNMENT_MID_SIDE
Definition: format.h:392
FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE
@ FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE
Definition: format.h:391
FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER
@ FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER
Definition: format.h:404
FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER
@ FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER
Definition: format.h:405
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2
@ FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2
Definition: format.h:196
FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE
@ FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE
Definition: format.h:192
FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT32
@ FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT32
Definition: format.h:287
FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT64
@ FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT64
Definition: format.h:288
FLAC__METADATA_TYPE_CUESHEET
@ FLAC__METADATA_TYPE_CUESHEET
Definition: format.h:513
FLAC__MAX_METADATA_TYPE
@ FLAC__MAX_METADATA_TYPE
Definition: format.h:522
FLAC__METADATA_TYPE_APPLICATION
@ FLAC__METADATA_TYPE_APPLICATION
Definition: format.h:504
FLAC__METADATA_TYPE_SEEKTABLE
@ FLAC__METADATA_TYPE_SEEKTABLE
Definition: format.h:507
FLAC__METADATA_TYPE_PADDING
@ FLAC__METADATA_TYPE_PADDING
Definition: format.h:501
FLAC__METADATA_TYPE_PICTURE
@ FLAC__METADATA_TYPE_PICTURE
Definition: format.h:516
FLAC__METADATA_TYPE_UNDEFINED
@ FLAC__METADATA_TYPE_UNDEFINED
Definition: format.h:519
FLAC__METADATA_TYPE_STREAMINFO
@ FLAC__METADATA_TYPE_STREAMINFO
Definition: format.h:498
FLAC__METADATA_TYPE_VORBIS_COMMENT
@ FLAC__METADATA_TYPE_VORBIS_COMMENT
Definition: format.h:510
FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST
Definition: format.h:747
FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE
@ FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE
Definition: format.h:760
FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER
Definition: format.h:743
FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST
@ FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST
Definition: format.h:748
FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE
@ FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE
Definition: format.h:755
FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER
@ FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER
Definition: format.h:751
FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD
Definition: format.h:741
FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE
Definition: format.h:759
FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE
@ FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE
Definition: format.h:756
FLAC__STREAM_METADATA_PICTURE_TYPE_BAND
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BAND
Definition: format.h:750
FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST
Definition: format.h:752
FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION
@ FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION
Definition: format.h:758
FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING
@ FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING
Definition: format.h:754
FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER
Definition: format.h:744
FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON
Definition: format.h:742
FLAC__STREAM_METADATA_PICTURE_TYPE_FISH
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FISH
Definition: format.h:757
FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION
@ FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION
Definition: format.h:753
FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA
@ FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA
Definition: format.h:746
FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE
Definition: format.h:745
FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER
@ FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER
Definition: format.h:740
FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR
@ FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR
Definition: format.h:749
FLAC__EntropyCodingMethod_PartitionedRiceContents
Definition: format.h:211
FLAC__EntropyCodingMethod_PartitionedRice
Definition: format.h:230
FLAC__EntropyCodingMethod
Definition: format.h:252
FLAC__FrameFooter
Definition: format.h:467
FLAC__FrameHeader
Definition: format.h:418
FLAC__Frame
Definition: format.h:480
FLAC__StreamMetadata_Application
Definition: format.h:572
FLAC__StreamMetadata_CueSheet_Index
Definition: format.h:654
FLAC__StreamMetadata_CueSheet_Track
Definition: format.h:673
FLAC__StreamMetadata_CueSheet
Definition: format.h:710
FLAC__StreamMetadata_Padding
Definition: format.h:561
FLAC__StreamMetadata_Picture
Definition: format.h:776
FLAC__StreamMetadata_SeekPoint
Definition: format.h:581
FLAC__StreamMetadata_SeekTable
Definition: format.h:619
FLAC__StreamMetadata_StreamInfo
Definition: format.h:536
FLAC__StreamMetadata_Unknown
Definition: format.h:834
FLAC__StreamMetadata_VorbisComment_Entry
Definition: format.h:631
FLAC__StreamMetadata_VorbisComment
Definition: format.h:641
FLAC__StreamMetadata
Definition: format.h:841
FLAC__Subframe_Constant
Definition: format.h:281
FLAC__Subframe_Fixed
Definition: format.h:305
FLAC__Subframe_LPC
Definition: format.h:322
FLAC__Subframe_Verbatim
Definition: format.h:294
FLAC__Subframe
Definition: format.h:351

Copyright (c) 2000-2009 Josh Coalson Copyright (c) 2011-2023 Xiph.Org Foundation