1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-3.0-only
3#ifndef RESONANCE_AUDIO_H
4#define RESONANCE_AUDIO_H
5
6#include <api/resonance_audio_api.h>
7
8namespace vraudio
9{
10
11class ResonanceAudioExtensions;
12class ResonanceAudioApiImpl;
13
14class EXPORT_API ResonanceAudio
15{
16public:
17 ResonanceAudio(size_t num_channels, size_t frames_per_buffer, int sample_rate_hz);
18 ~ResonanceAudio();
19
20 // reverb is only calculated in stereo. We get it here as well, and our ambisonic
21 // decoder will then add it to the generated surround signal.
22 int getAmbisonicOutput(const float *buffers[], const float *reverb[], int nChannels);
23
24 ResonanceAudioApi *api = nullptr;
25 ResonanceAudioApiImpl *impl = nullptr;
26 bool roomEffectsEnabled = true;
27};
28
29
30
31}
32
33#endif
34

source code of qtmultimedia/src/resonance-audio/resonance_audio.h