sherpa-onnx C API 1.0
Public C API and C++ wrapper for sherpa-onnx
Loading...
Searching...
No Matches
sherpa_onnx::cxx::OfflineSourceSeparation Class Reference

RAII wrapper for offline source separation. More...

#include <cxx-api.h>

+ Inheritance diagram for sherpa_onnx::cxx::OfflineSourceSeparation:
+ Collaboration diagram for sherpa_onnx::cxx::OfflineSourceSeparation:

Public Member Functions

void Destroy (const SherpaOnnxOfflineSourceSeparation *p) const
 Destroy the wrapped C handle.
 
SourceSeparationOutput Process (const float *const *samples, int32_t num_channels, int32_t num_samples, int32_t sample_rate) const
 Run source separation on multi-channel audio.
 
int32_t GetOutputSampleRate () const
 Return the output sample rate.
 
int32_t GetNumberOfStems () const
 Return the number of stems produced.
 
- Public Member Functions inherited from sherpa_onnx::cxx::MoveOnly< OfflineSourceSeparation, SherpaOnnxOfflineSourceSeparation >
 MoveOnly ()=default
 Construct an empty wrapper.
 
 MoveOnly (const SherpaOnnxOfflineSourceSeparation *p)
 Construct a wrapper from a raw C handle.
 
 MoveOnly (const MoveOnly &)=delete
 
 MoveOnly (MoveOnly &&other)
 
 ~MoveOnly ()
 Destroy the wrapped handle if present.
 
MoveOnlyoperator= (const MoveOnly &)=delete
 
MoveOnlyoperator= (MoveOnly &&other)
 
const SherpaOnnxOfflineSourceSeparationGet () const
 Return the wrapped raw pointer without transferring ownership.
 
const SherpaOnnxOfflineSourceSeparationRelease ()
 Release ownership of the wrapped raw pointer.
 

Static Public Member Functions

static OfflineSourceSeparation Create (const OfflineSourceSeparationConfig &config)
 Create an offline source separation engine.
 

Additional Inherited Members

- Protected Attributes inherited from sherpa_onnx::cxx::MoveOnly< OfflineSourceSeparation, SherpaOnnxOfflineSourceSeparation >
const SherpaOnnxOfflineSourceSeparationp_
 

Detailed Description

Definition at line 1709 of file cxx-api.h.

Member Function Documentation

◆ Create()

static OfflineSourceSeparation sherpa_onnx::cxx::OfflineSourceSeparation::Create ( const OfflineSourceSeparationConfig config)
static

◆ Destroy()

void sherpa_onnx::cxx::OfflineSourceSeparation::Destroy ( const SherpaOnnxOfflineSourceSeparation p) const

◆ GetNumberOfStems()

int32_t sherpa_onnx::cxx::OfflineSourceSeparation::GetNumberOfStems ( ) const

◆ GetOutputSampleRate()

int32_t sherpa_onnx::cxx::OfflineSourceSeparation::GetOutputSampleRate ( ) const

◆ Process()

SourceSeparationOutput sherpa_onnx::cxx::OfflineSourceSeparation::Process ( const float *const *  samples,
int32_t  num_channels,
int32_t  num_samples,
int32_t  sample_rate 
) const
Parameters
samplessamples[c] is a float array for channel c.
num_channelsNumber of input channels.
num_samplesNumber of samples per channel.
sample_rateInput sample rate in Hz.
Returns
Separated stems, or an empty output on error.

The documentation for this class was generated from the following file: