OggFLAC/seekable_stream_encoder.h: seekable stream encoder interface

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

# OggFLAC/seekable_stream_encoder.h: seekable stream encoder interface
[OggFLAC/_encoder.h: encoder interfaces]

This module contains the functions which implement the seekable stream encoder. The Ogg seekable stream encoder is derived from the FLAC seekable stream encoder. More...

## Compounds

struct | OggFLAC__SeekableStreamEncoder

## Typedefs

typedef OggFLAC__SeekableStreamEncoderReadStatus(* | OggFLAC__SeekableStreamEncoderReadCallback )(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__byte buffer[], unsigned *bytes, void *client_data)
typedef FLAC__SeekableStreamEncoderSeekStatus(* | OggFLAC__SeekableStreamEncoderSeekCallback )(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data)
typedef FLAC__SeekableStreamEncoderTellStatus(* | OggFLAC__SeekableStreamEncoderTellCallback )(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
typedef FLAC__StreamEncoderWriteStatus(* | OggFLAC__SeekableStreamEncoderWriteCallback )(const OggFLAC__SeekableStreamEncoder *encoder, const FLAC__byte buffer[], unsigned bytes, unsigned samples, unsigned current_frame, void *client_data)

## Enumerations

enum

OggFLAC__SeekableStreamEncoderState {
OggFLAC__SEEKABLE_STREAM_ENCODER_OK = 0, OggFLAC__SEEKABLE_STREAM_ENCODER_OGG_ERROR, OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR, OggFLAC__SEEKABLE_STREAM_ENCODER_MEMORY_ALLOCATION_ERROR,
OggFLAC__SEEKABLE_STREAM_ENCODER_WRITE_ERROR, OggFLAC__SEEKABLE_STREAM_ENCODER_READ_ERROR, OggFLAC__SEEKABLE_STREAM_ENCODER_SEEK_ERROR, OggFLAC__SEEKABLE_STREAM_ENCODER_TELL_ERROR,
OggFLAC__SEEKABLE_STREAM_ENCODER_ALREADY_INITIALIZED, OggFLAC__SEEKABLE_STREAM_ENCODER_INVALID_CALLBACK, OggFLAC__SEEKABLE_STREAM_ENCODER_INVALID_SEEKTABLE, OggFLAC__SEEKABLE_STREAM_ENCODER_UNINITIALIZED
}

enum | OggFLAC__SeekableStreamEncoderReadStatus { OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_CONTINUE, OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_END_OF_STREAM, OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_ABORT }

## Functions

OggFLAC_API OggFLAC__SeekableStreamEncoder * | OggFLAC__seekable_stream_encoder_new ()
OggFLAC_API void | OggFLAC__seekable_stream_encoder_delete (OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_serial_number (OggFLAC__SeekableStreamEncoder *encoder, long serial_number)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_verify (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_streamable_subset (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_do_mid_side_stereo (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_loose_mid_side_stereo (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_channels (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_bits_per_sample (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_sample_rate (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_blocksize (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_max_lpc_order (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_qlp_coeff_precision (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_do_qlp_coeff_prec_search (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_do_escape_coding (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_do_exhaustive_model_search (OggFLAC__SeekableStreamEncoder *encoder, FLAC__bool value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_min_residual_partition_order (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_max_residual_partition_order (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_rice_parameter_search_dist (OggFLAC__SeekableStreamEncoder *encoder, unsigned value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_total_samples_estimate (OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_metadata (OggFLAC__SeekableStreamEncoder *encoder, FLAC__StreamMetadata **metadata, unsigned num_blocks)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_read_callback (OggFLAC__SeekableStreamEncoder *encoder, OggFLAC__SeekableStreamEncoderReadCallback value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_seek_callback (OggFLAC__SeekableStreamEncoder *encoder, OggFLAC__SeekableStreamEncoderSeekCallback value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_tell_callback (OggFLAC__SeekableStreamEncoder *encoder, OggFLAC__SeekableStreamEncoderTellCallback value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_write_callback (OggFLAC__SeekableStreamEncoder *encoder, OggFLAC__SeekableStreamEncoderWriteCallback value)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_set_client_data (OggFLAC__SeekableStreamEncoder *encoder, void *value)
OggFLAC_API OggFLAC__SeekableStreamEncoderState | OggFLAC__seekable_stream_encoder_get_state (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__StreamEncoderState | OggFLAC__seekable_stream_encoder_get_FLAC_stream_encoder_state (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__StreamDecoderState | OggFLAC__seekable_stream_encoder_get_verify_decoder_state (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API const char * | OggFLAC__seekable_stream_encoder_get_resolved_state_string (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API void | OggFLAC__seekable_stream_encoder_get_verify_decoder_error_stats (const OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 *absolute_sample, unsigned *frame_number, unsigned *channel, unsigned *sample, FLAC__int32 *expected, FLAC__int32 *got)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_verify (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_streamable_subset (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_do_mid_side_stereo (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_loose_mid_side_stereo (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_channels (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_bits_per_sample (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_sample_rate (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_blocksize (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_max_lpc_order (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_qlp_coeff_precision (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_do_qlp_coeff_prec_search (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_do_escape_coding (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_get_do_exhaustive_model_search (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_min_residual_partition_order (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_max_residual_partition_order (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API unsigned | OggFLAC__seekable_stream_encoder_get_rice_parameter_search_dist (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__uint64 | OggFLAC__seekable_stream_encoder_get_total_samples_estimate (const OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API OggFLAC__SeekableStreamEncoderState | OggFLAC__seekable_stream_encoder_init (OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API void | OggFLAC__seekable_stream_encoder_finish (OggFLAC__SeekableStreamEncoder *encoder)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_process (OggFLAC__SeekableStreamEncoder *encoder, const FLAC__int32 *const buffer[], unsigned samples)
OggFLAC_API FLAC__bool | OggFLAC__seekable_stream_encoder_process_interleaved (OggFLAC__SeekableStreamEncoder *encoder, const FLAC__int32 buffer[], unsigned samples)

## Variables

OggFLAC_API const char *const | OggFLAC__SeekableStreamEncoderStateString []
OggFLAC_API const char *const | OggFLAC__SeekableStreamEncoderReadStatusString []

## Detailed Description

This module contains the functions which implement the seekable stream encoder. The Ogg seekable stream encoder is derived from the FLAC seekable stream encoder.

The interface here is nearly identical to FLAC's seekable stream encoder, including the callbacks, with the addition of a new required read callback (needed when writing back STREAMINFO after encoding) and OggFLAC__seekable_stream_encoder_set_serial_number(). See the FLAC seekable stream encoder module for full documentation.

## Typedef Documentation

typedef OggFLAC__SeekableStreamEncoderReadStatus(* OggFLAC__SeekableStreamEncoderReadCallback)(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__byte buffer[], unsigned *bytes, void *client_data)

Signature for the read callback. See OggFLAC__seekable_stream_encoder_set_read_callback() for more info.

Parameters:

  encoder | The encoder instance calling the callback.
  buffer | A pointer to a location for the callee to store data to be encoded.
  bytes | A pointer to the size of the buffer. On entry to the callback, it contains the maximum number of bytes that may be stored in buffer. The callee must set it to the actual number of bytes stored (0 in case of error or end-of-stream) before returning.
  client_data | The callee's client data set through OggFLAC__seekable_stream_encoder_set_client_data().

Return values:

  OggFLAC__SeekableStreamEncoderReadStatus | The callee's return status.

typedef FLAC__SeekableStreamEncoderSeekStatus(* OggFLAC__SeekableStreamEncoderSeekCallback)(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data)

Signature for the seek callback. See OggFLAC__seekable_stream_encoder_set_seek_callback() and FLAC__SeekableStreamEncoderSeekCallback for more info.

Parameters:

  encoder | The encoder instance calling the callback.
  absolute_byte_offset | The offset from the beginning of the stream to seek to.
  client_data | The callee's client data set through OggFLAC__seekable_stream_encoder_set_client_data().

Return values:

  FLAC__SeekableStreamEncoderSeekStatus | The callee's return status.

typedef FLAC__SeekableStreamEncoderTellStatus(* OggFLAC__SeekableStreamEncoderTellCallback)(const OggFLAC__SeekableStreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data)

Signature for the tell callback. See OggFLAC__seekable_stream_encoder_set_tell_callback() and FLAC__SeekableStreamEncoderTellCallback for more info.

Parameters:

  encoder | The encoder instance calling the callback.
  absolute_byte_offset | The address at which to store the current position of the output.
  client_data | The callee's client data set through OggFLAC__seekable_stream_encoder_set_client_data().

Return values:

  FLAC__SeekableStreamEncoderTellStatus | The callee's return status.

typedef FLAC__StreamEncoderWriteStatus(* OggFLAC__SeekableStreamEncoderWriteCallback)(const OggFLAC__SeekableStreamEncoder *encoder, const FLAC__byte buffer[], unsigned bytes, unsigned samples, unsigned current_frame, void *client_data)

Signature for the write callback. See OggFLAC__seekable_stream_encoder_set_write_callback() and FLAC__SeekableStreamEncoderWriteCallback for more info.

Parameters:

  encoder | The encoder instance calling the callback.
  buffer | An array of encoded data of length bytes.
  bytes | The byte length of buffer.
  samples | The number of samples encoded by buffer. `0` has a special meaning; see OggFLAC__seekable_stream_encoder_set_write_callback().
  current_frame | The number of current frame being encoded.
  client_data | The callee's client data set through OggFLAC__seekable_stream_encoder_set_client_data().

Return values:

  FLAC__StreamEncoderWriteStatus | The callee's return status.

## Enumeration Type Documentation

enum OggFLAC__SeekableStreamEncoderState

State values for an OggFLAC__SeekableStreamEncoder

The encoder's state can be obtained by calling OggFLAC__stream_encoder_get_state().

Enumeration values:

  OggFLAC__SEEKABLE_STREAM_ENCODER_OK | The encoder is in the normal OK state.
  OggFLAC__SEEKABLE_STREAM_ENCODER_OGG_ERROR | An error occurred in the underlying Ogg layer.
  OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR | An error occurred in the underlying FLAC stream encoder; check OggFLAC__seekable_stream_encoder_get_FLAC_stream_encoder_state().
  OggFLAC__SEEKABLE_STREAM_ENCODER_MEMORY_ALLOCATION_ERROR | Memory allocation failed.
  OggFLAC__SEEKABLE_STREAM_ENCODER_WRITE_ERROR | The write callback returned an error.
  OggFLAC__SEEKABLE_STREAM_ENCODER_READ_ERROR | The read callback returned an error.
  OggFLAC__SEEKABLE_STREAM_ENCODER_SEEK_ERROR | The seek callback returned an error.
  OggFLAC__SEEKABLE_STREAM_ENCODER_TELL_ERROR | The tell callback returned an error.
  OggFLAC__SEEKABLE_STREAM_ENCODER_ALREADY_INITIALIZED | OggFLAC__seekable_stream_encoder_init() was called when the encoder was already initialized, usually because OggFLAC__seekable_stream_encoder_finish() was not called.
  OggFLAC__SEEKABLE_STREAM_ENCODER_INVALID_CALLBACK | OggFLAC__seekable_stream_encoder_init() was called without all callbacks being set.
  OggFLAC__SEEKABLE_STREAM_ENCODER_INVALID_SEEKTABLE | An invalid seek table was passed is the metadata to OggFLAC__seekable_stream_encoder_set_metadata().
  OggFLAC__SEEKABLE_STREAM_ENCODER_UNINITIALIZED | The encoder is in the uninitialized state.

enum OggFLAC__SeekableStreamEncoderReadStatus

Return values for the OggFLAC__SeekableStreamEncoder read callback.

Enumeration values:

  OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_CONTINUE | The read was OK and decoding can continue.
  OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_END_OF_STREAM | The read was attempted at the end of the stream.
  OggFLAC__SEEKABLE_STREAM_ENCODER_READ_STATUS_ABORT | An unrecoverable error occurred.

## Function Documentation

OggFLAC_API OggFLAC__SeekableStreamEncoder* OggFLAC__seekable_stream_encoder_new | ( |  | ) |

Create a new seekable stream encoder instance. The instance is created with default settings; see the individual OggFLAC__seekable_stream_encoder_set_*() functions for each setting's default.

Return values:

  OggFLAC__SeekableStreamEncoder | * `NULL` if there was an error allocating memory, else the new instance.

OggFLAC_API void OggFLAC__seekable_stream_encoder_delete | ( | OggFLAC__SeekableStreamEncoder * | encoder | ) |

Free an encoder instance. Deletes the object pointed to by encoder.

Parameters:

  encoder | A pointer to an existing encoder.

Assertions:

      encoder != NULL

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_serial_number | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | long | serial_number
| ) |

Set the serial number for the FLAC stream.

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  serial_number | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_verify | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_verify()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | Flag value (see above).

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_streamable_subset | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_streamable_subset()

Default Value:
  `true`

Parameters:

  encoder | An encoder instance to set.
  value | Flag value (see above).

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_do_mid_side_stereo | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_do_mid_side_stereo()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | Flag value (see above).

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_loose_mid_side_stereo | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_loose_mid_side_stereo()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | Flag value (see above).

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_channels | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_channels()

Default Value:
  `2`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_bits_per_sample | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_bits_per_sample()

Default Value:
  `16`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_sample_rate | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_sample_rate()

Default Value:
  `44100`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_blocksize | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_blocksize()

Default Value:
  `1152`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_max_lpc_order | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_max_lpc_order()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_qlp_coeff_precision | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_qlp_coeff_precision()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_do_qlp_coeff_prec_search | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_qlp_coeff_prec_search()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_do_escape_coding | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_do_escape_coding()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_do_exhaustive_model_search | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__bool | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_do_exhaustive_model_search()

Default Value:
  `false`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_min_residual_partition_order | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_min_residual_partition_order()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_max_residual_partition_order | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_max_residual_partition_order()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_rice_parameter_search_dist | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | unsigned | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_rice_parameter_search_dist()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_total_samples_estimate | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__uint64 | value
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_total_samples_estimate()

Default Value:
  `0`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_metadata | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__StreamMetadata ** | metadata,
|  | unsigned | num_blocks
| ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_metadata()

Note:
  The Ogg FLAC mapping requires that the VORBIS_COMMENT block be the second metadata block of the stream. The encoder already supplies the STREAMINFO block automatically. If metadata does not contain a VORBIS_COMMENT block, the encoder will supply that too. Otherwise, if metadata does contain a VORBIS_COMMENT block and it is not the first, this function will reorder metadata by moving the VORBIS_COMMENT block to the front; the relative ordering of the other blocks will remain as they were.

Note:
  The Ogg FLAC mapping limits the number of metadata blocks per stream to `65535`. If num_blocks exceeds this the function will return `false`.

Default Value:
  `NULL`, 0

Parameters:

  encoder | An encoder instance to set.
  metadata | See above.
  num_blocks | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, or if num_blocks > 65535, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_read_callback | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | OggFLAC__SeekableStreamEncoderReadCallback | value
| ) |

Set the read callback. The supplied function will be called when the encoder needs to read back encoded data. This happens during the metadata callback, when the encoder has to read, modify, and rewrite the metadata (e.g. seekpoints) gathered while encoding. The address of the buffer to be filled is supplied, along with the number of bytes the buffer can hold. The callback may choose to supply less data and modify the byte count but must be careful not to overflow the buffer. The callback then returns a status code chosen from OggFLAC__SeekableStreamEncoderReadStatus.

Note:
  The callback is mandatory and must be set before initialization.

Default Value:
  `NULL`

Parameters:

  encoder | A encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

      value != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_seek_callback | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | OggFLAC__SeekableStreamEncoderSeekCallback | value
| ) |

Set the seek callback. The supplied function will be called when the encoder needs to seek the output stream. The encoder will pass the absolute byte offset to seek to, 0 meaning the beginning of the stream.

Note:
  The callback is mandatory and must be set before initialization.

Default Value:
  `NULL`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

      value != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_tell_callback | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | OggFLAC__SeekableStreamEncoderTellCallback | value
| ) |

Set the tell callback. The supplied function will be called when the encoder needs to know the current position of the output stream.

Note:
  The callback is mandatory and must be set before initialization.

Default Value:
  `NULL`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

      value != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_write_callback | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | OggFLAC__SeekableStreamEncoderWriteCallback | value
| ) |

Set the write callback. This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_set_write_callback().

Note:
  Unlike the FLAC seekable stream encoder write callback, the Ogg seekable stream encoder write callback will be called twice when writing audio frames; once for the page header, and once for the page body. When writing the page header, the samples argument to the write callback will be `0`.

Note:
  The callback is mandatory and must be set before initialization.

Default Value:
  `NULL`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

      value != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_set_client_data | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | void * | value
| ) |

Set the client data to be passed back to callbacks. This value will be supplied to callbacks in their client_data argument.

Default Value:
  `NULL`

Parameters:

  encoder | An encoder instance to set.
  value | See above.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | `false` if the encoder is already initialized, else `true`.

OggFLAC_API OggFLAC__SeekableStreamEncoderState OggFLAC__seekable_stream_encoder_get_state | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

Get the current encoder state.

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  OggFLAC__SeekableStreamEncoderState | The current encoder state.

OggFLAC_API FLAC__StreamEncoderState OggFLAC__seekable_stream_encoder_get_FLAC_stream_encoder_state | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

Get the state of the underlying FLAC stream encoder. Useful when the seekable stream encoder state is `OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR`.

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__StreamEncoderState | The FLAC stream encoder state.

OggFLAC_API FLAC__StreamDecoderState OggFLAC__seekable_stream_encoder_get_verify_decoder_state | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

Get the state of the underlying FLAC encoder's verify decoder. Useful when the seekable stream encoder state is `OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR` and the FLAC stream encoder state is `FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR`.

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__StreamDecoderState | The FLAC verify decoder state.

OggFLAC_API const char* OggFLAC__seekable_stream_encoder_get_resolved_state_string | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

Get the current encoder state as a C string. This version automatically resolves `OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR` by getting the FLAC stream encoder's resolved state.

Parameters:

  encoder | A encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  const | char * The encoder state as a C string. Do not modify the contents.

OggFLAC_API void OggFLAC__seekable_stream_encoder_get_verify_decoder_error_stats | ( | const OggFLAC__SeekableStreamEncoder * | encoder,
|  | FLAC__uint64 * | absolute_sample,
|  | unsigned * | frame_number,
|  | unsigned * | channel,
|  | unsigned * | sample,
|  | FLAC__int32 * | expected,
|  | FLAC__int32 * | got
| ) |

Get relevant values about the nature of a verify decoder error. Inherited from FLAC__stream_encoder_get_verify_decoder_error_stats(). Useful when the seekable stream encoder state is `OggFLAC__SEEKABLE_STREAM_ENCODER_FLAC_STREAM_ENCODER_ERROR` and the FLAC stream encoder state is `FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR`.

Parameters:

  encoder | An encoder instance to query.
  absolute_sample | The absolute sample number of the mismatch.
  frame_number | The number of the frame in which the mismatch occurred.
  channel | The channel in which the mismatch occurred.
  sample | The number of the sample (relative to the frame) in which the mismatch occurred.
  expected | The expected value for the sample in question.
  got | The actual value returned by the decoder.

Assertions:

      encoder != NULL

      absolute_sample != NULL

      frame_number != NULL

      channel != NULL

      sample != NULL

      expected != NULL

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_verify | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_verify()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_verify().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_streamable_subset | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_streamable_subset()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_streamable_subset().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_do_mid_side_stereo | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_do_mid_side_stereo()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_get_do_mid_side_stereo().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_loose_mid_side_stereo | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_loose_mid_side_stereo()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_loose_mid_side_stereo().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_channels | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_channels()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_channels().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_bits_per_sample | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_bits_per_sample()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_bits_per_sample().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_sample_rate | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_sample_rate()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_sample_rate().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_blocksize | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_blocksize()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_blocksize().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_max_lpc_order | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_max_lpc_order()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_max_lpc_order().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_qlp_coeff_precision | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_qlp_coeff_precision()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_qlp_coeff_precision().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_do_qlp_coeff_prec_search | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_do_qlp_coeff_prec_search()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_do_qlp_coeff_prec_search().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_do_escape_coding | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_do_escape_coding()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_do_escape_coding().

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_get_do_exhaustive_model_search | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_do_exhaustive_model_search()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  FLAC__bool | See OggFLAC__seekable_stream_encoder_set_do_exhaustive_model_search().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_min_residual_partition_order | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_min_residual_partition_order()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_min_residual_partition_order().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_max_residual_partition_order | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_man_residual_partition_order()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_max_residual_partition_order().

OggFLAC_API unsigned OggFLAC__seekable_stream_encoder_get_rice_parameter_search_dist | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_rice_parameter_search_dist()

Parameters:

  encoder | An encoder instance to query.

Assertions:

      encoder != NULL

Return values:

  unsigned | See OggFLAC__seekable_stream_encoder_set_rice_parameter_search_dist().

OggFLAC_API FLAC__uint64 OggFLAC__seekable_stream_encoder_get_total_samples_estimate | ( | const OggFLAC__SeekableStreamEncoder * | encoder | ) |

This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_get_total_samples_estimate()

Parameters:

  encoder | An encoder instance to set.

Assertions:

      encoder != NULL

Return values:

  FLAC__uint64 | See OggFLAC__seekable_stream_encoder_get_total_samples_estimate().

OggFLAC_API OggFLAC__SeekableStreamEncoderState OggFLAC__seekable_stream_encoder_init | ( | OggFLAC__SeekableStreamEncoder * | encoder | ) |

Initialize the encoder instance. Should be called after OggFLAC__seekable_stream_encoder_new() and OggFLAC__seekable_stream_encoder_set_*() but before OggFLAC__seekable_stream_encoder_process() or OggFLAC__seekable_stream_encoder_process_interleaved(). Will set and return the encoder state, which will be OggFLAC__SEEKABLE_STREAM_ENCODER_OK if initialization succeeded.

The call to OggFLAC__seekable_stream_encoder_init() currently will also immediately call the write callback several times, once with the `fLaC` signature, and once for each encoded metadata block.

Parameters:

  encoder | An uninitialized encoder instance.

Assertions:

      encoder != NULL

Return values:

  OggFLAC__SeekableStreamEncoderState | `OggFLAC__SEEKABLE_STREAM_ENCODER_OK` if initialization was successful; see OggFLAC__SeekableStreamEncoderState for the meanings of other return values.

OggFLAC_API void OggFLAC__seekable_stream_encoder_finish | ( | OggFLAC__SeekableStreamEncoder * | encoder | ) |

Finish the encoding process. Flushes the encoding buffer, releases resources, resets the encoder settings to their defaults, and returns the encoder state to OggFLAC__SEEKABLE_STREAM_ENCODER_UNINITIALIZED. Note that this can generate one or more write callbacks before returning.

In the event of a prematurely-terminated encode, it is not strictly necessary to call this immediately before OggFLAC__seekable_stream_encoder_delete() but it is good practice to match every OggFLAC__seekable_stream_encoder_init() with an OggFLAC__seekable_stream_encoder_finish().

Parameters:

  encoder | An uninitialized encoder instance.

Assertions:

      encoder != NULL

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_process | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | const FLAC__int32 *const | buffer[],
|  | unsigned | samples
| ) |

Submit data for encoding. This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_process().

Parameters:

  encoder | An initialized encoder instance in the OK state.
  buffer | An array of pointers to each channel's signal.
  samples | The number of samples in one channel.

Assertions:

      encoder != NULL

      OggFLAC__seekable_stream_encoder_get_state(encoder) == OggFLAC__SEEKABLE_STREAM_ENCODER_OK

Return values:

  FLAC__bool | `true` if successful, else `false`; in this case, check the encoder state with OggFLAC__seekable_stream_encoder_get_state() to see what went wrong.

OggFLAC_API FLAC__bool OggFLAC__seekable_stream_encoder_process_interleaved | ( | OggFLAC__SeekableStreamEncoder * | encoder,
|  | const FLAC__int32 | buffer[],
|  | unsigned | samples
| ) |

Submit data for encoding. This is inherited from FLAC__StreamEncoder; see FLAC__stream_encoder_process_interleaved().

Parameters:

  encoder | An initialized encoder instance in the OK state.
  buffer | An array of channel-interleaved data (see above).
  samples | The number of samples in one channel, the same as for OggFLAC__seekable_stream_encoder_process(). For example, if encoding two channels, `1000` samples corresponds to a buffer of 2000 values.

Assertions:

      encoder != NULL

      OggFLAC__seekable_stream_encoder_get_state(encoder) == OggFLAC__SEEKABLE_STREAM_ENCODER_OK

Return values:

  FLAC__bool | `true` if successful, else `false`; in this case, check the encoder state with OggFLAC__seekable_stream_encoder_get_state() to see what went wrong.

## Variable Documentation

OggFLAC_API const char* const OggFLAC__SeekableStreamEncoderStateString[]

| Maps an OggFLAC__StreamEncoderState to a C string. Using an OggFLAC__StreamEncoderState as the index to this array will give the string equivalent. The contents should not be modified.

OggFLAC_API const char* const OggFLAC__SeekableStreamEncoderReadStatusString[]

| Maps a OggFLAC__SeekableStreamEncoderReadStatus to a C string. Using a OggFLAC__SeekableStreamEncoderReadStatus as the index to this array will give the string equivalent. The contents should not be modified.