Skip to content

Commit 2a7b33a

Browse files
authored
Merge Idf to main (#1948)
* idf compile errors * IDF support: Arduino Compile Errors * IDF Arduino Compile Errors * IDF round 2 - Client * Comment * Compile Errors div platforms
1 parent 14acd8f commit 2a7b33a

File tree

14 files changed

+548
-494
lines changed

14 files changed

+548
-494
lines changed

src/AudioTools/AudioCodecs/MP3HeaderParser.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ class MP3HeaderParser {
153153
{0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, -1},
154154
},
155155
};
156-
char rate_byte = rateTable[AudioVersion][Layer][BitrateIndex];
156+
signed char rate_byte = rateTable[AudioVersion][Layer][BitrateIndex];
157157
if (rate_byte == -1) {
158158
LOGE("Unsupported bitrate");
159159
return 0;

src/AudioTools/AudioLibs/Desktop/NoArduino.h

Lines changed: 140 additions & 136 deletions
Original file line numberDiff line numberDiff line change
@@ -2,170 +2,179 @@
22
/**
33
* @file NoArduino.h
44
* @author Phil Schatzmann
5-
* @brief If you want to use the framework w/o Arduino you need to provide the implementation
6-
* of a couple of classes and methods!
5+
* @brief If you want to use the framework w/o Arduino you need to provide the
6+
* implementation of a couple of classes and methods!
77
* @version 0.1
88
* @date 2022-09-19
9-
*
9+
*
1010
* @copyright Copyright (c) 2022
11-
*
11+
*
1212
*/
13+
#include <ctype.h>
1314
#include <stdint.h>
14-
#include <algorithm> // std::max
1515
#include <stdio.h>
1616
#include <stdlib.h>
17-
#include <ctype.h>
1817
#include <string.h>
18+
19+
#include <algorithm> // std::max
1920
#include <chrono>
21+
2022
#include "AudioConfig.h"
2123

2224
#define IS_NOARDUINO
2325

2426
#ifndef PSTR
25-
# define PSTR(fmt) fmt
27+
#define PSTR(fmt) fmt
2628
#endif
2729

2830
#ifndef PI
29-
# define PI 3.14159265359f
31+
#define PI 3.14159265359f
3032
#endif
3133

3234
#ifndef INPUT
33-
# define INPUT 0x0
35+
#define INPUT 0x0
3436
#endif
3537

3638
#ifndef OUTPUT
37-
# define OUTPUT 0x1
39+
#define OUTPUT 0x1
3840
#endif
3941

4042
#ifndef INPUT_PULLUP
41-
# define INPUT_PULLUP 0x2
43+
#define INPUT_PULLUP 0x2
4244
#endif
4345

4446
#ifndef HIGH
4547
#define HIGH 0x1
46-
# endif
48+
#endif
4749
#ifndef LOW
48-
# define LOW 0x0
50+
#define LOW 0x0
4951
#endif
5052

51-
5253
using namespace std;
5354

54-
enum PrintCharFmt {DEC, HEX};
55+
enum PrintCharFmt { DEC, HEX };
5556

5657
namespace audio_tools {
5758

5859
class Print {
59-
public:
60+
public:
6061
#ifndef DOXYGEN
61-
virtual size_t write(uint8_t ch){
62-
// not implememnted: to be overritten
63-
return 0;
64-
}
65-
66-
virtual size_t write(const char *str) {
67-
return write((const uint8_t *)str, strlen(str));
68-
}
69-
70-
virtual size_t write(const char *buffer, size_t size) {
71-
return write((const uint8_t *)buffer, size);
72-
}
73-
74-
virtual int print(const char* msg){
75-
int result = strlen(msg);
76-
return write(msg, result);
62+
virtual size_t write(uint8_t ch) {
63+
// not implememnted: to be overritten
64+
return 0;
65+
}
66+
67+
virtual size_t write(const char *str) {
68+
return write((const uint8_t *)str, strlen(str));
69+
}
70+
71+
virtual size_t write(const char *buffer, size_t size) {
72+
return write((const uint8_t *)buffer, size);
73+
}
74+
75+
virtual int print(const char *msg) {
76+
int result = strlen(msg);
77+
return write(msg, result);
78+
}
79+
80+
virtual int println(const char *msg = "") {
81+
int result = print(msg);
82+
write('\n');
83+
return result + 1;
84+
}
85+
86+
virtual int println(float number) {
87+
char buffer[120];
88+
snprintf(buffer, 120, "%f", number);
89+
return println(buffer);
90+
}
91+
92+
virtual int print(float number) {
93+
char buffer[120];
94+
snprintf(buffer, 120, "%f", number);
95+
return print(buffer);
96+
}
97+
98+
virtual int print(int number) {
99+
char buffer[80];
100+
snprintf(buffer, 80, "%d", number);
101+
return print(buffer);
102+
}
103+
104+
virtual int print(char c, PrintCharFmt spec) {
105+
char result[5];
106+
switch (spec) {
107+
case DEC:
108+
snprintf(result, 3, "%c", c);
109+
return print(result);
110+
case HEX:
111+
snprintf(result, 3, "%x", c);
112+
return print(result);
77113
}
114+
return -1;
115+
}
78116

79-
virtual int println(const char* msg="") {
80-
int result = print(msg);
81-
write('\n');
82-
return result+1;
83-
}
84-
85-
virtual int println(float number){
86-
char buffer[120];
87-
snprintf(buffer, 120, "%f", number);
88-
return println(buffer);
89-
}
90-
91-
virtual int print(float number){
92-
char buffer[120];
93-
snprintf(buffer, 120, "%f", number);
94-
return print(buffer);
95-
}
96-
97-
virtual int print(int number){
98-
char buffer[80];
99-
snprintf(buffer,80,"%d", number);
100-
return print(buffer);
101-
}
102-
103-
virtual int print(char c, PrintCharFmt spec){
104-
char result[5];
105-
switch(spec){
106-
case DEC:
107-
snprintf(result, 3,"%c", c);
108-
return print(result);
109-
case HEX:
110-
snprintf(result, 3,"%x", c);
111-
return print(result);
112-
}
113-
return -1;
114-
}
117+
int println(int value, PrintCharFmt fmt) {
118+
return print(value, fmt) + println();
119+
}
115120

116121
#endif
117122

118-
virtual size_t write(const uint8_t *data, size_t len){
119-
if (data == nullptr) return 0;
120-
for (size_t j=0;j<len;j++){
121-
write(data[j]);
122-
}
123-
return len;
123+
virtual size_t write(const uint8_t *data, size_t len) {
124+
if (data == nullptr) return 0;
125+
for (size_t j = 0; j < len; j++) {
126+
write(data[j]);
124127
}
128+
return len;
129+
}
125130

131+
virtual int availableForWrite() { return 1024; }
126132

127-
virtual int availableForWrite() { return 1024; }
128-
129-
130-
virtual void flush() { /* Empty implementation for backward compatibility */ }
131-
132-
protected:
133-
int _timeout = 10;
133+
virtual void flush() { /* Empty implementation for backward compatibility */ }
134134

135+
protected:
136+
int _timeout = 10;
135137
};
136138

137139
class Stream : public Print {
138-
public:
139-
virtual int available(){return 0;}
140-
virtual size_t readBytes(uint8_t* data, size_t len) {return 0;}
140+
public:
141+
virtual int available() { return 0; }
142+
virtual size_t readBytes(uint8_t *data, size_t len) { return 0; }
141143
#ifndef DOXYGEN
142-
virtual int read(){return -1;}
143-
virtual int peek(){return -1;}
144-
virtual void setTimeout(size_t t){}
145-
#endif
146-
operator bool(){
147-
return true;
144+
virtual int read() { return -1; }
145+
virtual int peek() { return -1; }
146+
virtual void setTimeout(size_t t) {}
147+
size_t readBytesUntil(char terminator, char *buffer, size_t length) {
148+
for (int j=0;j<length;j++){
149+
int val = read();
150+
if (val == -1) return j-1;
151+
if (val == terminator) return j;
152+
buffer[j] = val;
148153
}
154+
return length;
155+
};
156+
size_t readBytesUntil(char terminator, uint8_t *buffer, size_t length) {
157+
return readBytesUntil(terminator, (char *)buffer, length);
158+
}
159+
160+
#endif
161+
operator bool() { return true; }
149162
};
150163

151164
class Client : public Stream {
152-
public:
153-
void stop() {};
154-
virtual int read(uint8_t* buffer, size_t len) { return 0;};
155-
virtual int read() { return 0; };
156-
bool connected() { return false;};
157-
bool connect(const char* ip, int port) {return false;}
158-
virtual operator bool() { return false;}
165+
public:
166+
void stop() {};
167+
virtual int read(uint8_t *buffer, size_t len) { return 0; };
168+
virtual int read() { return 0; };
169+
bool connected() { return false; };
170+
bool connect(const char *ip, int port) { return false; }
171+
virtual operator bool() { return false; }
159172
};
160173

161174
class HardwareSerial : public Stream {
162-
public:
163-
size_t write(uint8_t ch) override {
164-
return putchar(ch);
165-
}
166-
virtual operator bool() {
167-
return true;
168-
}
175+
public:
176+
size_t write(uint8_t ch) override { return putchar(ch); }
177+
virtual operator bool() { return true; }
169178
};
170179

171180
static HardwareSerial Serial;
@@ -189,10 +198,10 @@ inline long map(long x, long in_min, long in_max, long out_min, long out_max) {
189198
// /// Returns the milliseconds since the start
190199
// extern uint32_t micros();
191200

192-
// #else
201+
// #else
193202

194203
// extern "C" {
195-
204+
196205
// /// Waits for the indicated milliseconds
197206
// extern void delay(uint32_t ms);
198207

@@ -207,45 +216,40 @@ inline long map(long x, long in_min, long in_max, long out_min, long out_max) {
207216

208217
// }
209218

210-
//#endif
219+
// #endif
211220

221+
} // namespace audio_tools
212222

213-
} // namespace
214-
215-
#if defined(ESP32)
223+
#if defined(ESP32)
216224
#include "driver/gpio.h"
217225
/// e.g. for AudioActions
218226
static int digitalRead(int pin) {
219-
printf("digitalRead:%d\n", pin);
220-
return gpio_get_level((gpio_num_t)pin);
227+
printf("digitalRead:%d\n", pin);
228+
return gpio_get_level((gpio_num_t)pin);
221229
}
222230

223231
static void pinMode(int pin, int mode) {
224-
gpio_num_t gpio_pin=(gpio_num_t)pin;
225-
printf("pinMode(%d,%d)\n", pin, mode);
226-
227-
gpio_reset_pin(gpio_pin);
228-
switch (mode){
229-
case INPUT:
230-
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT);
231-
break;
232-
case OUTPUT:
233-
gpio_set_direction(gpio_pin, GPIO_MODE_OUTPUT);
234-
break;
235-
case INPUT_PULLUP:
236-
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT);
237-
gpio_set_pull_mode(gpio_pin, GPIO_PULLUP_ONLY);
238-
break;
239-
default:
240-
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT_OUTPUT);
241-
break;
242-
}
232+
gpio_num_t gpio_pin = (gpio_num_t)pin;
233+
printf("pinMode(%d,%d)\n", pin, mode);
234+
235+
gpio_reset_pin(gpio_pin);
236+
switch (mode) {
237+
case INPUT:
238+
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT);
239+
break;
240+
case OUTPUT:
241+
gpio_set_direction(gpio_pin, GPIO_MODE_OUTPUT);
242+
break;
243+
case INPUT_PULLUP:
244+
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT);
245+
gpio_set_pull_mode(gpio_pin, GPIO_PULLUP_ONLY);
246+
break;
247+
default:
248+
gpio_set_direction(gpio_pin, GPIO_MODE_INPUT_OUTPUT);
249+
break;
250+
}
243251
}
244252

245253
#endif
246254

247-
//using namespace audio_tools;
248-
249-
250-
251-
255+
// using namespace audio_tools;

0 commit comments

Comments
 (0)