mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2025-12-10 05:27:01 +03:00
new flac + fix protoc
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/* libFLAC - Free Lossless Audio Codec library
|
||||
* Copyright (C) 2001-2009 Josh Coalson
|
||||
* Copyright (C) 2011-2014 Xiph.Org Foundation
|
||||
* Copyright (C) 2011-2022 Xiph.Org Foundation
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@@ -93,7 +93,7 @@
|
||||
* Efficient means the whole file is rewritten at most one time, and only
|
||||
* when necessary. Level 1 is not efficient only in the case that you
|
||||
* cause more than one metadata block to grow or shrink beyond what can
|
||||
* be accomodated by padding. In this case you should probably use level
|
||||
* be accommodated by padding. In this case you should probably use level
|
||||
* 2, which allows you to edit all the metadata for a file in memory and
|
||||
* write it out all at once.
|
||||
*
|
||||
@@ -134,6 +134,11 @@ extern "C" {
|
||||
* STREAMINFO, VORBIS_COMMENT, CUESHEET, and PICTURE blocks, requiring
|
||||
* only a filename.
|
||||
*
|
||||
* On Windows, filename must be a UTF-8 encoded filename, which libFLAC
|
||||
* internally translates to an appropriate representation to use with
|
||||
* _wfopen. On all other systems, filename is passed to fopen without
|
||||
* any translation.
|
||||
*
|
||||
* They try to skip any ID3v2 tag at the head of the file.
|
||||
*
|
||||
* \{
|
||||
@@ -217,13 +222,13 @@ FLAC_API FLAC__bool FLAC__metadata_get_cuesheet(const char *filename, FLAC__Stre
|
||||
* matched exactly. Use \c NULL to mean "any
|
||||
* description".
|
||||
* \param max_width The maximum width in pixels desired. Use
|
||||
* \c (unsigned)(-1) to mean "any width".
|
||||
* \c (uint32_t)(-1) to mean "any width".
|
||||
* \param max_height The maximum height in pixels desired. Use
|
||||
* \c (unsigned)(-1) to mean "any height".
|
||||
* \c (uint32_t)(-1) to mean "any height".
|
||||
* \param max_depth The maximum color depth in bits-per-pixel desired.
|
||||
* Use \c (unsigned)(-1) to mean "any depth".
|
||||
* Use \c (uint32_t)(-1) to mean "any depth".
|
||||
* \param max_colors The maximum number of colors desired. Use
|
||||
* \c (unsigned)(-1) to mean "any number of colors".
|
||||
* \c (uint32_t)(-1) to mean "any number of colors".
|
||||
* \assert
|
||||
* \code filename != NULL \endcode
|
||||
* \code picture != NULL \endcode
|
||||
@@ -234,7 +239,7 @@ FLAC_API FLAC__bool FLAC__metadata_get_cuesheet(const char *filename, FLAC__Stre
|
||||
* error, a file decoder error, or the file contained no PICTURE
|
||||
* block, and \a *picture will be set to \c NULL.
|
||||
*/
|
||||
FLAC_API 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_API 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, uint32_t max_width, uint32_t max_height, uint32_t max_depth, uint32_t max_colors);
|
||||
|
||||
/* \} */
|
||||
|
||||
@@ -387,6 +392,11 @@ FLAC_API FLAC__Metadata_SimpleIteratorStatus FLAC__metadata_simple_iterator_stat
|
||||
/** Initialize the iterator to point to the first metadata block in the
|
||||
* given FLAC file.
|
||||
*
|
||||
* On Windows, filename must be a UTF-8 encoded filename, which libFLAC
|
||||
* internally translates to an appropriate representation to use with
|
||||
* _wfopen. On all other systems, filename is passed to fopen without
|
||||
* any translation.
|
||||
*
|
||||
* \param iterator A pointer to an existing iterator.
|
||||
* \param filename The path to the FLAC file.
|
||||
* \param read_only If \c true, the FLAC file will be opened
|
||||
@@ -497,13 +507,13 @@ FLAC_API FLAC__MetadataType FLAC__metadata_simple_iterator_get_block_type(const
|
||||
* \code iterator != NULL \endcode
|
||||
* \a iterator has been successfully initialized with
|
||||
* FLAC__metadata_simple_iterator_init()
|
||||
* \retval unsigned
|
||||
* \retval uint32_t
|
||||
* The length of the metadata block at the current iterator position.
|
||||
* The is same length as that in the
|
||||
* <a href="http://xiph.org/flac/format.html#metadata_block_header">metadata block header</a>,
|
||||
* <a href="http://xiph.org/flhttps://xiph.org/flac/format.html#metadata_block_header">metadata block header</a>,
|
||||
* i.e. the length of the metadata body that follows the header.
|
||||
*/
|
||||
FLAC_API unsigned FLAC__metadata_simple_iterator_get_block_length(const FLAC__Metadata_SimpleIterator *iterator);
|
||||
FLAC_API uint32_t FLAC__metadata_simple_iterator_get_block_length(const FLAC__Metadata_SimpleIterator *iterator);
|
||||
|
||||
/** Get the application ID of the \c APPLICATION block at the current
|
||||
* position. This avoids reading the actual block data which can save
|
||||
@@ -667,7 +677,7 @@ FLAC_API FLAC__bool FLAC__metadata_simple_iterator_delete_block(FLAC__Metadata_S
|
||||
*
|
||||
* - Create a new chain using FLAC__metadata_chain_new(). A chain is a
|
||||
* linked list of FLAC metadata blocks.
|
||||
* - Read all metadata into the the chain from a FLAC file using
|
||||
* - Read all metadata into the chain from a FLAC file using
|
||||
* FLAC__metadata_chain_read() or FLAC__metadata_chain_read_ogg() and
|
||||
* check the status.
|
||||
* - Optionally, consolidate the padding using
|
||||
@@ -764,7 +774,7 @@ typedef enum {
|
||||
FLAC__METADATA_CHAIN_STATUS_READ_WRITE_MISMATCH,
|
||||
/**< FLAC__metadata_chain_write() was called on a chain read by
|
||||
* FLAC__metadata_chain_read_with_callbacks()/FLAC__metadata_chain_read_ogg_with_callbacks(),
|
||||
* or
|
||||
* or
|
||||
* FLAC__metadata_chain_write_with_callbacks()/FLAC__metadata_chain_write_with_callbacks_and_tempfile()
|
||||
* was called on a chain read by
|
||||
* FLAC__metadata_chain_read()/FLAC__metadata_chain_read_ogg().
|
||||
@@ -819,6 +829,11 @@ FLAC_API void FLAC__metadata_chain_delete(FLAC__Metadata_Chain *chain);
|
||||
FLAC_API FLAC__Metadata_ChainStatus FLAC__metadata_chain_status(FLAC__Metadata_Chain *chain);
|
||||
|
||||
/** Read all metadata from a FLAC file into the chain.
|
||||
*
|
||||
* On Windows, filename must be a UTF-8 encoded filename, which libFLAC
|
||||
* internally translates to an appropriate representation to use with
|
||||
* _wfopen. On all other systems, filename is passed to fopen without
|
||||
* any translation.
|
||||
*
|
||||
* \param chain A pointer to an existing chain.
|
||||
* \param filename The path to the FLAC file to read.
|
||||
@@ -833,6 +848,11 @@ FLAC_API FLAC__Metadata_ChainStatus FLAC__metadata_chain_status(FLAC__Metadata_C
|
||||
FLAC_API FLAC__bool FLAC__metadata_chain_read(FLAC__Metadata_Chain *chain, const char *filename);
|
||||
|
||||
/** Read all metadata from an Ogg FLAC file into the chain.
|
||||
*
|
||||
* On Windows, filename must be a UTF-8 encoded filename, which libFLAC
|
||||
* internally translates to an appropriate representation to use with
|
||||
* _wfopen. On all other systems, filename is passed to fopen without
|
||||
* any translation.
|
||||
*
|
||||
* \note Ogg FLAC metadata data writing is not supported yet and
|
||||
* FLAC__metadata_chain_write() will fail.
|
||||
@@ -1373,12 +1393,13 @@ FLAC_API FLAC__bool FLAC__metadata_object_is_equal(const FLAC__StreamMetadata *b
|
||||
* \retval FLAC__bool
|
||||
* \c false if \a copy is \c true and malloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_application_set_data(FLAC__StreamMetadata *object, FLAC__byte *data, unsigned length, FLAC__bool copy);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_application_set_data(FLAC__StreamMetadata *object, FLAC__byte *data, uint32_t length, FLAC__bool copy);
|
||||
|
||||
/** Resize the seekpoint array.
|
||||
*
|
||||
* If the size shrinks, elements will truncated; if it grows, new placeholder
|
||||
* points will be added to the end.
|
||||
* points will be added to the end. If this function returns false, the
|
||||
* object is left untouched.
|
||||
*
|
||||
* \param object A pointer to an existing SEEKTABLE object.
|
||||
* \param new_num_points The desired length of the array; may be \c 0.
|
||||
@@ -1390,7 +1411,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_application_set_data(FLAC__StreamMetad
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation error, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_resize_points(FLAC__StreamMetadata *object, unsigned new_num_points);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_resize_points(FLAC__StreamMetadata *object, uint32_t new_num_points);
|
||||
|
||||
/** Set a seekpoint in a seektable.
|
||||
*
|
||||
@@ -1402,7 +1423,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_resize_points(FLAC__StreamMe
|
||||
* \code object->type == FLAC__METADATA_TYPE_SEEKTABLE \endcode
|
||||
* \code object->data.seek_table.num_points > point_num \endcode
|
||||
*/
|
||||
FLAC_API void FLAC__metadata_object_seektable_set_point(FLAC__StreamMetadata *object, unsigned point_num, FLAC__StreamMetadata_SeekPoint point);
|
||||
FLAC_API void FLAC__metadata_object_seektable_set_point(FLAC__StreamMetadata *object, uint32_t point_num, FLAC__StreamMetadata_SeekPoint point);
|
||||
|
||||
/** Insert a seekpoint into a seektable.
|
||||
*
|
||||
@@ -1416,7 +1437,7 @@ FLAC_API void FLAC__metadata_object_seektable_set_point(FLAC__StreamMetadata *ob
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation error, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_insert_point(FLAC__StreamMetadata *object, unsigned point_num, FLAC__StreamMetadata_SeekPoint point);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_insert_point(FLAC__StreamMetadata *object, uint32_t point_num, FLAC__StreamMetadata_SeekPoint point);
|
||||
|
||||
/** Delete a seekpoint from a seektable.
|
||||
*
|
||||
@@ -1429,7 +1450,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_insert_point(FLAC__StreamMet
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation error, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_delete_point(FLAC__StreamMetadata *object, unsigned point_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_delete_point(FLAC__StreamMetadata *object, uint32_t point_num);
|
||||
|
||||
/** Check a seektable to see if it conforms to the FLAC specification.
|
||||
* See the format specification for limits on the contents of the
|
||||
@@ -1459,7 +1480,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_is_legal(const FLAC__StreamM
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_placeholders(FLAC__StreamMetadata *object, unsigned num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_placeholders(FLAC__StreamMetadata *object, uint32_t num);
|
||||
|
||||
/** Append a specific seek point template to the end of a seek table.
|
||||
*
|
||||
@@ -1494,7 +1515,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_point(FLAC__
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_points(FLAC__StreamMetadata *object, FLAC__uint64 sample_numbers[], unsigned num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_points(FLAC__StreamMetadata *object, FLAC__uint64 sample_numbers[], uint32_t num);
|
||||
|
||||
/** Append a set of evenly-spaced seek point templates to the end of a
|
||||
* seek table.
|
||||
@@ -1516,7 +1537,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_points(FLAC_
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points(FLAC__StreamMetadata *object, unsigned num, FLAC__uint64 total_samples);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points(FLAC__StreamMetadata *object, uint32_t num, FLAC__uint64 total_samples);
|
||||
|
||||
/** Append a set of evenly-spaced seek point templates to the end of a
|
||||
* seek table.
|
||||
@@ -1544,7 +1565,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_point
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points_by_samples(FLAC__StreamMetadata *object, unsigned samples, FLAC__uint64 total_samples);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_seektable_template_append_spaced_points_by_samples(FLAC__StreamMetadata *object, uint32_t samples, FLAC__uint64 total_samples);
|
||||
|
||||
/** Sort a seek table's seek points according to the format specification,
|
||||
* removing duplicates.
|
||||
@@ -1591,7 +1612,8 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_set_vendor_string(FLAC__
|
||||
/** Resize the comment array.
|
||||
*
|
||||
* If the size shrinks, elements will truncated; if it grows, new empty
|
||||
* fields will be added to the end.
|
||||
* fields will be added to the end. If this function returns false, the
|
||||
* object is left untouched.
|
||||
*
|
||||
* \param object A pointer to an existing VORBIS_COMMENT object.
|
||||
* \param new_num_comments The desired length of the array; may be \c 0.
|
||||
@@ -1603,7 +1625,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_set_vendor_string(FLAC__
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_resize_comments(FLAC__StreamMetadata *object, unsigned new_num_comments);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_resize_comments(FLAC__StreamMetadata *object, uint32_t new_num_comments);
|
||||
|
||||
/** Sets a comment in a VORBIS_COMMENT block.
|
||||
*
|
||||
@@ -1630,7 +1652,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_resize_comments(FLAC__St
|
||||
* \c false if memory allocation fails or \a entry does not comply with the
|
||||
* Vorbis comment specification, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_set_comment(FLAC__StreamMetadata *object, unsigned comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_set_comment(FLAC__StreamMetadata *object, uint32_t comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy);
|
||||
|
||||
/** Insert a comment in a VORBIS_COMMENT block at the given index.
|
||||
*
|
||||
@@ -1660,7 +1682,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_set_comment(FLAC__Stream
|
||||
* \c false if memory allocation fails or \a entry does not comply with the
|
||||
* Vorbis comment specification, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_insert_comment(FLAC__StreamMetadata *object, unsigned comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_insert_comment(FLAC__StreamMetadata *object, uint32_t comment_num, FLAC__StreamMetadata_VorbisComment_Entry entry, FLAC__bool copy);
|
||||
|
||||
/** Appends a comment to a VORBIS_COMMENT block.
|
||||
*
|
||||
@@ -1692,7 +1714,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_append_comment(FLAC__Str
|
||||
* For convenience, a trailing NUL is added to the entry if it doesn't have
|
||||
* one already.
|
||||
*
|
||||
* Depending on the the value of \a all, either all or just the first comment
|
||||
* Depending on the value of \a all, either all or just the first comment
|
||||
* whose field name(s) match the given entry's name will be replaced by the
|
||||
* given entry. If no comments match, \a entry will simply be appended.
|
||||
*
|
||||
@@ -1733,7 +1755,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_replace_comment(FLAC__St
|
||||
* \retval FLAC__bool
|
||||
* \c false if realloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_delete_comment(FLAC__StreamMetadata *object, unsigned comment_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_delete_comment(FLAC__StreamMetadata *object, uint32_t comment_num);
|
||||
|
||||
/** Creates a Vorbis comment entry from NUL-terminated name and value strings.
|
||||
*
|
||||
@@ -1789,7 +1811,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_entry_to_name_value_pair
|
||||
* \retval FLAC__bool
|
||||
* \c true if the field names match, else \c false
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_entry_matches(const FLAC__StreamMetadata_VorbisComment_Entry entry, const char *field_name, unsigned field_name_length);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_entry_matches(const FLAC__StreamMetadata_VorbisComment_Entry entry, const char *field_name, uint32_t field_name_length);
|
||||
|
||||
/** Find a Vorbis comment with the given field name.
|
||||
*
|
||||
@@ -1808,7 +1830,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_vorbiscomment_entry_matches(const FLAC
|
||||
* The offset in the comment array of the first comment whose field
|
||||
* name matches \a field_name, or \c -1 if no match was found.
|
||||
*/
|
||||
FLAC_API int FLAC__metadata_object_vorbiscomment_find_entry_from(const FLAC__StreamMetadata *object, unsigned offset, const char *field_name);
|
||||
FLAC_API int FLAC__metadata_object_vorbiscomment_find_entry_from(const FLAC__StreamMetadata *object, uint32_t offset, const char *field_name);
|
||||
|
||||
/** Remove first Vorbis comment matching the given field name.
|
||||
*
|
||||
@@ -1871,7 +1893,8 @@ FLAC_API void FLAC__metadata_object_cuesheet_track_delete(FLAC__StreamMetadata_C
|
||||
/** Resize a track's index point array.
|
||||
*
|
||||
* If the size shrinks, elements will truncated; if it grows, new blank
|
||||
* indices will be added to the end.
|
||||
* indices will be added to the end. If this function returns false, the
|
||||
* track object is left untouched.
|
||||
*
|
||||
* \param object A pointer to an existing CUESHEET object.
|
||||
* \param track_num The index of the track to modify. NOTE: this is not
|
||||
@@ -1886,7 +1909,7 @@ FLAC_API void FLAC__metadata_object_cuesheet_track_delete(FLAC__StreamMetadata_C
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation error, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_resize_indices(FLAC__StreamMetadata *object, unsigned track_num, unsigned new_num_indices);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_resize_indices(FLAC__StreamMetadata *object, uint32_t track_num, uint32_t new_num_indices);
|
||||
|
||||
/** Insert an index point in a CUESHEET track at the given index.
|
||||
*
|
||||
@@ -1909,7 +1932,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_resize_indices(FLAC__St
|
||||
* \retval FLAC__bool
|
||||
* \c false if realloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_index(FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num, FLAC__StreamMetadata_CueSheet_Index index);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_index(FLAC__StreamMetadata *object, uint32_t track_num, uint32_t index_num, FLAC__StreamMetadata_CueSheet_Index index);
|
||||
|
||||
/** Insert a blank index point in a CUESHEET track at the given index.
|
||||
*
|
||||
@@ -1933,7 +1956,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_index(FLAC__Stre
|
||||
* \retval FLAC__bool
|
||||
* \c false if realloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_blank_index(FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_blank_index(FLAC__StreamMetadata *object, uint32_t track_num, uint32_t index_num);
|
||||
|
||||
/** Delete an index point in a CUESHEET track at the given index.
|
||||
*
|
||||
@@ -1952,12 +1975,13 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_insert_blank_index(FLAC
|
||||
* \retval FLAC__bool
|
||||
* \c false if realloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_delete_index(FLAC__StreamMetadata *object, unsigned track_num, unsigned index_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_delete_index(FLAC__StreamMetadata *object, uint32_t track_num, uint32_t index_num);
|
||||
|
||||
/** Resize the track array.
|
||||
*
|
||||
* If the size shrinks, elements will truncated; if it grows, new blank
|
||||
* tracks will be added to the end.
|
||||
* tracks will be added to the end. If this function returns false, the
|
||||
* object is left untouched.
|
||||
*
|
||||
* \param object A pointer to an existing CUESHEET object.
|
||||
* \param new_num_tracks The desired length of the array; may be \c 0.
|
||||
@@ -1969,7 +1993,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_track_delete_index(FLAC__Stre
|
||||
* \retval FLAC__bool
|
||||
* \c false if memory allocation error, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_resize_tracks(FLAC__StreamMetadata *object, unsigned new_num_tracks);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_resize_tracks(FLAC__StreamMetadata *object, uint32_t new_num_tracks);
|
||||
|
||||
/** Sets a track in a CUESHEET block.
|
||||
*
|
||||
@@ -1991,7 +2015,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_resize_tracks(FLAC__StreamMet
|
||||
* \retval FLAC__bool
|
||||
* \c false if \a copy is \c true and malloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_set_track(FLAC__StreamMetadata *object, unsigned track_num, FLAC__StreamMetadata_CueSheet_Track *track, FLAC__bool copy);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_set_track(FLAC__StreamMetadata *object, uint32_t track_num, FLAC__StreamMetadata_CueSheet_Track *track, FLAC__bool copy);
|
||||
|
||||
/** Insert a track in a CUESHEET block at the given index.
|
||||
*
|
||||
@@ -2014,7 +2038,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_set_track(FLAC__StreamMetadat
|
||||
* \retval FLAC__bool
|
||||
* \c false if \a copy is \c true and malloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_track(FLAC__StreamMetadata *object, unsigned track_num, FLAC__StreamMetadata_CueSheet_Track *track, FLAC__bool copy);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_track(FLAC__StreamMetadata *object, uint32_t track_num, FLAC__StreamMetadata_CueSheet_Track *track, FLAC__bool copy);
|
||||
|
||||
/** Insert a blank track in a CUESHEET block at the given index.
|
||||
*
|
||||
@@ -2033,7 +2057,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_track(FLAC__StreamMeta
|
||||
* \retval FLAC__bool
|
||||
* \c false if \a copy is \c true and malloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_blank_track(FLAC__StreamMetadata *object, unsigned track_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_blank_track(FLAC__StreamMetadata *object, uint32_t track_num);
|
||||
|
||||
/** Delete a track in a CUESHEET block at the given index.
|
||||
*
|
||||
@@ -2048,7 +2072,7 @@ FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_insert_blank_track(FLAC__Stre
|
||||
* \retval FLAC__bool
|
||||
* \c false if realloc() fails, else \c true.
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_delete_track(FLAC__StreamMetadata *object, unsigned track_num);
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_cuesheet_delete_track(FLAC__StreamMetadata *object, uint32_t track_num);
|
||||
|
||||
/** Check a cue sheet to see if it conforms to the FLAC specification.
|
||||
* See the format specification for limits on the contents of the
|
||||
@@ -2173,6 +2197,34 @@ FLAC_API FLAC__bool FLAC__metadata_object_picture_set_data(FLAC__StreamMetadata
|
||||
*/
|
||||
FLAC_API FLAC__bool FLAC__metadata_object_picture_is_legal(const FLAC__StreamMetadata *object, const char **violation);
|
||||
|
||||
|
||||
/** Get the raw (binary) representation of a FLAC__StreamMetadata objeect.
|
||||
* After use, free() the returned buffer. The length of the buffer is
|
||||
* the length of the input metadata object plus 4 bytes for the header.
|
||||
*
|
||||
* \param object A pointer to metadata block to be converted.
|
||||
* \assert
|
||||
* \code object != NULL \endcode
|
||||
* \retval FLAC__byte*
|
||||
* \c NULL if there was an error, else a pointer to a buffer holding
|
||||
* the requested data.
|
||||
*/
|
||||
FLAC_API FLAC__byte * FLAC__metadata_object_get_raw(const FLAC__StreamMetadata *object);
|
||||
|
||||
|
||||
/** Turn a raw (binary) representation into a FLAC__StreamMetadata objeect.
|
||||
* The returned object must be deleted with FLAC__metadata_object_delete()
|
||||
* after use.
|
||||
*
|
||||
* \param buffer A pointer to a buffer containing a binary representation
|
||||
* to be converted to a FLAC__StreamMetadata object
|
||||
* \param length The length of the supplied buffer
|
||||
* \retval FLAC__StreamMetadata*
|
||||
* \c NULL if there was an error, else a pointer to a FLAC__StreamMetadata
|
||||
* holding the requested data.
|
||||
*/
|
||||
|
||||
FLAC_API FLAC__StreamMetadata * FLAC__metadata_object_set_raw(FLAC__byte *buffer, FLAC__uint32 length);
|
||||
/* \} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
Reference in New Issue
Block a user