Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

metadata.h File Reference


Detailed Description

This module provides functions for creating and manipulating FLAC metadata blocks in memory, and three progressively more powerful interfaces for traversing and editing metadata in FLAC files.

See the detailed documentation for each interface in the metadata module.

#include <sys/types.h>
#include "export.h"
#include "callback.h"
#include "format.h"

Go to the source code of this file.

Typedefs

typedef FLAC__Metadata_SimpleIterator FLAC__Metadata_SimpleIterator
typedef FLAC__Metadata_Chain FLAC__Metadata_Chain
typedef FLAC__Metadata_Iterator FLAC__Metadata_Iterator

Enumerations

enum  FLAC__Metadata_SimpleIteratorStatus {
  FLAC__METADATA_SIMPLE_ITERATOR_STATUS_OK = 0, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_ILLEGAL_INPUT, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_ERROR_OPENING_FILE, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_NOT_A_FLAC_FILE,
  FLAC__METADATA_SIMPLE_ITERATOR_STATUS_NOT_WRITABLE, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_BAD_METADATA, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_READ_ERROR, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_SEEK_ERROR,
  FLAC__METADATA_SIMPLE_ITERATOR_STATUS_WRITE_ERROR, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_RENAME_ERROR, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_UNLINK_ERROR, FLAC__METADATA_SIMPLE_ITERATOR_STATUS_MEMORY_ALLOCATION_ERROR,
  FLAC__METADATA_SIMPLE_ITERATOR_STATUS_INTERNAL_ERROR
}
enum  FLAC__Metadata_ChainStatus {
  FLAC__METADATA_CHAIN_STATUS_OK = 0, FLAC__METADATA_CHAIN_STATUS_ILLEGAL_INPUT, FLAC__METADATA_CHAIN_STATUS_ERROR_OPENING_FILE, FLAC__METADATA_CHAIN_STATUS_NOT_A_FLAC_FILE,
  FLAC__METADATA_CHAIN_STATUS_NOT_WRITABLE, FLAC__METADATA_CHAIN_STATUS_BAD_METADATA, FLAC__METADATA_CHAIN_STATUS_READ_ERROR, FLAC__METADATA_CHAIN_STATUS_SEEK_ERROR,
  FLAC__METADATA_CHAIN_STATUS_WRITE_ERROR, FLAC__METADATA_CHAIN_STATUS_RENAME_ERROR, FLAC__METADATA_CHAIN_STATUS_UNLINK_ERROR, FLAC__METADATA_CHAIN_STATUS_MEMORY_ALLOCATION_ERROR,
  FLAC__METADATA_CHAIN_STATUS_INTERNAL_ERROR, FLAC__METADATA_CHAIN_STATUS_INVALID_CALLBACKS, FLAC__METADATA_CHAIN_STATUS_READ_WRITE_MISMATCH, FLAC__METADATA_CHAIN_STATUS_WRONG_WRITE_CALL
}

Functions

