opus_projection_decoder_init method
Intialize a previously allocated projection decoder state object.
The memory pointed to by a st must be at least the size returned by
opus_projection_decoder_get_size().
This is intended for applications which use their own allocator instead of
malloc.
To reset a previously initialized state, use the #OPUS_RESET_STATE CTL.
@see opus_projection_decoder_create
@see opus_projection_deocder_get_size
@param st OpusProjectionDecoder*: Projection encoder state to initialize.
@param Fs opus_int32: Sampling rate to decode at (in Hz).
This must be one of 8000, 12000, 16000,
24000, or 48000.
@param channels int: Number of channels to output.
This must be at most 255.
It may be different from the number of coded
channels (streams +
coupled_streams
).
@param streams int: The total number of streams coded in the
input.
This must be no more than 255.
@param coupled_streams int: Number of streams to decode as coupled
(2 channel) streams.
This must be no larger than the total
number of streams.
Additionally, The total number of
coded channels (streams +
coupled_streams
) must be no
more than 255.
@paramin
demixing_matrix const unsigned chardemixing_matrix_size
: Demixing matrix
that mapping from coded channels to output channels,
as described in @ref opus_projection and
@ref opus_projection_ctls.
@param demixing_matrix_size opus_int32: The size in bytes of the
demixing matrix, as
described in @ref
opus_projection_ctls.
@returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes)
on failure.
Implementation
int opus_projection_decoder_init(
ffi.Pointer<OpusProjectionDecoder> st,
int Fs,
int channels,
int streams,
int coupled_streams,
ffi.Pointer<ffi.Uint8> demixing_matrix,
int demixing_matrix_size,
) {
return _opus_projection_decoder_init(st, Fs, channels, streams,
coupled_streams, demixing_matrix, demixing_matrix_size);
}