cannam@86: cannam@86: cannam@86: FLAC: include/FLAC/format.h File Reference cannam@86: cannam@86: cannam@86: cannam@86:
Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members
cannam@86: cannam@86:

format.h File Reference


Detailed Description

cannam@86: 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. cannam@86:

cannam@86: See the detailed documentation in the format module. cannam@86:

cannam@86: #include "export.h"
cannam@86: #include "ordinals.h"
cannam@86: cannam@86:

cannam@86: Go to the source code of this file. cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86:

Defines

#define FLAC__MAX_METADATA_TYPE_CODE   (126u)
#define FLAC__MIN_BLOCK_SIZE   (16u)
#define FLAC__MAX_BLOCK_SIZE   (65535u)
#define FLAC__SUBSET_MAX_BLOCK_SIZE_48000HZ   (4608u)
#define FLAC__MAX_CHANNELS   (8u)
#define FLAC__MIN_BITS_PER_SAMPLE   (4u)
#define FLAC__MAX_BITS_PER_SAMPLE   (32u)
#define FLAC__REFERENCE_CODEC_MAX_BITS_PER_SAMPLE   (24u)
#define FLAC__MAX_SAMPLE_RATE   (655350u)
#define FLAC__MAX_LPC_ORDER   (32u)
#define FLAC__SUBSET_MAX_LPC_ORDER_48000HZ   (12u)
#define FLAC__MIN_QLP_COEFF_PRECISION   (5u)
#define FLAC__MAX_QLP_COEFF_PRECISION   (15u)
#define FLAC__MAX_FIXED_ORDER   (4u)
#define FLAC__MAX_RICE_PARTITION_ORDER   (15u)
#define FLAC__SUBSET_MAX_RICE_PARTITION_ORDER   (8u)
#define FLAC__STREAM_SYNC_LENGTH   (4u)
#define FLAC__STREAM_METADATA_STREAMINFO_LENGTH   (34u)
#define FLAC__STREAM_METADATA_SEEKPOINT_LENGTH   (18u)
#define FLAC__STREAM_METADATA_HEADER_LENGTH   (4u)

Enumerations

enum  FLAC__EntropyCodingMethodType { FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE = 0, cannam@86: FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2 = 1 cannam@86: }
enum  FLAC__SubframeType { FLAC__SUBFRAME_TYPE_CONSTANT = 0, cannam@86: FLAC__SUBFRAME_TYPE_VERBATIM = 1, cannam@86: FLAC__SUBFRAME_TYPE_FIXED = 2, cannam@86: FLAC__SUBFRAME_TYPE_LPC = 3 cannam@86: }
enum  FLAC__ChannelAssignment { FLAC__CHANNEL_ASSIGNMENT_INDEPENDENT = 0, cannam@86: FLAC__CHANNEL_ASSIGNMENT_LEFT_SIDE = 1, cannam@86: FLAC__CHANNEL_ASSIGNMENT_RIGHT_SIDE = 2, cannam@86: FLAC__CHANNEL_ASSIGNMENT_MID_SIDE = 3 cannam@86: }
enum  FLAC__FrameNumberType { FLAC__FRAME_NUMBER_TYPE_FRAME_NUMBER, cannam@86: FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER cannam@86: }
enum  FLAC__MetadataType {
cannam@86:   FLAC__METADATA_TYPE_STREAMINFO = 0, cannam@86: FLAC__METADATA_TYPE_PADDING = 1, cannam@86: FLAC__METADATA_TYPE_APPLICATION = 2, cannam@86: FLAC__METADATA_TYPE_SEEKTABLE = 3, cannam@86:
cannam@86:   FLAC__METADATA_TYPE_VORBIS_COMMENT = 4, cannam@86: FLAC__METADATA_TYPE_CUESHEET = 5, cannam@86: FLAC__METADATA_TYPE_PICTURE = 6, cannam@86: FLAC__METADATA_TYPE_UNDEFINED = 7 cannam@86:
cannam@86: }
enum  FLAC__StreamMetadata_Picture_Type {
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_OTHER = 0, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD = 1, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON = 2, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER = 3, cannam@86:
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_BACK_COVER = 4, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_LEAFLET_PAGE = 5, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_MEDIA = 6, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_LEAD_ARTIST = 7, cannam@86:
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_ARTIST = 8, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_CONDUCTOR = 9, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_BAND = 10, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_COMPOSER = 11, cannam@86:
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_LYRICIST = 12, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_RECORDING_LOCATION = 13, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_RECORDING = 14, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_DURING_PERFORMANCE = 15, cannam@86:
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_VIDEO_SCREEN_CAPTURE = 16, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_FISH = 17, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_ILLUSTRATION = 18, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_BAND_LOGOTYPE = 19, cannam@86:
cannam@86:   FLAC__STREAM_METADATA_PICTURE_TYPE_PUBLISHER_LOGOTYPE = 20, cannam@86: FLAC__STREAM_METADATA_PICTURE_TYPE_UNDEFINED cannam@86:
cannam@86: }

Functions