FLAC__bool FLAC__metadata_get_streaminfo (const char *filename, FLAC__StreamMetadata *streaminfo)
FLAC__bool FLAC__metadata_get_tags (const char *filename, FLAC__StreamMetadata **tags)
FLAC__bool FLAC__metadata_get_cuesheet (const char *filename, FLAC__StreamMetadata **cuesheet)
FLAC__bool FLAC__metadata_get_picture (const char *filename, FLAC__StreamMetadata **picture, FLAC__StreamMetadata_Picture_Type type, const char *mime_type, const FLAC__byte *description, unsigned max_width, unsigned max_height, unsigned max_depth, unsigned max_colors)
FLAC__Metadata_SimpleIteratorFLAC__metadata_simple_iterator_new (void)
void FLAC__metadata_simple_iterator_delete (FLAC__Metadata_SimpleIterator *iterator)
FLAC__Metadata_SimpleIteratorStatus FLAC__metadata_simple_iterator_status (FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_init (FLAC__Metadata_SimpleIterator *iterator, const char *filename, FLAC__bool read_only, FLAC__bool preserve_file_stats)
FLAC__bool FLAC__metadata_simple_iterator_is_writable (const FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_next (FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_prev (FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_is_last (const FLAC__Metadata_SimpleIterator *iterator)
off_t FLAC__metadata_simple_iterator_get_block_offset (const FLAC__Metadata_SimpleIterator *iterator)
FLAC__MetadataType FLAC__metadata_simple_iterator_get_block_type (const FLAC__Metadata_SimpleIterator *iterator)
unsigned FLAC__metadata_simple_iterator_get_block_length (const FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_get_application_id (FLAC__Metadata_SimpleIterator *iterator, FLAC__byte *id)
FLAC__StreamMetadataFLAC__metadata_simple_iterator_get_block (FLAC__Metadata_SimpleIterator *iterator)
FLAC__bool FLAC__metadata_simple_iterator_set_block (FLAC__Metadata_SimpleIterator *iterator, FLAC__StreamMetadata *block, FLAC__bool use_padding)
FLAC__bool FLAC__metadata_simple_iterator_insert_block_after (FLAC__Metadata_SimpleIterator *iterator, FLAC__StreamMetadata *block, FLAC__bool use_padding)
FLAC__bool FLAC__metadata_simple_iterator_delete_block (FLAC__Metadata_SimpleIterator *iterator, FLAC__bool use_padding)
FLAC__Metadata_ChainFLAC__metadata_chain_new (void)
void FLAC__metadata_chain_delete (FLAC__Metadata_Chain *chain)
FLAC__Metadata_ChainStatus FLAC__metadata_chain_status (FLAC__Metadata_Chain *chain)
FLAC__bool FLAC__metadata_chain_read (FLAC__Metadata_Chain *chain, const char *filename)
FLAC__bool FLAC__metadata_chain_read_ogg (FLAC__Metadata_Chain *chain, const char *filename)
FLAC__bool FLAC__metadata_chain_read_with_callbacks (FLAC__Metadata_Chain *chain, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
FLAC__bool FLAC__metadata_chain_read_ogg_with_callbacks (FLAC__Metadata_Chain *chain, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
FLAC__bool FLAC__metadata_chain_check_if_tempfile_needed (FLAC__Metadata_Chain *chain, FLAC__bool use_padding)
FLAC__bool FLAC__metadata_chain_write (FLAC__Metadata_Chain *chain, FLAC__bool use_padding, FLAC__bool preserve_file_stats)
FLAC__bool FLAC__metadata_chain_write_with_callbacks (FLAC__Metadata_Chain *chain, FLAC__bool use_padding, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
FLAC__bool FLAC__metadata_chain_write_with_callbacks_and_tempfile (FLAC__Metadata_Chain *chain, FLAC__bool use_padding, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks, FLAC__IOHandle temp_handle, FLAC__IOCallbacks temp_callbacks)
void FLAC__metadata_chain_merge_padding (FLAC__Metadata_Chain *chain)
void FLAC__metadata_chain_sort_padding (FLAC__Metadata_Chain *chain)
FLAC__Metadata_IteratorFLAC__metadata_iterator_new (void)
void FLAC__metadata_iterator_delete (FLAC__Metadata_Iterator *iterator)
void FLAC__metadata_iterator_init (FLAC__Metadata_Iterator *iterator, FLAC__Metadata_Chain *chain)
FLAC__bool FLAC__metadata_iterator_next (FLAC__Metadata_Iterator *iterator)
FLAC__bool FLAC__metadata_iterator_prev (FLAC__Metadata_Iterator *iterator)
FLAC__MetadataType FLAC__metadata_iterator_get_block_type (const FLAC__Metadata_Iterator *iterator)
FLAC__StreamMetadataFLAC__metadata_iterator_get_block (FLAC__Metadata_Iterator *iterator)
FLAC__bool FLAC__metadata_iterator_set_block (FLAC__Metadata_Iterator *iterator, FLAC__StreamMetadata *block)
FLAC__bool FLAC__metadata_iterator_delete_block (FLAC__Metadata_Iterator *iterator, FLAC__bool replace_with_padding)
FLAC__bool FLAC__metadata_iterator_insert_block_before (FLAC__Metadata_Iterator *iterator, FLAC__StreamMetadata *block)
FLAC__bool FLAC__metadata_iterator_insert_block_after (FLAC__Metadata_Iterator *iterator, FLAC__StreamMetadata *block)
FLAC__StreamMetadataFLAC__metadata_object_new (FLAC__MetadataType type)
FLAC__StreamMetadataFLAC__metadata_object_clone (const FLAC__StreamMetadata *object)
void FLAC__metadata_object_delete (FLAC__StreamMetadata *object)
FLAC__bool FLAC__metadata_object_is_equal (const FLAC__StreamMetadata *block1, const FLAC__StreamMetadata *block2)
FLAC__bool FLAC__metadata_object_application_set_data (FLAC__StreamMetadata *object, FLAC__byte *data, unsigned length, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_seektable_resize_points (FLAC__StreamMetadata *object, unsigned new_num_points)
void FLAC__metadata_object_seektable_set_point (FLAC__StreamMetadata *object, unsigned point_num, FLAC__StreamMetadata_SeekPoint point)
FLAC__bool FLAC__metadata_object_seektable_insert_point (FLAC__StreamMetadata *object, unsigned point_num, FLAC__StreamMetadata_SeekPoint point)
FLAC__bool FLAC__metadata_object_seektable_delete_point (FLAC__StreamMetadata *object, unsigned point_num)
FLAC__bool FLAC__metadata_object_seektable_is_legal (const FLAC__StreamMetadata *object)
FLAC__bool FLAC__metadata_object_seektable_template_append_placeholders (FLAC__StreamMetadata *object, unsigned num)
FLAC__bool FLAC__metadata_object_seektable_template_append_point (FLAC__StreamMetadata *object, FLAC__uint64 sample_number)
FLAC__bool FLAC__metadata_object_seektable_template_append_points (FLAC__StreamMetadata *object, FLAC__uint64 sample_numbers[], unsigned num)
FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points (FLAC__StreamMetadata *object, unsigned num, FLAC__uint64 total_samples)
FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points_by_samples (FLAC__StreamMetadata *object, unsigned samples, FLAC__uint64 total_samples)
FLAC__bool FLAC__metadata_object_seektable_template_sort (FLAC__StreamMetadata *object, FLAC__bool compact)
FLAC__bool FLAC__metadata_object_vorbiscomment_set_vendor_string (FLAC__StreamMetadata *object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_vorbiscomment_resize_comments (FLAC__StreamMetadata *object, unsigned new_num_comments)
FLAC__bool FLAC__metadata_object_vorbiscomment_set_comment (FLAC__StreamMetadata *object, unsigned comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_vorbiscomment_insert_comment (FLAC__StreamMetadata *object, unsigned comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_vorbiscomment_append_comment (FLAC__StreamMetadata *object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_vorbiscomment_replace_comment (FLAC__StreamMetadata *object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool all, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_vorbiscomment_delete_comment (FLAC__StreamMetadata *object, unsigned comment_num)
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_from_name_value_pair (FLAC__StreamMetadata_VorbisComment_Entry *entry, const char *field_name, const char *field_value)
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_to_name_value_pair (const FLAC__StreamMetadata_VorbisComment_Entry entry, char **field_name, char **field_value)
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_matches (const FLAC__StreamMetadata_VorbisComment_Entry entry, const char *field_name, unsigned field_name_length)
int FLAC__metadata_object_vorbiscomment_find_entry_from (const FLAC__StreamMetadata *object, unsigned offset, const char *field_name)
int FLAC__metadata_object_vorbiscomment_remove_entry_matching (FLAC__StreamMetadata *object, const char *field_name)
int FLAC__metadata_object_vorbiscomment_remove_entries_matching (FLAC__StreamMetadata *object, const char *field_name)
FLAC__StreamMetadata_CueSheet_TrackFLAC__metadata_object_cuesheet_track_new (void)
FLAC__StreamMetadata_CueSheet_TrackFLAC__metadata_object_cuesheet_track_clone (const FLAC__StreamMetadata_CueSheet_Track *object)
void FLAC__metadata_object_cuesheet_track_delete (FLAC__StreamMetadata_CueSheet_Track *object)
FLAC__bool FLAC__metadata_object_cuesheet_track_resize_indices (FLAC__StreamMetadata *object, unsigned track_num, unsigned new_num_indices)
FLAC__bool FLAC__metadata_object_cuesheet_track_insert_index (FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num, FLAC__StreamMetadata_CueSheet_Index index)
FLAC__bool FLAC__metadata_object_cuesheet_track_insert_blank_index (FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num)
FLAC__bool FLAC__metadata_object_cuesheet_track_delete_index (FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num)
FLAC__bool FLAC__metadata_object_cuesheet_resize_tracks (FLAC__StreamMetadata *object, unsigned new_num_tracks)
FLAC__bool FLAC__metadata_object_cuesheet_insert_track (FLAC__StreamMetadata *object, unsigned track_num, FLAC__StreamMetadata_CueSheet_Track *track, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_cuesheet_insert_blank_track (FLAC__StreamMetadata *object, unsigned track_num)
FLAC__bool FLAC__metadata_object_cuesheet_delete_track (FLAC__StreamMetadata *object, unsigned track_num)
FLAC__bool FLAC__metadata_object_cuesheet_is_legal (const FLAC__StreamMetadata *object, FLAC__bool check_cd_da_subset, const char **violation)
FLAC__uint32 FLAC__metadata_object_cuesheet_calculate_cddb_id (const FLAC__StreamMetadata *object)
FLAC__bool FLAC__metadata_object_picture_set_mime_type (FLAC__StreamMetadata *object, char *mime_type, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_picture_set_description (FLAC__StreamMetadata *object, FLAC__byte *description, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_picture_set_data (FLAC__StreamMetadata *object, FLAC__byte *data, FLAC__uint32 length, FLAC__bool copy)
FLAC__bool FLAC__metadata_object_picture_is_legal (const FLAC__StreamMetadata *object, const char **violation)

Variables

const char *const FLAC__Metadata_SimpleIteratorStatusString []
const char *const FLAC__Metadata_ChainStatusString []