Initialize the encoder instance to encode native FLAC files.
This flavor of initialization sets up the encoder to encode to a plain
FLAC file. If POSIX fopen() semantics are not sufficient (for example,
with Unicode filenames on Windows), you must use
FLAC__stream_encoder_init_FILE(), or FLAC__stream_encoder_init_stream()
and provide callbacks for the I/O.
This function should be called after FLAC__stream_encoder_new() and
FLAC__stream_encoder_set_*() but before FLAC__stream_encoder_process()
or FLAC__stream_encoder_process_interleaved().
initialization succeeded.
\param encoder An uninitialized encoder instance.
\param filename The name of the file to encode to. The file will
be opened with fopen(). Use \c NULL to encode to
\c stdout. Note however that a proper SEEKTABLE
cannot be created when encoding to \c stdout since
it is not seekable.
\param progress_callback See FLAC__StreamEncoderProgressCallback. This
pointer may be \c NULL if the callback is not
desired.
\param client_data This value will be supplied to callbacks in their
\a client_data argument.
\assert
\code encoder != NULL \endcode
\retval FLAC__StreamEncoderInitStatus
\c FLAC__STREAM_ENCODER_INIT_STATUS_OK if initialization was successful;
see FLAC__StreamEncoderInitStatus for the meanings of other return values.
Initialize the encoder instance to encode native FLAC files.
This flavor of initialization sets up the encoder to encode to a plain FLAC file. If POSIX fopen() semantics are not sufficient (for example, with Unicode filenames on Windows), you must use FLAC__stream_encoder_init_FILE(), or FLAC__stream_encoder_init_stream() and provide callbacks for the I/O.
This function should be called after FLAC__stream_encoder_new() and FLAC__stream_encoder_set_*() but before FLAC__stream_encoder_process() or FLAC__stream_encoder_process_interleaved(). initialization succeeded.
\param encoder An uninitialized encoder instance. \param filename The name of the file to encode to. The file will be opened with fopen(). Use \c NULL to encode to \c stdout. Note however that a proper SEEKTABLE cannot be created when encoding to \c stdout since it is not seekable. \param progress_callback See FLAC__StreamEncoderProgressCallback. This pointer may be \c NULL if the callback is not desired. \param client_data This value will be supplied to callbacks in their \a client_data argument. \assert \code encoder != NULL \endcode \retval FLAC__StreamEncoderInitStatus \c FLAC__STREAM_ENCODER_INIT_STATUS_OK if initialization was successful; see FLAC__StreamEncoderInitStatus for the meanings of other return values.