FLAC 1.4.0
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-2022 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
40extern "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
126#define FLAC__MAX_SAMPLE_RATE (1048575u)
127
129#define FLAC__MAX_LPC_ORDER (32u)
130
133#define FLAC__SUBSET_MAX_LPC_ORDER_48000HZ (12u)
134
138#define FLAC__MIN_QLP_COEFF_PRECISION (5u)
139
143#define FLAC__MAX_QLP_COEFF_PRECISION (15u)
144
146#define FLAC__MAX_FIXED_ORDER (4u)
147
149#define FLAC__MAX_RICE_PARTITION_ORDER (15u)
150
152#define FLAC__SUBSET_MAX_RICE_PARTITION_ORDER (8u)
153
160extern FLAC_API const char *FLAC__VERSION_STRING;
161
166extern FLAC_API const char *FLAC__VENDOR_STRING;
167
169extern FLAC_API const FLAC__byte FLAC__STREAM_SYNC_STRING[4]; /* = "fLaC" */
170
174extern FLAC_API const uint32_t FLAC__STREAM_SYNC; /* = 0x664C6143 */
175
177extern FLAC_API const uint32_t FLAC__STREAM_SYNC_LEN; /* = 32 bits */
178
180#define FLAC__STREAM_SYNC_LENGTH (4u)
181
182
183/*****************************************************************************
184 *
185 * Subframe structures
186 *
187 *****************************************************************************/
188
189/*****************************************************************************/
190
192typedef enum {
201
207extern FLAC_API const char * const FLAC__EntropyCodingMethodTypeString[];
208
209
212typedef struct {
213
214 uint32_t *parameters;
217 uint32_t *raw_bits;
228
231typedef struct {
232
233 uint32_t order;
240
241extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN;
244extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN;
253typedef struct {
255 union {
257 } data;
259
260extern FLAC_API const uint32_t FLAC__ENTROPY_CODING_METHOD_TYPE_LEN;
262/*****************************************************************************/
263
265typedef enum {
271
277extern FLAC_API const char * const FLAC__SubframeTypeString[];
278
279
282typedef struct {
283 FLAC__int64 value;
285
287typedef enum {
291
292
295typedef struct {
296 union {
297 const FLAC__int32 *int32;
298 const FLAC__int64 *int64;
299 } data;
302
303
306typedef struct {
310 uint32_t order;
313 FLAC__int64 warmup[FLAC__MAX_FIXED_ORDER];
316 const FLAC__int32 *residual;
319
320
323typedef struct {
327 uint32_t order;
336 FLAC__int32 qlp_coeff[FLAC__MAX_LPC_ORDER];
339 FLAC__int64 warmup[FLAC__MAX_LPC_ORDER];
342 const FLAC__int32 *residual;
345
346extern FLAC_API const uint32_t FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN;
347extern FLAC_API const uint32_t FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN;
352typedef struct {
354 union {
359 } data;
360 uint32_t wasted_bits;
362
370extern FLAC_API const uint32_t FLAC__SUBFRAME_ZERO_PAD_LEN;
371extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_LEN;
372extern FLAC_API const uint32_t FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN;
374extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK;
375extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK;
376extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK;
377extern FLAC_API const uint32_t FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK;
379/*****************************************************************************/
380
381
382/*****************************************************************************
383 *
384 * Frame structures
385 *
386 *****************************************************************************/
387
389typedef enum {
395
401extern FLAC_API const char * const FLAC__ChannelAssignmentString[];
402
404typedef enum {
408
414extern FLAC_API const char * const FLAC__FrameNumberTypeString[];
415
416
419typedef struct {
420 uint32_t blocksize;
423 uint32_t sample_rate;
426 uint32_t channels;
440 union {
441 FLAC__uint32 frame_number;
442 FLAC__uint64 sample_number;
443 } number;
447 FLAC__uint8 crc;
453
454extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SYNC;
455extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SYNC_LEN;
456extern FLAC_API const uint32_t FLAC__FRAME_HEADER_RESERVED_LEN;
457extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN;
458extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BLOCK_SIZE_LEN;
459extern FLAC_API const uint32_t FLAC__FRAME_HEADER_SAMPLE_RATE_LEN;
460extern FLAC_API const uint32_t FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN;
461extern FLAC_API const uint32_t FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN;
462extern FLAC_API const uint32_t FLAC__FRAME_HEADER_ZERO_PAD_LEN;
463extern FLAC_API const uint32_t FLAC__FRAME_HEADER_CRC_LEN;
468typedef struct {
469 FLAC__uint16 crc;
475
476extern FLAC_API const uint32_t FLAC__FRAME_FOOTER_CRC_LEN;
481typedef struct {
482 FLAC__FrameHeader header;
484 FLAC__FrameFooter footer;
486
487/*****************************************************************************/
488
489
490/*****************************************************************************
491 *
492 * Meta-data structures
493 *
494 *****************************************************************************/
495
497typedef enum {
498
526
532extern FLAC_API const char * const FLAC__MetadataTypeString[];
533
534
537typedef struct {
538 uint32_t min_blocksize, max_blocksize;
539 uint32_t min_framesize, max_framesize;
540 uint32_t sample_rate;
541 uint32_t channels;
542 uint32_t bits_per_sample;
543 FLAC__uint64 total_samples;
544 FLAC__byte md5sum[16];
546
547extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN;
548extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN;
549extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN;
550extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN;
551extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN;
552extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN;
553extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN;
554extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN;
555extern FLAC_API const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN;
558#define FLAC__STREAM_METADATA_STREAMINFO_LENGTH (34u)
559
562typedef struct {
563 int dummy;
569
570
573typedef struct {
574 FLAC__byte id[4];
575 FLAC__byte *data;
577
578extern FLAC_API const uint32_t FLAC__STREAM_METADATA_APPLICATION_ID_LEN;
582typedef struct {
583 FLAC__uint64 sample_number;
586 FLAC__uint64 stream_offset;
593
594extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN;
595extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN;
596extern FLAC_API const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN;
599#define FLAC__STREAM_METADATA_SEEKPOINT_LENGTH (18u)
600
605extern FLAC_API const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER;
606
607
620typedef struct {
621 uint32_t num_points;
624
625
632typedef struct {
633 FLAC__uint32 length;
634 FLAC__byte *entry;
636
637extern FLAC_API const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN;
642typedef struct {
644 FLAC__uint32 num_comments;
647
648extern FLAC_API const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN;
655typedef struct {
656 FLAC__uint64 offset;
661 FLAC__byte number;
664
665extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN;
666extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN;
667extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN;
674typedef struct {
675 FLAC__uint64 offset;
678 FLAC__byte number;
681 char isrc[13];
684 uint32_t type:1;
687 uint32_t pre_emphasis:1;
690 FLAC__byte num_indices;
697
698extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN;
699extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN;
700extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN;
701extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN;
702extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN;
703extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN;
704extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN;
711typedef struct {
712 char media_catalog_number[129];
718 FLAC__uint64 lead_in;
721 FLAC__bool is_cd;
724 uint32_t num_tracks;
731
732extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN;
733extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN;
734extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN;
735extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN;
736extern FLAC_API const uint32_t FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN;
740typedef enum {
762 FLAC__STREAM_METADATA_PICTURE_TYPE_UNDEFINED
764
771extern FLAC_API const char * const FLAC__StreamMetadata_Picture_TypeString[];
772
777typedef struct {
792 FLAC__byte *description;
799 FLAC__uint32 width;
802 FLAC__uint32 height;
805 FLAC__uint32 depth;
808 FLAC__uint32 colors;
813 FLAC__uint32 data_length;
816 FLAC__byte *data;
820
821extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_TYPE_LEN;
822extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN;
823extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN;
824extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN;
825extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN;
826extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN;
827extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_COLORS_LEN;
828extern FLAC_API const uint32_t FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN;
835typedef struct {
836 FLAC__byte *data;
838
839
842typedef struct FLAC__StreamMetadata {
848 FLAC__bool is_last;
851 uint32_t length;
854 union {
863 } data;
867
868extern FLAC_API const uint32_t FLAC__STREAM_METADATA_IS_LAST_LEN;
869extern FLAC_API const uint32_t FLAC__STREAM_METADATA_TYPE_LEN;
870extern FLAC_API const uint32_t FLAC__STREAM_METADATA_LENGTH_LEN;
873#define FLAC__STREAM_METADATA_HEADER_LENGTH (4u)
874
875/*****************************************************************************/
876
877
878/*****************************************************************************
879 *
880 * Utility functions
881 *
882 *****************************************************************************/
883
891FLAC_API FLAC__bool FLAC__format_sample_rate_is_valid(uint32_t sample_rate);
892
903FLAC_API FLAC__bool FLAC__format_blocksize_is_subset(uint32_t blocksize, uint32_t sample_rate);
904
914FLAC_API FLAC__bool FLAC__format_sample_rate_is_subset(uint32_t sample_rate);
915
928FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal(const char *name);
929
944FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal(const FLAC__byte *value, uint32_t length);
945
961FLAC_API FLAC__bool FLAC__format_vorbiscomment_entry_is_legal(const FLAC__byte *entry, uint32_t length);
962
974
988
1007FLAC_API FLAC__bool FLAC__format_cuesheet_is_legal(const FLAC__StreamMetadata_CueSheet *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation);
1008
1025FLAC_API FLAC__bool FLAC__format_picture_is_legal(const FLAC__StreamMetadata_Picture *picture, const char **violation);
1026
1027/* \} */
1028
1029#ifdef __cplusplus
1030}
1031#endif
1032
1033#endif
This module contains #defines and symbols for exporting function calls, and providing version informa...
FLAC__bool FLAC__format_seektable_is_legal(const FLAC__StreamMetadata_SeekTable *seek_table)
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN
uint32_t num_tracks
Definition: format.h:724
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN
FLAC__EntropyCodingMethod entropy_coding_method
Definition: format.h:307
FLAC__uint32 depth
Definition: format.h:805
uint32_t type
Definition: format.h:684
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN
FLAC__bool FLAC__format_vorbiscomment_entry_is_legal(const FLAC__byte *entry, uint32_t length)
FLAC__StreamMetadata_CueSheet_Index * indices
Definition: format.h:693
#define FLAC__MAX_LPC_ORDER
Definition: format.h:129
uint32_t blocksize
Definition: format.h:420
FLAC__uint32 width
Definition: format.h:799
const uint32_t FLAC__ENTROPY_CODING_METHOD_TYPE_LEN
FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal(const FLAC__byte *value, uint32_t length)
FLAC__SubframeType
Definition: format.h:265
const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN
const FLAC__int64 * int64
Definition: format.h:298
uint32_t FLAC__format_seektable_sort(FLAC__StreamMetadata_SeekTable *seek_table)
const uint32_t FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN
const char *const FLAC__StreamMetadata_Picture_TypeString[]
uint32_t sample_rate
Definition: format.h:423
const FLAC__EntropyCodingMethod_PartitionedRiceContents * contents
Definition: format.h:236
const uint32_t FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN
struct FLAC__StreamMetadata FLAC__StreamMetadata
const uint32_t FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN
FLAC__MetadataType type
Definition: format.h:843
const uint32_t FLAC__FRAME_HEADER_ZERO_PAD_LEN
const uint32_t FLAC__FRAME_FOOTER_CRC_LEN
const FLAC__byte FLAC__STREAM_SYNC_STRING[4]
const uint32_t FLAC__STREAM_METADATA_PICTURE_COLORS_LEN
FLAC__uint64 offset
Definition: format.h:675
const char *const FLAC__EntropyCodingMethodTypeString[]
FLAC__byte number
Definition: format.h:678
FLAC__uint64 lead_in
Definition: format.h:718
const uint32_t FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN
FLAC__bool FLAC__format_sample_rate_is_valid(uint32_t sample_rate)
#define FLAC__MAX_CHANNELS
Definition: format.h:106
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN
uint32_t * parameters
Definition: format.h:214
FLAC__bool FLAC__format_blocksize_is_subset(uint32_t blocksize, uint32_t sample_rate)
const uint32_t FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN
uint32_t qlp_coeff_precision
Definition: format.h:330
int dummy
Definition: format.h:563
const char * FLAC__VERSION_STRING
const uint32_t FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN
FLAC__byte * description
Definition: format.h:792
FLAC__StreamMetadata_CueSheet_Track * tracks
Definition: format.h:727
const uint32_t FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK
FLAC__byte num_indices
Definition: format.h:690
FLAC__uint64 stream_offset
Definition: format.h:586
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN
#define FLAC__MAX_METADATA_TYPE_CODE
Definition: format.h:93
uint32_t order
Definition: format.h:327
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN
const uint32_t FLAC__SUBFRAME_TYPE_LEN
FLAC__bool is_cd
Definition: format.h:721
const FLAC__int32 * int32
Definition: format.h:297
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN
FLAC__byte number
Definition: format.h:661
const uint32_t FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN
uint32_t capacity_by_order
Definition: format.h:222
FLAC__uint32 height
Definition: format.h:802
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN
const char *const FLAC__SubframeTypeString[]
FLAC__ChannelAssignment
Definition: format.h:389
FLAC__FrameNumberType number_type
Definition: format.h:435
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN
const uint32_t FLAC__FRAME_HEADER_SYNC
const uint32_t FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN
const uint32_t FLAC__STREAM_METADATA_APPLICATION_ID_LEN
const uint32_t FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER
FLAC__bool FLAC__format_picture_is_legal(const FLAC__StreamMetadata_Picture *picture, const char **violation)
uint32_t order
Definition: format.h:310
uint32_t * raw_bits
Definition: format.h:217
const uint32_t FLAC__FRAME_HEADER_SAMPLE_RATE_LEN
const uint32_t FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN
const uint32_t FLAC__SUBFRAME_ZERO_PAD_LEN
FLAC__FrameNumberType
Definition: format.h:404
const uint32_t FLAC__STREAM_METADATA_LENGTH_LEN
const uint32_t FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN
const char *const FLAC__FrameNumberTypeString[]
const uint32_t FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK
FLAC__EntropyCodingMethodType
Definition: format.h:192
uint32_t channels
Definition: format.h:426
FLAC__uint64 sample_number
Definition: format.h:583
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN
FLAC__uint8 crc
Definition: format.h:447
FLAC__ChannelAssignment channel_assignment
Definition: format.h:429
const uint32_t FLAC__STREAM_METADATA_PICTURE_TYPE_LEN
char * mime_type
Definition: format.h:781
FLAC__byte * data
Definition: format.h:816
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN
FLAC__int64 value
Definition: format.h:283
const uint32_t FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN
const uint32_t FLAC__STREAM_METADATA_IS_LAST_LEN
const uint32_t FLAC__STREAM_SYNC_LEN
const char *const FLAC__MetadataTypeString[]
FLAC__bool FLAC__format_cuesheet_is_legal(const FLAC__StreamMetadata_CueSheet *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation)
const uint32_t FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN
union FLAC__StreamMetadata::@4 data
const char *const FLAC__ChannelAssignmentString[]
const uint32_t FLAC__FRAME_HEADER_SYNC_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN
const FLAC__int32 * residual
Definition: format.h:316
uint32_t length
Definition: format.h:851
#define FLAC__MAX_FIXED_ORDER
Definition: format.h:146
uint32_t bits_per_sample
Definition: format.h:432
FLAC__uint16 crc
Definition: format.h:469
FLAC__VerbatimSubframeDataType
Definition: format.h:287
const uint32_t FLAC__FRAME_HEADER_CRC_LEN
FLAC__uint64 offset
Definition: format.h:656
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN
FLAC__MetadataType
Definition: format.h:497
const uint32_t FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK
const FLAC__int32 * residual
Definition: format.h:342
const uint32_t FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK
FLAC__uint32 data_length
Definition: format.h:813
const uint32_t FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN
const char * FLAC__VENDOR_STRING
const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER
uint32_t pre_emphasis
Definition: format.h:687
FLAC__EntropyCodingMethod entropy_coding_method
Definition: format.h:324
uint32_t frame_samples
Definition: format.h:590
FLAC__StreamMetadata_Picture_Type type
Definition: format.h:778
uint32_t order
Definition: format.h:233
FLAC__bool FLAC__format_sample_rate_is_subset(uint32_t sample_rate)
FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal(const char *name)
const uint32_t FLAC__STREAM_METADATA_TYPE_LEN
const uint32_t FLAC__FRAME_HEADER_RESERVED_LEN
int quantization_level
Definition: format.h:333
FLAC__bool is_last
Definition: format.h:848
FLAC__uint32 colors
Definition: format.h:808
const uint32_t FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN
FLAC__StreamMetadata_Picture_Type
Definition: format.h:740
const uint32_t FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN
const uint32_t FLAC__STREAM_SYNC
const uint32_t FLAC__FRAME_HEADER_BLOCK_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN
const uint32_t FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN
@ FLAC__SUBFRAME_TYPE_LPC
Definition: format.h:269
@ FLAC__SUBFRAME_TYPE_FIXED
Definition: format.h:268
@ FLAC__SUBFRAME_TYPE_VERBATIM
Definition: format.h:267
@ FLAC__SUBFRAME_TYPE_CONSTANT
Definition: format.h:266
@ FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE
Definition: format.h:391
@ FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT
Definition: format.h:390
@ FLAC__CHANNEL_ASSIGNMENT_MID_SIDE
Definition: format.h:393
@ FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE
Definition: format.h:392
@ FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER
Definition: format.h:405
@ FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER
Definition: format.h:406
@ FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2
Definition: format.h:197
@ FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE
Definition: format.h:193
@ FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT32
Definition: format.h:288
@ FLAC__VERBATIM_SUBFRAME_DATA_TYPE_INT64
Definition: format.h:289
@ FLAC__METADATA_TYPE_CUESHEET
Definition: format.h:514
@ FLAC__MAX_METADATA_TYPE
Definition: format.h:523
@ FLAC__METADATA_TYPE_APPLICATION
Definition: format.h:505
@ FLAC__METADATA_TYPE_SEEKTABLE
Definition: format.h:508
@ FLAC__METADATA_TYPE_PADDING
Definition: format.h:502
@ FLAC__METADATA_TYPE_PICTURE
Definition: format.h:517
@ FLAC__METADATA_TYPE_UNDEFINED
Definition: format.h:520
@ FLAC__METADATA_TYPE_STREAMINFO
Definition: format.h:499
@ FLAC__METADATA_TYPE_VORBIS_COMMENT
Definition: format.h:511
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST
Definition: format.h:748
@ FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE
Definition: format.h:761
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER
Definition: format.h:744
@ FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST
Definition: format.h:749
@ FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE
Definition: format.h:756
@ FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER
Definition: format.h:752
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD
Definition: format.h:742
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE
Definition: format.h:760
@ FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE
Definition: format.h:757
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BAND
Definition: format.h:751
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST
Definition: format.h:753
@ FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION
Definition: format.h:759
@ FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING
Definition: format.h:755
@ FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER
Definition: format.h:745
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON
Definition: format.h:743
@ FLAC__STREAM_METADATA_PICTURE_TYPE_FISH
Definition: format.h:758
@ FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION
Definition: format.h:754
@ FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA
Definition: format.h:747
@ FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE
Definition: format.h:746
@ FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER
Definition: format.h:741
@ FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR
Definition: format.h:750
Definition: format.h:253
Definition: format.h:468
Definition: format.h:419
Definition: format.h:481
Definition: format.h:573
Definition: format.h:655
Definition: format.h:674
Definition: format.h:711
Definition: format.h:562
Definition: format.h:777
Definition: format.h:582
Definition: format.h:620
Definition: format.h:537
Definition: format.h:835
Definition: format.h:632
Definition: format.h:642
Definition: format.h:842
Definition: format.h:282
Definition: format.h:306
Definition: format.h:323
Definition: format.h:295
Definition: format.h:352