opus_projection_decoder_create method
Allocates and initializes a projection decoder state.
Call opus_projection_decoder_destroy() to release
this object when finished.
@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.
@paramout
error int *: Returns #OPUS_OK on success, or an error
code (see @ref opus_errorcodes) on
failure.
Implementation
ffi.Pointer<OpusProjectionDecoder> opus_projection_decoder_create(
int Fs,
int channels,
int streams,
int coupled_streams,
ffi.Pointer<ffi.Uint8> demixing_matrix,
int demixing_matrix_size,
ffi.Pointer<ffi.Int32> error,
) {
return _opus_projection_decoder_create(Fs, channels, streams,
coupled_streams, demixing_matrix, demixing_matrix_size, error);
}