SDRAngel  4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
audioopus.h
Go to the documentation of this file.
1 // Copyright (C) 2019 F4EXB //
3 // written by Edouard Griffiths //
4 // //
5 // This program is free software; you can redistribute it and/or modify //
6 // it under the terms of the GNU General Public License as published by //
7 // the Free Software Foundation as version 3 of the License, or //
8 // (at your option) any later version. //
9 // //
10 // This program is distributed in the hope that it will be useful, //
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of //
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
13 // GNU General Public License V3 for more details. //
14 // //
15 // You should have received a copy of the GNU General Public License //
16 // along with this program. If not, see <http://www.gnu.org/licenses/>. //
18 
19 #ifndef SDRBASE_AUDIO_AUDIOOPUS_H_
20 #define SDRBASE_AUDIO_AUDIOOPUS_H_
21 
22 #include <stdint.h>
23 #include <QMutex>
24 #include "export.h"
25 
26 class OpusEncoder;
27 
29 {
30 public:
31  AudioOpus();
32  ~AudioOpus();
33 
34  void setEncoder(int32_t fs, int nChannels);
35  int encode(int frameSize, int16_t *in, uint8_t *out);
36 
37  static const int m_bitrate = 64000;
38  static const int m_maxPacketSize = 3*1276;
39 
40 private:
41  OpusEncoder *m_encoderState;
43  QMutex m_mutex;
44 };
45 
46 #endif /* SDRBASE_AUDIO_AUDIOOPUS_H_ */
short int16_t
Definition: rtptypes_win.h:43
bool m_encoderOK
Definition: audioopus.h:42
unsigned char uint8_t
Definition: rtptypes_win.h:42
QMutex m_mutex
Definition: audioopus.h:43
int int32_t
Definition: rtptypes_win.h:45
OpusEncoder * m_encoderState
Definition: audioopus.h:41
#define SDRBASE_API
Definition: export.h:40