Signature for the EOF callback.
Signature for the error callback.
Signature for the length callback.
Signature for the metadata callback.
Signature for the read callback.
Signature for the seek callback.
Signature for the tell callback.
Signature for the write callback.
Possible values passed back to the FLAC__StreamDecoder error callback. \c FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC is the generic catch- all. The rest could be caused by bad sync (false synchronization on data that is not the start of a frame) or corrupted data. The error itself is the decoder's best guess at what happened assuming a correct sync. For example \c FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER could be caused by a correct sync on the start of a frame, but some data in the frame header was corrupted. Or it could be the result of syncing on a point the stream that looked like the starting of a frame but was not. \c FLAC__STREAM_DECODER_ERROR_STATUS_UNPARSEABLE_STREAM could be because the decoder encountered a valid frame made by a future version of the encoder which it cannot parse, or because of a false sync making it appear as though an encountered frame was generated by a future encoder.
Possible return values for the FLAC__stream_decoder_init_*() functions.
Return values for the FLAC__StreamDecoder length callback.
Return values for the FLAC__StreamDecoder read callback.
Return values for the FLAC__StreamDecoder seek callback.
State values for a FLAC__StreamDecoder
Return values for the FLAC__StreamDecoder tell callback.
Return values for the FLAC__StreamDecoder write callback.
Free a decoder instance. Deletes the object pointed to by \a decoder.
Finish the decoding process. Flushes the decoding buffer, releases resources, resets the decoder settings to their defaults, and returns the decoder state to FLAC__STREAM_DECODER_UNINITIALIZED.
Flush the stream input. The decoder's input buffer will be cleared and the state set to \c FLAC__STREAM_DECODER_SEARCH_FOR_FRAME_SYNC. This will also turn off MD5 checking.
Get the current sample resolution in the stream being decoded. Will only be valid after decoding has started and will contain the value from the most recently decoded frame header.
Get the current blocksize of the stream being decoded. Will only be valid after decoding has started and will contain the value from the most recently decoded frame header.
Get the current channel assignment in the stream being decoded. Will only be valid after decoding has started and will contain the value from the most recently decoded frame header.
Get the current number of channels in the stream being decoded. Will only be valid after decoding has started and will contain the value from the most recently decoded frame header.
Returns the decoder's current read position within the stream. The position is the byte offset from the start of the stream. Bytes before this position have been fully decoded. Note that there may still be undecoded bytes in the decoder's read FIFO. The returned position is correct even after a seek.
Get the "MD5 signature checking" flag. This is the value of the setting, not whether or not the decoder is currently checking the MD5 (remember, it can be turned off automatically by a seek). When the decoder is reset the flag will be restored to the value returned by this function.
Get the current decoder state as a C string.
Get the current sample rate in Hz of the stream being decoded. Will only be valid after decoding has started and will contain the value from the most recently decoded frame header.
Get the current decoder state.
Get the total number of samples in the stream being decoded. Will only be valid after decoding has started and will contain the value from the \c STREAMINFO block. A value of \c 0 means "unknown".
Initialize the decoder instance to decode native FLAC files.
Initialize the decoder instance to decode native FLAC files.
Initialize the decoder instance to decode Ogg FLAC files.
Initialize the decoder instance to decode Ogg FLAC files.
Initialize the decoder instance to decode Ogg FLAC streams.
Initialize the decoder instance to decode native FLAC streams.
Create a new stream decoder instance. The instance is created with default settings; see the individual FLAC__stream_decoder_set_*() functions for each setting's default.
Decode one metadata block or audio frame. This version instructs the decoder to decode a either a single metadata block or a single frame and stop, unless the callbacks return a fatal error or the read callback returns \c FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM.
Decode until the end of the metadata. This version instructs the decoder to decode from the current position and continue until all the metadata has been read, or until the callbacks return a fatal error or the read callback returns \c FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM.
Decode until the end of the stream. This version instructs the decoder to decode from the current position and continue until the end of stream (the read callback returns \c FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM), or until the callbacks return a fatal error.
Reset the decoding process. The decoder's input buffer will be cleared and the state set to \c FLAC__STREAM_DECODER_SEARCH_FOR_METADATA. This is similar to FLAC__stream_decoder_finish() except that the settings are preserved; there is no need to call FLAC__stream_decoder_init_*() before decoding again. MD5 checking will be restored to its original setting.
Flush the input and seek to an absolute sample. Decoding will resume at the given sample. Note that because of this, the next write callback may contain a partial block. The client must support seeking the input or this function will fail and return \c false. Furthermore, if the decoder state is \c FLAC__STREAM_DECODER_SEEK_ERROR, then the decoder must be flushed with FLAC__stream_decoder_flush() or reset with FLAC__stream_decoder_reset() before decoding can continue.
Set the "MD5 signature checking" flag. If \c true, the decoder will compute the MD5 signature of the unencoded audio data while decoding and compare it to the signature from the STREAMINFO block, if it exists, during FLAC__stream_decoder_finish().
Direct the decoder to filter out all metadata blocks of type \a type.
Direct the decoder to filter out all metadata blocks of any type.
Direct the decoder to filter out all APPLICATION metadata blocks of the given \a id.
Direct the decoder to pass on all metadata blocks of type \a type.
Direct the decoder to pass on all metadata blocks of any type.
Direct the decoder to pass on all APPLICATION metadata blocks of the given \a id.
Set the serial number for the FLAC stream within the Ogg container. The default behavior is to use the serial number of the first Ogg page. Setting a serial number here will explicitly specify which stream is to be decoded.
Skip one audio frame. This version instructs the decoder to 'skip' a single frame and stop, unless the callbacks return a fatal error or the read callback returns \c FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM.
Maps a FLAC__StreamDecoderErrorStatus to a C string.
Maps a FLAC__StreamDecoderInitStatus to a C string.
Maps a FLAC__StreamDecoderLengthStatus to a C string.
Maps a FLAC__StreamDecoderReadStatus to a C string.
Maps a FLAC__StreamDecoderSeekStatus to a C string.
Maps a FLAC__StreamDecoderState to a C string.
Maps a FLAC__StreamDecoderTellStatus to a C string.
Maps a FLAC__StreamDecoderWriteStatus to a C string.
The opaque structure definition for the stream decoder type. See the \link flac_stream_decoder stream decoder module \endlink for a detailed description.
class FLAC__StreamDecoder