YobeSDK  0.2.0
yobe_bio_listener.hpp
Go to the documentation of this file.
1 
7 #pragma once
8 
9 #include "sdk_build_defs.hpp"
10 #include "yobe_lib_util.hpp"
11 
12 namespace Yobe {
19 struct YOBE_SDK_API BioListener {
20  virtual ~BioListener() = default;
21 
22  BioListener() = default;
23  BioListener(const BioListener &) = delete;
24  BioListener(BioListener &&) noexcept = default;
25 
26  BioListener &operator=(const BioListener &) = delete;
27  BioListener &operator=(BioListener &&) noexcept = default;
28 
38  virtual Status Init(const char *license) = 0;
39 
51  virtual Status Init(const char *license, VoiceTarget voice_target) = 0;
52 
61  virtual Status Deinit() = 0;
62 
70  virtual Status GetStatus() const = 0;
71 
79  virtual VoiceTarget GetVoiceTarget() const = 0;
80 
99  virtual Status ProcessBuffer(const int16_t *in_samples, int16_t *out_samples, uint32_t in_sample_count,
100  uint32_t *out_sample_count) = 0;
101 
102 
104  virtual Status ProcessBuffer(const double *in_samples, double *out_samples, uint32_t in_sample_count,
105  uint32_t *out_sample_count) = 0;
106 };
107 } // namespace Yobe
108 
Contains all Yobe-related functions and structures.
Definition: yobe_bio_listener.hpp:12
Status
Yobe status codes that give information on internal state.
Definition: yobe_lib_util.hpp:56
VoiceTarget
These enums are used to specify whether the target voice is near or far from the microphone.
Definition: yobe_lib_util.hpp:36
The main class for utilizing the Yobe BioListener functionality.
Definition: yobe_bio_listener.hpp:19
virtual Status Deinit()=0
Cleans up the internals of the Yobe BioListener algorithm.
virtual Status ProcessBuffer(const int16_t *in_samples, int16_t *out_samples, uint32_t in_sample_count, uint32_t *out_sample_count)=0
ProcessBuffer processes two channel interleaved audio and populates the output buffer with the proces...
virtual Status Init(const char *license)=0
Initializes the Yobe BioListener algorithm.
virtual Status GetStatus() const =0
Gets the current status of the Yobe BioListener algorithm.
virtual VoiceTarget GetVoiceTarget() const =0
Gets the voice target status for the Yobe BioListener algorithm.
virtual Status ProcessBuffer(const double *in_samples, double *out_samples, uint32_t in_sample_count, uint32_t *out_sample_count)=0
ProcessBuffer processes two channel interleaved audio and populates the output buffer with the proces...
virtual Status Init(const char *license, VoiceTarget voice_target)=0
Initializes the Yobe BioListener algorithm for a specific voice target.