- FLAC__metadata_chain_check_if_tempfile_needed
FLAC__bool FLAC__metadata_chain_check_if_tempfile_needed(FLAC__Metadata_Chain* chain, FLAC__bool use_padding)
Checks if writing the given chain would require the use of a
temporary file, or if it could be written in place.
- FLAC__metadata_chain_delete
void FLAC__metadata_chain_delete(FLAC__Metadata_Chain* chain)
Free a chain instance. Deletes the object pointed to by \a chain.
- FLAC__metadata_chain_merge_padding
void FLAC__metadata_chain_merge_padding(FLAC__Metadata_Chain* chain)
Merge adjacent PADDING blocks into a single block.
- FLAC__metadata_chain_new
FLAC__Metadata_Chain* FLAC__metadata_chain_new()
Create a new chain instance.
- FLAC__metadata_chain_read
FLAC__bool FLAC__metadata_chain_read(FLAC__Metadata_Chain* chain, char* filename)
Read all metadata from a FLAC file into the chain.
- FLAC__metadata_chain_read_ogg
FLAC__bool FLAC__metadata_chain_read_ogg(FLAC__Metadata_Chain* chain, char* filename)
Read all metadata from an Ogg FLAC file into the chain.
- FLAC__metadata_chain_read_ogg_with_callbacks
FLAC__bool FLAC__metadata_chain_read_ogg_with_callbacks(FLAC__Metadata_Chain* chain, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
Read all metadata from an Ogg FLAC stream into the chain via I/O callbacks.
- FLAC__metadata_chain_read_with_callbacks
FLAC__bool FLAC__metadata_chain_read_with_callbacks(FLAC__Metadata_Chain* chain, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
Read all metadata from a FLAC stream into the chain via I/O callbacks.
- FLAC__metadata_chain_sort_padding
void FLAC__metadata_chain_sort_padding(FLAC__Metadata_Chain* chain)
This function will move all PADDING blocks to the end on the metadata,
then merge them into a single block.
- FLAC__metadata_chain_status
FLAC__Metadata_ChainStatus FLAC__metadata_chain_status(FLAC__Metadata_Chain* chain)
Get the current status of the chain. Call this after a function
returns \c false to get the reason for the error. Also resets the
status to FLAC__METADATA_CHAIN_STATUS_OK.
- FLAC__metadata_chain_write
FLAC__bool FLAC__metadata_chain_write(FLAC__Metadata_Chain* chain, FLAC__bool use_padding, FLAC__bool preserve_file_stats)
Write all metadata out to the FLAC file. This function tries to be as
efficient as possible; how the metadata is actually written is shown by
the following:
- FLAC__metadata_chain_write_with_callbacks
FLAC__bool FLAC__metadata_chain_write_with_callbacks(FLAC__Metadata_Chain* chain, FLAC__bool use_padding, FLAC__IOHandle handle, FLAC__IOCallbacks callbacks)
Write all metadata out to a FLAC stream via callbacks.
- FLAC__metadata_chain_write_with_callbacks_and_tempfile
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)
Write all metadata out to a FLAC stream via callbacks.
- FLAC__metadata_get_cuesheet
FLAC__bool FLAC__metadata_get_cuesheet(char* filename, FLAC__StreamMetadata** cuesheet)
Read the CUESHEET metadata block of the given FLAC file. This
function will try to skip any ID3v2 tag at the head of the file.
- FLAC__metadata_get_picture
FLAC__bool FLAC__metadata_get_picture(char* filename, FLAC__StreamMetadata** picture, FLAC__StreamMetadata_Picture_Type type, char* mime_type, FLAC__byte* description, uint max_width, uint max_height, uint max_depth, uint max_colors)
Read a PICTURE metadata block of the given FLAC file. This
function will try to skip any ID3v2 tag at the head of the file.
Since there can be more than one PICTURE block in a file, this
function takes a number of parameters that act as constraints to
the search. The PICTURE block with the largest area matching all
the constraints will be returned, or \a *picture will be set to
\c NULL if there was no such block.
- FLAC__metadata_get_streaminfo
FLAC__bool FLAC__metadata_get_streaminfo(char* filename, FLAC__StreamMetadata* streaminfo)
Read the STREAMINFO metadata block of the given FLAC file. This function
will try to skip any ID3v2 tag at the head of the file.
- FLAC__metadata_get_tags
FLAC__bool FLAC__metadata_get_tags(char* filename, FLAC__StreamMetadata** tags)
Read the VORBIS_COMMENT metadata block of the given FLAC file. This
function will try to skip any ID3v2 tag at the head of the file.
- FLAC__metadata_iterator_delete
void FLAC__metadata_iterator_delete(FLAC__Metadata_Iterator* iterator)
Free an iterator instance. Deletes the object pointed to by \a iterator.
- FLAC__metadata_iterator_delete_block
FLAC__bool FLAC__metadata_iterator_delete_block(FLAC__Metadata_Iterator* iterator, FLAC__bool replace_with_padding)
Removes the current block from the chain. If \a replace_with_padding is
\c true, the block will instead be replaced with a padding block of equal
size. You can not delete the STREAMINFO block. The iterator will be
left pointing to the block before the one just "deleted", even if
\a replace_with_padding is \c true.
- FLAC__metadata_iterator_get_block
FLAC__StreamMetadata* FLAC__metadata_iterator_get_block(FLAC__Metadata_Iterator* iterator)
Get the metadata block at the current position. You can modify
the block in place but must write the chain before the changes
are reflected to the FLAC file. You do not need to call
FLAC__metadata_iterator_set_block() to reflect the changes;
the pointer returned by FLAC__metadata_iterator_get_block()
points directly into the chain.
- FLAC__metadata_iterator_get_block_type
FLAC__MetadataType FLAC__metadata_iterator_get_block_type(FLAC__Metadata_Iterator* iterator)
Get the type of the metadata block at the current position.
- FLAC__metadata_iterator_init
void FLAC__metadata_iterator_init(FLAC__Metadata_Iterator* iterator, FLAC__Metadata_Chain* chain)
Initialize the iterator to point to the first metadata block in the
given chain.
- FLAC__metadata_iterator_insert_block_after
FLAC__bool FLAC__metadata_iterator_insert_block_after(FLAC__Metadata_Iterator* iterator, FLAC__StreamMetadata* block)
Insert a new block after the current block. You cannot insert a STREAMINFO
block as there can be only one, the one that already exists at the head when
you read in a chain. The chain takes ownership of the new block and it will
be deleted when the chain is deleted. The iterator will be left pointing to
the new block.
- FLAC__metadata_iterator_insert_block_before
FLAC__bool FLAC__metadata_iterator_insert_block_before(FLAC__Metadata_Iterator* iterator, FLAC__StreamMetadata* block)
Insert a new block before the current block. You cannot insert a block
before the first STREAMINFO block. You cannot insert a STREAMINFO block
as there can be only one, the one that already exists at the head when you
read in a chain. The chain takes ownership of the new block and it will be
deleted when the chain is deleted. The iterator will be left pointing to
the new block.
- FLAC__metadata_iterator_new
FLAC__Metadata_Iterator* FLAC__metadata_iterator_new()
Create a new iterator instance.
- FLAC__metadata_iterator_next
FLAC__bool FLAC__metadata_iterator_next(FLAC__Metadata_Iterator* iterator)
Moves the iterator forward one metadata block, returning \c false if
already at the end.
- FLAC__metadata_iterator_prev
FLAC__bool FLAC__metadata_iterator_prev(FLAC__Metadata_Iterator* iterator)
Moves the iterator backward one metadata block, returning \c false if
already at the beginning.
- FLAC__metadata_iterator_set_block
FLAC__bool FLAC__metadata_iterator_set_block(FLAC__Metadata_Iterator* iterator, FLAC__StreamMetadata* block)
Set the metadata block at the current position, replacing the existing
block. The new block passed in becomes owned by the chain and it will be
deleted when the chain is deleted.
- FLAC__metadata_object_application_set_data
FLAC__bool FLAC__metadata_object_application_set_data(FLAC__StreamMetadata* object, FLAC__byte* data, uint length, FLAC__bool copy)
Sets the application data of an APPLICATION block.
- FLAC__metadata_object_clone
FLAC__StreamMetadata* FLAC__metadata_object_clone(FLAC__StreamMetadata* object)
Create a copy of an existing metadata object.
- FLAC__metadata_object_cuesheet_calculate_cddb_id
FLAC__uint32 FLAC__metadata_object_cuesheet_calculate_cddb_id(FLAC__StreamMetadata* object)
Calculate and return the CDDB/freedb ID for a cue sheet. The function
assumes the cue sheet corresponds to a CD; the result is undefined
if the cuesheet's is_cd bit is not set.
- FLAC__metadata_object_cuesheet_delete_track
FLAC__bool FLAC__metadata_object_cuesheet_delete_track(FLAC__StreamMetadata* object, uint track_num)
Delete a track in a CUESHEET block at the given index.
- FLAC__metadata_object_cuesheet_insert_blank_track
FLAC__bool FLAC__metadata_object_cuesheet_insert_blank_track(FLAC__StreamMetadata* object, uint track_num)
Insert a blank track in a CUESHEET block at the given index.
- FLAC__metadata_object_cuesheet_insert_track
FLAC__bool FLAC__metadata_object_cuesheet_insert_track(FLAC__StreamMetadata* object, uint track_num, FLAC__StreamMetadata_CueSheet_Track* track, FLAC__bool copy)
Insert a track in a CUESHEET block at the given index.
- FLAC__metadata_object_cuesheet_is_legal
FLAC__bool FLAC__metadata_object_cuesheet_is_legal(FLAC__StreamMetadata* object, FLAC__bool check_cd_da_subset, char** violation)
Check a cue sheet to see if it conforms to the FLAC specification.
See the format specification for limits on the contents of the
cue sheet.
- FLAC__metadata_object_cuesheet_resize_tracks
FLAC__bool FLAC__metadata_object_cuesheet_resize_tracks(FLAC__StreamMetadata* object, uint new_num_tracks)
- FLAC__metadata_object_cuesheet_set_track
FLAC__bool FLAC__metadata_object_cuesheet_set_track(FLAC__StreamMetadata* object, uint track_num, FLAC__StreamMetadata_CueSheet_Track* track, FLAC__bool copy)
Sets a track in a CUESHEET block.
- FLAC__metadata_object_cuesheet_track_clone
FLAC__StreamMetadata_CueSheet_Track* FLAC__metadata_object_cuesheet_track_clone(FLAC__StreamMetadata_CueSheet_Track* object)
Create a copy of an existing CUESHEET track object.
- FLAC__metadata_object_cuesheet_track_delete
void FLAC__metadata_object_cuesheet_track_delete(FLAC__StreamMetadata_CueSheet_Track* object)
Delete a CUESHEET track object
- FLAC__metadata_object_cuesheet_track_delete_index
FLAC__bool FLAC__metadata_object_cuesheet_track_delete_index(FLAC__StreamMetadata* object, uint track_num, uint index_num)
Delete an index point in a CUESHEET track at the given index.
- FLAC__metadata_object_cuesheet_track_insert_blank_index
FLAC__bool FLAC__metadata_object_cuesheet_track_insert_blank_index(FLAC__StreamMetadata* object, uint track_num, uint index_num)
Insert a blank index point in a CUESHEET track at the given index.
- FLAC__metadata_object_cuesheet_track_insert_index
FLAC__bool FLAC__metadata_object_cuesheet_track_insert_index(FLAC__StreamMetadata* object, uint track_num, uint index_num, FLAC__StreamMetadata_CueSheet_Index index)
Insert an index point in a CUESHEET track at the given index.
- FLAC__metadata_object_cuesheet_track_new
FLAC__StreamMetadata_CueSheet_Track* FLAC__metadata_object_cuesheet_track_new()
Create a new CUESHEET track instance.
- FLAC__metadata_object_cuesheet_track_resize_indices
FLAC__bool FLAC__metadata_object_cuesheet_track_resize_indices(FLAC__StreamMetadata* object, uint track_num, uint new_num_indices)
Resize a track's index point array.
- FLAC__metadata_object_delete
void FLAC__metadata_object_delete(FLAC__StreamMetadata* object)
Free a metadata object. Deletes the object pointed to by \a object.
- FLAC__metadata_object_is_equal
FLAC__bool FLAC__metadata_object_is_equal(FLAC__StreamMetadata* block1, FLAC__StreamMetadata* block2)
Compares two metadata objects.
- FLAC__metadata_object_new
FLAC__StreamMetadata* FLAC__metadata_object_new(FLAC__MetadataType type)
Create a new metadata object instance of the given type.
- FLAC__metadata_object_picture_is_legal
FLAC__bool FLAC__metadata_object_picture_is_legal(FLAC__StreamMetadata* object, char** violation)
Check a PICTURE block to see if it conforms to the FLAC specification.
See the format specification for limits on the contents of the
PICTURE block.
- FLAC__metadata_object_picture_set_data
FLAC__bool FLAC__metadata_object_picture_set_data(FLAC__StreamMetadata* object, FLAC__byte* data, FLAC__uint32 length, FLAC__bool copy)
Sets the picture data of a PICTURE block.
- FLAC__metadata_object_picture_set_description
FLAC__bool FLAC__metadata_object_picture_set_description(FLAC__StreamMetadata* object, FLAC__byte* description, FLAC__bool copy)
Sets the description of a PICTURE block.
- FLAC__metadata_object_picture_set_mime_type
FLAC__bool FLAC__metadata_object_picture_set_mime_type(FLAC__StreamMetadata* object, char* mime_type, FLAC__bool copy)
Sets the MIME type of a PICTURE block.
- FLAC__metadata_object_seektable_delete_point
FLAC__bool FLAC__metadata_object_seektable_delete_point(FLAC__StreamMetadata* object, uint point_num)
Delete a seekpoint from a seektable.
- FLAC__metadata_object_seektable_insert_point
FLAC__bool FLAC__metadata_object_seektable_insert_point(FLAC__StreamMetadata* object, uint point_num, FLAC__StreamMetadata_SeekPoint point)
Insert a seekpoint into a seektable.
- FLAC__metadata_object_seektable_is_legal
FLAC__bool FLAC__metadata_object_seektable_is_legal(FLAC__StreamMetadata* object)
Check a seektable to see if it conforms to the FLAC specification.
See the format specification for limits on the contents of the
seektable.
- FLAC__metadata_object_seektable_resize_points
FLAC__bool FLAC__metadata_object_seektable_resize_points(FLAC__StreamMetadata* object, uint new_num_points)
Resize the seekpoint array.
- FLAC__metadata_object_seektable_set_point
void FLAC__metadata_object_seektable_set_point(FLAC__StreamMetadata* object, uint point_num, FLAC__StreamMetadata_SeekPoint point)
Set a seekpoint in a seektable.
- FLAC__metadata_object_seektable_template_append_placeholders
FLAC__bool FLAC__metadata_object_seektable_template_append_placeholders(FLAC__StreamMetadata* object, uint num)
Append a number of placeholder points to the end of a seek table.
- FLAC__metadata_object_seektable_template_append_point
FLAC__bool FLAC__metadata_object_seektable_template_append_point(FLAC__StreamMetadata* object, FLAC__uint64 sample_number)
Append a specific seek point template to the end of a seek table.
- FLAC__metadata_object_seektable_template_append_points
FLAC__bool FLAC__metadata_object_seektable_template_append_points(FLAC__StreamMetadata* object, FLAC__uint64* sample_numbers, uint num)
Append specific seek point templates to the end of a seek table.
- FLAC__metadata_object_seektable_template_append_spaced_points
FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points(FLAC__StreamMetadata* object, uint num, FLAC__uint64 total_samples)
Append a set of evenly-spaced seek point templates to the end of a
seek table.
- FLAC__metadata_object_seektable_template_append_spaced_points_by_samples
FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points_by_samples(FLAC__StreamMetadata* object, uint samples, FLAC__uint64 total_samples)
Append a set of evenly-spaced seek point templates to the end of a
seek table.
- FLAC__metadata_object_seektable_template_sort
FLAC__bool FLAC__metadata_object_seektable_template_sort(FLAC__StreamMetadata* object, FLAC__bool compact)
Sort a seek table's seek points according to the format specification,
removing duplicates.
- FLAC__metadata_object_vorbiscomment_append_comment
FLAC__bool FLAC__metadata_object_vorbiscomment_append_comment(FLAC__StreamMetadata* object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
Appends a comment to a VORBIS_COMMENT block.
- FLAC__metadata_object_vorbiscomment_delete_comment
FLAC__bool FLAC__metadata_object_vorbiscomment_delete_comment(FLAC__StreamMetadata* object, uint comment_num)
Delete a comment in a VORBIS_COMMENT block at the given index.
- FLAC__metadata_object_vorbiscomment_entry_from_name_value_pair
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_from_name_value_pair(FLAC__StreamMetadata_VorbisComment_Entry* entry, char* field_name, char* field_value)
Creates a Vorbis comment entry from NUL-terminated name and value strings.
- FLAC__metadata_object_vorbiscomment_entry_matches
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_matches(FLAC__StreamMetadata_VorbisComment_Entry entry, char* field_name, uint field_name_length)
Check if the given Vorbis comment entry's field name matches the given
field name.
- FLAC__metadata_object_vorbiscomment_entry_to_name_value_pair
FLAC__bool FLAC__metadata_object_vorbiscomment_entry_to_name_value_pair(FLAC__StreamMetadata_VorbisComment_Entry entry, char** field_name, char** field_value)
Splits a Vorbis comment entry into NUL-terminated name and value strings.
- FLAC__metadata_object_vorbiscomment_find_entry_from
int FLAC__metadata_object_vorbiscomment_find_entry_from(FLAC__StreamMetadata* object, uint offset, char* field_name)
Find a Vorbis comment with the given field name.
- FLAC__metadata_object_vorbiscomment_insert_comment
FLAC__bool FLAC__metadata_object_vorbiscomment_insert_comment(FLAC__StreamMetadata* object, uint comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
Insert a comment in a VORBIS_COMMENT block at the given index.
- FLAC__metadata_object_vorbiscomment_remove_entries_matching
int FLAC__metadata_object_vorbiscomment_remove_entries_matching(FLAC__StreamMetadata* object, char* field_name)
Remove all Vorbis comments matching the given field name.
- FLAC__metadata_object_vorbiscomment_remove_entry_matching
int FLAC__metadata_object_vorbiscomment_remove_entry_matching(FLAC__StreamMetadata* object, char* field_name)
Remove first Vorbis comment matching the given field name.
- FLAC__metadata_object_vorbiscomment_replace_comment
FLAC__bool FLAC__metadata_object_vorbiscomment_replace_comment(FLAC__StreamMetadata* object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool all, FLAC__bool copy)
Replaces comments in a VORBIS_COMMENT block with a new one.
- FLAC__metadata_object_vorbiscomment_resize_comments
FLAC__bool FLAC__metadata_object_vorbiscomment_resize_comments(FLAC__StreamMetadata* object, uint new_num_comments)
Resize the comment array.
- FLAC__metadata_object_vorbiscomment_set_comment
FLAC__bool FLAC__metadata_object_vorbiscomment_set_comment(FLAC__StreamMetadata* object, uint comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
Sets a comment in a VORBIS_COMMENT block.
- FLAC__metadata_object_vorbiscomment_set_vendor_string
FLAC__bool FLAC__metadata_object_vorbiscomment_set_vendor_string(FLAC__StreamMetadata* object, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy)
Sets the vendor string in a VORBIS_COMMENT block.
- FLAC__metadata_simple_iterator_delete
void FLAC__metadata_simple_iterator_delete(FLAC__Metadata_SimpleIterator* iterator)
Free an iterator instance. Deletes the object pointed to by \a iterator.
- FLAC__metadata_simple_iterator_delete_block
FLAC__bool FLAC__metadata_simple_iterator_delete_block(FLAC__Metadata_SimpleIterator* iterator, FLAC__bool use_padding)
Deletes the block at the current position. This will cause the
entire FLAC file to be rewritten, unless \a use_padding is \c true,
in which case the block will be replaced by an equal-sized PADDING
block. The iterator will be left pointing to the block before the
one just deleted.
- FLAC__metadata_simple_iterator_get_application_id
FLAC__bool FLAC__metadata_simple_iterator_get_application_id(FLAC__Metadata_SimpleIterator* iterator, FLAC__byte* id)
Get the application ID of the \c APPLICATION block at the current
position. This avoids reading the actual block data which can save
time for large blocks.
- FLAC__metadata_simple_iterator_get_block
FLAC__StreamMetadata* FLAC__metadata_simple_iterator_get_block(FLAC__Metadata_SimpleIterator* iterator)
Get the metadata block at the current position. You can modify the
block but must use FLAC__metadata_simple_iterator_set_block() to
write it back to the FLAC file.
- FLAC__metadata_simple_iterator_get_block_length
uint FLAC__metadata_simple_iterator_get_block_length(FLAC__Metadata_SimpleIterator* iterator)
Get the length of the metadata block at the current position. This
avoids reading the actual block data which can save time for large
blocks.
- FLAC__metadata_simple_iterator_get_block_offset
off_t FLAC__metadata_simple_iterator_get_block_offset(FLAC__Metadata_SimpleIterator* iterator)
Get the offset of the metadata block at the current position. This
avoids reading the actual block data which can save time for large
blocks.
- FLAC__metadata_simple_iterator_get_block_type
FLAC__MetadataType FLAC__metadata_simple_iterator_get_block_type(FLAC__Metadata_SimpleIterator* iterator)
Get the type of the metadata block at the current position. This
avoids reading the actual block data which can save time for large
blocks.
- FLAC__metadata_simple_iterator_init
FLAC__bool FLAC__metadata_simple_iterator_init(FLAC__Metadata_SimpleIterator* iterator, char* filename, FLAC__bool read_only, FLAC__bool preserve_file_stats)
Initialize the iterator to point to the first metadata block in the
given FLAC file.
- FLAC__metadata_simple_iterator_insert_block_after
FLAC__bool FLAC__metadata_simple_iterator_insert_block_after(FLAC__Metadata_SimpleIterator* iterator, FLAC__StreamMetadata* block, FLAC__bool use_padding)
This is similar to FLAC__metadata_simple_iterator_set_block()
except that instead of writing over an existing block, it appends
a block after the existing block. \a use_padding is again used to
tell the function to try an expand into following padding in an
attempt to avoid rewriting the entire file.
- FLAC__metadata_simple_iterator_is_last
FLAC__bool FLAC__metadata_simple_iterator_is_last(FLAC__Metadata_SimpleIterator* iterator)
Returns a flag telling if the current metadata block is the last.
- FLAC__metadata_simple_iterator_is_writable
FLAC__bool FLAC__metadata_simple_iterator_is_writable(FLAC__Metadata_SimpleIterator* iterator)
Returns \c true if the FLAC file is writable. If \c false, calls to
FLAC__metadata_simple_iterator_set_block() and
FLAC__metadata_simple_iterator_insert_block_after() will fail.
- FLAC__metadata_simple_iterator_new
FLAC__Metadata_SimpleIterator* FLAC__metadata_simple_iterator_new()
Create a new iterator instance.
- FLAC__metadata_simple_iterator_next
FLAC__bool FLAC__metadata_simple_iterator_next(FLAC__Metadata_SimpleIterator* iterator)
Moves the iterator forward one metadata block, returning \c false if
already at the end.
- FLAC__metadata_simple_iterator_prev
FLAC__bool FLAC__metadata_simple_iterator_prev(FLAC__Metadata_SimpleIterator* iterator)
Moves the iterator backward one metadata block, returning \c false if
already at the beginning.
- FLAC__metadata_simple_iterator_set_block
FLAC__bool FLAC__metadata_simple_iterator_set_block(FLAC__Metadata_SimpleIterator* iterator, FLAC__StreamMetadata* block, FLAC__bool use_padding)
Write a block back to the FLAC file. This function tries to be
as efficient as possible; how the block is actually written is
shown by the following:
- FLAC__metadata_simple_iterator_status
FLAC__Metadata_SimpleIteratorStatus FLAC__metadata_simple_iterator_status(FLAC__Metadata_SimpleIterator* iterator)
Get the current status of the iterator. Call this after a function
returns \c false to get the reason for the error. Also resets the status
to FLAC__METADATA_SIMPLE_ITERATOR_STATUS_OK.