FLAC__bool FLAC__format_sample_rate_is_valid (unsigned sample_rate)
FLAC__bool FLAC__format_sample_rate_is_subset (unsigned sample_rate)
FLAC__bool FLAC__format_vorbiscomment_entry_name_is_legal (const char *name)
FLAC__bool FLAC__format_vorbiscomment_entry_value_is_legal (const FLAC__byte *value, unsigned length)
FLAC__bool FLAC__format_vorbiscomment_entry_is_legal (const FLAC__byte *entry, unsigned length)
FLAC__bool FLAC__format_seektable_is_legal (const FLAC__StreamMetadata_SeekTable *seek_table)
unsigned FLAC__format_seektable_sort (FLAC__StreamMetadata_SeekTable *seek_table)
FLAC__bool FLAC__format_cuesheet_is_legal (const FLAC__StreamMetadata_CueSheet *cue_sheet, FLAC__bool check_cd_da_subset, const char **violation)
FLAC__bool FLAC__format_picture_is_legal (const FLAC__StreamMetadata_Picture *picture, const char **violation)

Variables

const char * FLAC__VERSION_STRING
const char * FLAC__VENDOR_STRING
const FLAC__byte FLAC__STREAM_SYNC_STRING [4]
const unsigned FLAC__STREAM_SYNC
const unsigned FLAC__STREAM_SYNC_LEN
const char *const FLAC__EntropyCodingMethodTypeString []
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ORDER_LEN
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_PARAMETER_LEN
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_PARAMETER_LEN
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_RAW_LEN
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE_ESCAPE_PARAMETER
const unsigned FLAC__ENTROPY_CODING_METHOD_PARTITIONED_RICE2_ESCAPE_PARAMETER
const unsigned FLAC__ENTROPY_CODING_METHOD_TYPE_LEN
const char *const FLAC__SubframeTypeString []
const unsigned FLAC__SUBFRAME_LPC_QLP_COEFF_PRECISION_LEN
const unsigned FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN
const unsigned FLAC__SUBFRAME_ZERO_PAD_LEN
const unsigned FLAC__SUBFRAME_TYPE_LEN
const unsigned FLAC__SUBFRAME_WASTED_BITS_FLAG_LEN
const unsigned FLAC__SUBFRAME_TYPE_CONSTANT_BYTE_ALIGNED_MASK
const unsigned FLAC__SUBFRAME_TYPE_VERBATIM_BYTE_ALIGNED_MASK
const unsigned FLAC__SUBFRAME_TYPE_FIXED_BYTE_ALIGNED_MASK
const unsigned FLAC__SUBFRAME_TYPE_LPC_BYTE_ALIGNED_MASK
const char *const FLAC__ChannelAssignmentString []
const char *const FLAC__FrameNumberTypeString []
const unsigned FLAC__FRAME_HEADER_SYNC
const unsigned FLAC__FRAME_HEADER_SYNC_LEN
const unsigned FLAC__FRAME_HEADER_RESERVED_LEN
const unsigned FLAC__FRAME_HEADER_BLOCKING_STRATEGY_LEN
const unsigned FLAC__FRAME_HEADER_BLOCK_SIZE_LEN
const unsigned FLAC__FRAME_HEADER_SAMPLE_RATE_LEN
const unsigned FLAC__FRAME_HEADER_CHANNEL_ASSIGNMENT_LEN
const unsigned FLAC__FRAME_HEADER_BITS_PER_SAMPLE_LEN
const unsigned FLAC__FRAME_HEADER_ZERO_PAD_LEN
const unsigned FLAC__FRAME_HEADER_CRC_LEN
const unsigned FLAC__FRAME_FOOTER_CRC_LEN
const char *const FLAC__MetadataTypeString []
const unsigned FLAC__STREAM_METADATA_STREAMINFO_MIN_BLOCK_SIZE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_MAX_BLOCK_SIZE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_MIN_FRAME_SIZE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_MAX_FRAME_SIZE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_SAMPLE_RATE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_CHANNELS_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_BITS_PER_SAMPLE_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_TOTAL_SAMPLES_LEN
const unsigned FLAC__STREAM_METADATA_STREAMINFO_MD5SUM_LEN
const unsigned FLAC__STREAM_METADATA_APPLICATION_ID_LEN
const unsigned FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN
const unsigned FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN
const unsigned FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN
const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER
const unsigned FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN
const unsigned FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_INDEX_OFFSET_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_INDEX_NUMBER_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_INDEX_RESERVED_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_OFFSET_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_NUMBER_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_ISRC_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_TYPE_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_PRE_EMPHASIS_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_RESERVED_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_TRACK_NUM_INDICES_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_MEDIA_CATALOG_NUMBER_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_LEAD_IN_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_IS_CD_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_RESERVED_LEN
const unsigned FLAC__STREAM_METADATA_CUESHEET_NUM_TRACKS_LEN
const char *const FLAC__StreamMetadata_Picture_TypeString []
const unsigned FLAC__STREAM_METADATA_PICTURE_TYPE_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_DESCRIPTION_LENGTH_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_WIDTH_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_HEIGHT_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_DEPTH_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_COLORS_LEN
const unsigned FLAC__STREAM_METADATA_PICTURE_DATA_LENGTH_LEN
const unsigned FLAC__STREAM_METADATA_IS_LAST_LEN
const unsigned FLAC__STREAM_METADATA_TYPE_LEN
const unsigned FLAC__STREAM_METADATA_LENGTH_LEN
cannam@86: cannam@86:


cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: cannam@86: