Skip to content

Commit 9428a42

Browse files
committed
Codecs Documentation
1 parent b33f5af commit 9428a42

28 files changed

+125
-181
lines changed

src/AudioCodecs/AudioCodecs.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,18 @@
66
* @brief Audio Coder and Decoder
77
**/
88

9+
/**
10+
* @defgroup encoder Encoder
11+
* @ingroup codecs
12+
* @brief Audio Encoder
13+
**/
14+
15+
/**
16+
* @defgroup decoder Decoder
17+
* @ingroup codecs
18+
* @brief Audio Decoder
19+
**/
20+
921
#include "AudioCodecs/CodecWAV.h"
1022
#include "AudioCodecs/CodecCopy.h"
1123
#include "AudioCodecs/Codec8Bit.h"

src/AudioCodecs/Codec8Bit.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,15 @@
22

33
#include "AudioCodecs/AudioEncoded.h"
44

5-
/**
6-
* @defgroup codecs8bit 8Bit
7-
* @ingroup codecs
8-
* @brief Codec for 8 bit data
9-
**/
10-
115
namespace audio_tools {
126

137
/**
148
* @brief Decoder8Bit - Converts an 8 Bit Stream into 16Bits
159
* Most microcontrollers can not output 8 bit data directly. 8 bit data however is very
1610
* memory efficient and helps if you need to store audio on constrained resources. This
1711
* decoder translates 8bit data into 16bit data.
18-
* @ingroup codecs8bit
12+
* @ingroup codecs
13+
* @ingroup decoder
1914
* @author Phil Schatzmann
2015
* @copyright GPLv3
2116
*/
@@ -124,7 +119,8 @@ class Decoder8Bit : public AudioDecoder {
124119
* Most microcontrollers can not process 8 bit audio data directly. 8 bit data however is very
125120
* memory efficient and helps if you need to store audio on constrained resources. This
126121
* encoder translates 16bit data into 8bit data.
127-
* @ingroup codecs8bit
122+
* @ingroup codecs
123+
* @ingroup encoder
128124
* @author Phil Schatzmann
129125
* @copyright GPLv3
130126
*/

src/AudioCodecs/CodecAACFDK.h

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,6 @@
44
#include "AACDecoderFDK.h"
55
#include "AACEncoderFDK.h"
66

7-
/**
8-
* @defgroup fdk fdk
9-
* @ingroup codecs
10-
* @brief FTK AAC Decoder
11-
**/
127

138
namespace audio_tools {
149

@@ -19,7 +14,8 @@ AudioInfoDependent *audioChangeFDK = nullptr;
1914
* @brief Audio Decoder which decodes AAC into a PCM stream
2015
* This is basically just a wrapper using https://github.com/pschatzmann/arduino-fdk-aac
2116
* which uses AudioInfo and provides the handlig of AudioInfo changes.
22-
* @ingroup fdk
17+
* @ingroup codecs
18+
* @ingroup decoder
2319
* @author Phil Schatzmann
2420
* @copyright GPLv3
2521
*/
@@ -123,7 +119,8 @@ class AACDecoderFDK : public AudioDecoder {
123119
/**
124120
* @brief Encodes PCM data to the AAC format and writes the result to a stream
125121
* This is basically just a wrapper using https://github.com/pschatzmann/arduino-fdk-aac
126-
* @ingroup fdk
122+
* @ingroup codecs
123+
* @ingroup encoder
127124
* @author Phil Schatzmann
128125
* @copyright GPLv3
129126
*/

src/AudioCodecs/CodecAACHelix.h

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,6 @@
44
#include "AudioCodecs/AudioEncoded.h"
55
#include "AACDecoderHelix.h"
66

7-
/**
8-
* @defgroup helix Helix
9-
* @ingroup codecs
10-
* @brief Helix Decoder
11-
**/
12-
137
namespace audio_tools {
148

159
// audio change notification target
@@ -18,7 +12,8 @@ AudioInfoDependent *audioChangeAACHelix=nullptr;
1812
/**
1913
* @brief AAC Decoder using libhelix: https://github.com/pschatzmann/arduino-libhelix
2014
* This is basically just a simple wrapper to provide AudioInfo and AudioInfoDependent
21-
* @ingroup helix
15+
* @ingroup codecs
16+
* @ingroup decoder
2217
* @author Phil Schatzmann
2318
* @copyright GPLv3
2419
*/

src/AudioCodecs/CodecAPTX.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,13 @@
1313
#include "AudioBasic/Int24x.h"
1414
#include "openaptx.h"
1515

16-
/**
17-
* @defgroup aptx AptX
18-
* @ingroup codecs
19-
* @brief AptX Codec
20-
**/
21-
2216
namespace audio_tools {
2317

2418
/**
2519
* @brief Decoder for OpenAptx. Depends on
2620
* https://github.com/pschatzmann/libopenaptx
27-
* @ingroup aptx
21+
* @ingroup codecs
22+
* @ingroup decoder
2823
* @author Phil Schatzmann
2924
* @copyright GPLv3
3025
*/
@@ -185,7 +180,8 @@ class APTXDecoder : public AudioDecoder {
185180
/**
186181
* @brief Encoder for OpenAptx - Depends on
187182
* https://github.com/pschatzmann/libopenaptx
188-
* @ingroup aptx
183+
* @ingroup codecs
184+
* @ingroup encoder
189185
* @author Phil Schatzmann
190186
* @copyright GPLv3
191187
*/

src/AudioCodecs/CodecBase64.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@
66

77
namespace audio_tools {
88

9-
/**
10-
* @defgroup codecsbase64 Base64
11-
* @ingroup codecs
12-
* @brief Codec for 8 bit data
13-
**/
14-
159

1610
enum Base46Logic { NoCR, CRforFrame, CRforWrite };
1711
static char encoding_table[] = {
@@ -36,7 +30,8 @@ static const int B64index[256] = {
3630
* data stream. Decoding only gives a valid result if we start at a limit of 4
3731
* bytes. We therefore use by default a newline to determine a valid start
3832
* boundary.
39-
* @ingroup codecsbase64
33+
* @ingroup codecs
34+
* @ingroup decoder
4035
* @author Phil Schatzmann
4136
* @copyright GPLv3
4237
*/
@@ -178,7 +173,8 @@ class DecoderBase64 : public AudioDecoder {
178173
* By default each audio frame is followed by a new line, so that we can
179174
* easily resynchronize the reading of a data stream. The generation
180175
* of the new line can be configured with the setNewLine() method.
181-
* @ingroup codecsbase64
176+
* @ingroup codecs
177+
* @ingroup encoder
182178
* @author Phil Schatzmann
183179
* @copyright GPLv3
184180
*/

src/AudioCodecs/CodecCodec2.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,6 @@
2121
#include "codec2.h"
2222

2323

24-
/**
25-
* @defgroup codec2 Codec2
26-
* @ingroup codecs
27-
* @brief Codec2
28-
**/
29-
3024
namespace audio_tools {
3125

3226
/// Convert bits per sample to Codec2 mode
@@ -59,7 +53,8 @@ int getCodec2Mode(int bits_per_second) {
5953
/**
6054
* @brief Decoder for Codec2. Depends on
6155
* https://github.com/pschatzmann/arduino-libcodec2.
62-
* @ingroup codec2
56+
* @ingroup codecs
57+
* @ingroup decoder
6358
* @author Phil Schatzmann
6459
* @copyright GPLv3
6560
*/
@@ -190,7 +185,8 @@ class Codec2Decoder : public AudioDecoder {
190185
/**
191186
* @brief Encoder for Codec2 - Depends on
192187
* https://github.com/pschatzmann/arduino-libcodec2.
193-
* @ingroup codec2
188+
* @ingroup codecs
189+
* @ingroup encoder
194190
* @author Phil Schatzmann
195191
* @copyright GPLv3
196192
*/

src/AudioCodecs/CodecCopy.h

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,13 @@
44
#ifdef ARDUINO
55
#include "Print.h"
66
#endif
7-
/**
8-
* @defgroup codec-copy Copy
9-
* @ingroup codecs
10-
* @brief Copies data as is
11-
**/
127

138
namespace audio_tools {
149

1510
/**
1611
* @brief Dummy Decoder which just copies the provided data to the output
17-
* @ingroup codec-copy
12+
* @ingroup codecs
13+
* @ingroup decoder
1814
* @author Phil Schatzmann
1915
* @copyright GPLv3
2016
*/
@@ -56,7 +52,8 @@ class CopyDecoder : public AudioDecoder {
5652

5753
/**
5854
* @brief Dummy Encoder which just copies the provided data to the output
59-
* @ingroup codec-copy
55+
* @ingroup codecs
56+
* @ingroup encoder
6057
* @author Phil Schatzmann
6158
* @copyright GPLv3
6259
*/

src/AudioCodecs/CodecFLAC.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,20 +20,15 @@
2020
#define FLAC_BUFFER_SIZE (8 * 1024)
2121
#endif
2222

23-
/**
24-
* @defgroup codec-flac FLAC
25-
* @ingroup codecs
26-
* @brief FLAC Codec
27-
**/
28-
2923

3024
namespace audio_tools {
3125

3226
/**
3327
* @brief Decoder for FLAC. Depends on https://github.com/pschatzmann/arduino-libflac. We support an efficient streaming API and an very memory intensitiv standard interface. So
3428
* you should prefer the streaming interface where you call setOutputStream() before the begin and copy() in the loop.
3529
* Validated with http://www.2l.no/hires/
36-
* @ingroup codec-flac
30+
* @ingroup codecs
31+
* @ingroup decoder
3732
* @author Phil Schatzmann
3833
* @copyright GPLv3
3934
*/
@@ -266,7 +261,8 @@ class FLACDecoder : public StreamingDecoder {
266261

267262
/**
268263
* @brief FLACEncoder
269-
* @ingroup codec-flac
264+
* @ingroup codecs
265+
* @ingroup encoder
270266
* @author Phil Schatzmann
271267
* @copyright GPLv3
272268
*/

src/AudioCodecs/CodecFloat.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,13 @@
22

33
#include "AudioCodecs/AudioEncoded.h"
44

5-
/**
6-
* @defgroup codec-float Floats
7-
* @ingroup codecs ml
8-
* @brief Converts between int16_t and floats
9-
**/
10-
115

126
namespace audio_tools {
137

148
/**
159
* @brief DecoderFloat - Converts Stream of floats into 2 byte integers
16-
* @ingroup codec-float
10+
* @ingroup codecs
11+
* @ingroup decoder
1712
* @author Phil Schatzmann
1813
* @copyright GPLv3
1914
*/
@@ -110,7 +105,8 @@ class DecoderFloat : public AudioDecoder {
110105
/**
111106
* @brief EncoderFloats - Encodes 16 bit PCM data stream to floats
112107
* data.
113-
* @ingroup codec-float
108+
* @ingroup codecs
109+
* @ingroup encoder
114110
* @author Phil Schatzmann
115111
* @copyright GPLv3
116112
*/

0 commit comments

Comments
 (0)