YobeSDK 0.3.2
 
Loading...
Searching...
No Matches
yobe_bio_listener.hpp
Go to the documentation of this file.
1
7#pragma once
8
9#include "sdk_build_defs.h"
10#include "yobe_lib_util.hpp"
11
12namespace Yobe {
19struct 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
41 virtual Status Init(const char *license, MicOrientation mic_orientation, VoiceTarget voice_target) = 0;
42
51 virtual Status Deinit() = 0;
52
60 virtual Status GetStatus() const = 0;
61
69 virtual MicOrientation GetMicOrientation() const = 0;
70
78 virtual VoiceTarget GetVoiceTarget() const = 0;
79
88 virtual void SetOutputGain(Yobe::OutputGain gain) = 0;
89
98 virtual Yobe::OutputGain GetOutputGain() const = 0;
99
118 virtual Status ProcessBuffer(const int16_t *in_samples, int16_t *out_samples, uint32_t in_sample_count,
119 uint32_t *out_sample_count) = 0;
120
122 virtual Status ProcessBuffer(const double *in_samples, double *out_samples, uint32_t in_sample_count,
123 uint32_t *out_sample_count) = 0;
124};
125} // namespace Yobe
126
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:83
OutputGain
This enumeration is used to define the fixed output gain for Yobe's processed buffer....
Definition yobe_lib_util.hpp:37
MicOrientation
This enum allows the algorithm to know how your microphones are oriented. [See Details in doxygen doc...
Definition yobe_lib_util.hpp:55
VoiceTarget
This is used to specify whether the target voice is near or far from the microphone.
Definition yobe_lib_util.hpp:64
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 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 MicOrientation GetMicOrientation() const =0
Gets the microphone orientation of the Yobe BioListener.
virtual Status Init(const char *license, MicOrientation mic_orientation, VoiceTarget voice_target)=0
Initializes the Yobe BioListener algorithm for a specific voice target.
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 void SetOutputGain(Yobe::OutputGain gain)=0
Set the output gain for the processed output.
virtual Yobe::OutputGain GetOutputGain() const =0
Get the output gain for the processed output.