Main Page Modules Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# include/FLAC/stream_decoder.h File Reference

This module contains the functions which implement the stream decoder. More...

`#include "export.h"`
`#include "format.h"`

Go to the source code of this file.

## Compounds

struct | FLAC__StreamDecoder

## Typedefs

typedef FLAC__StreamDecoderReadStatus(* | FLAC__StreamDecoderReadCallback )(const FLAC__StreamDecoder *decoder, FLAC__byte buffer[], unsigned *bytes, void *client_data)
typedef FLAC__StreamDecoderWriteStatus(* | FLAC__StreamDecoderWriteCallback )(const FLAC__StreamDecoder *decoder, const FLAC__Frame *frame, const FLAC__int32 *const buffer[], void *client_data)
typedef void(* | FLAC__StreamDecoderMetadataCallback )(const FLAC__StreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data)
typedef void(* | FLAC__StreamDecoderErrorCallback )(const FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data)

## Enumerations

enum

FLAC__StreamDecoderState {
FLAC__STREAM_DECODER_SEARCH_FOR_METADATA = 0, FLAC__STREAM_DECODER_READ_METADATA, FLAC__STREAM_DECODER_SEARCH_FOR_FRAME_SYNC, FLAC__STREAM_DECODER_READ_FRAME,
FLAC__STREAM_DECODER_END_OF_STREAM, FLAC__STREAM_DECODER_ABORTED, FLAC__STREAM_DECODER_UNPARSEABLE_STREAM, FLAC__STREAM_DECODER_MEMORY_ALLOCATION_ERROR,
FLAC__STREAM_DECODER_ALREADY_INITIALIZED, FLAC__STREAM_DECODER_INVALID_CALLBACK, FLAC__STREAM_DECODER_UNINITIALIZED
}

enum | FLAC__StreamDecoderReadStatus { FLAC__STREAM_DECODER_READ_STATUS_CONTINUE, FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM, FLAC__STREAM_DECODER_READ_STATUS_ABORT }
enum | FLAC__StreamDecoderWriteStatus { FLAC__STREAM_DECODER_WRITE_STATUS_CONTINUE, FLAC__STREAM_DECODER_WRITE_STATUS_ABORT }
enum | FLAC__StreamDecoderErrorStatus { FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC, FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER, FLAC__STREAM_DECODER_ERROR_STATUS_FRAME_CRC_MISMATCH }

## Functions

FLAC__StreamDecoder * | FLAC__stream_decoder_new ()
void | FLAC__stream_decoder_delete (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_set_read_callback (FLAC__StreamDecoder *decoder, FLAC__StreamDecoderReadCallback value)
FLAC__bool | FLAC__stream_decoder_set_write_callback (FLAC__StreamDecoder *decoder, FLAC__StreamDecoderWriteCallback value)
FLAC__bool | FLAC__stream_decoder_set_metadata_callback (FLAC__StreamDecoder *decoder, FLAC__StreamDecoderMetadataCallback value)
FLAC__bool | FLAC__stream_decoder_set_error_callback (FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorCallback value)
FLAC__bool | FLAC__stream_decoder_set_client_data (FLAC__StreamDecoder *decoder, void *value)
FLAC__bool | FLAC__stream_decoder_set_metadata_respond (FLAC__StreamDecoder *decoder, FLAC__MetadataType type)
FLAC__bool | FLAC__stream_decoder_set_metadata_respond_application (FLAC__StreamDecoder *decoder, const FLAC__byte id[4])
FLAC__bool | FLAC__stream_decoder_set_metadata_respond_all (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_set_metadata_ignore (FLAC__StreamDecoder *decoder, FLAC__MetadataType type)
FLAC__bool | FLAC__stream_decoder_set_metadata_ignore_application (FLAC__StreamDecoder *decoder, const FLAC__byte id[4])
FLAC__bool | FLAC__stream_decoder_set_metadata_ignore_all (FLAC__StreamDecoder *decoder)
FLAC__StreamDecoderState | FLAC__stream_decoder_get_state (const FLAC__StreamDecoder *decoder)
unsigned | FLAC__stream_decoder_get_channels (const FLAC__StreamDecoder *decoder)
FLAC__ChannelAssignment | FLAC__stream_decoder_get_channel_assignment (const FLAC__StreamDecoder *decoder)
unsigned | FLAC__stream_decoder_get_bits_per_sample (const FLAC__StreamDecoder *decoder)
unsigned | FLAC__stream_decoder_get_sample_rate (const FLAC__StreamDecoder *decoder)
unsigned | FLAC__stream_decoder_get_blocksize (const FLAC__StreamDecoder *decoder)
FLAC__StreamDecoderState | FLAC__stream_decoder_init (FLAC__StreamDecoder *decoder)
void | FLAC__stream_decoder_finish (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_flush (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_reset (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_process_single (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_process_until_end_of_metadata (FLAC__StreamDecoder *decoder)
FLAC__bool | FLAC__stream_decoder_process_until_end_of_stream (FLAC__StreamDecoder *decoder)

## Variables

const char *const | FLAC__StreamDecoderStateString []
const char *const | FLAC__StreamDecoderReadStatusString []
const char *const | FLAC__StreamDecoderWriteStatusString []
const char *const | FLAC__StreamDecoderErrorStatusString []

## Detailed Description

This module contains the functions which implement the stream decoder.

See the detailed documentation in the stream decoder module.