You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+18-18Lines changed: 18 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -7,31 +7,28 @@
7
7
### Feature list
8
8
9
9
- Header only C++ implementation
10
-
- Opus and PCM decoding are currently supported
10
+
-PCM, Opus and FLAC decoding are supported
11
11
- Auto connect to snapcast server on network
12
12
- The functionality has been tested on an ESP32
13
13
- Memory efficient implementation, so that PSRAM is not needed
14
14
- Use any output device or DSP chain suppored by the [Audio Tools](https://github.com/pschatzmann/arduino-audio-tools)
15
15
16
16
### Description
17
17
18
-
I have converted the [snapclient](https://github.com/jorgenkraghjakobsen/snapclient) from Jørgen Kragh Jakobsen to an Arduino Library and integrated my AudioTools project to be used to define the output devices.
18
+
I have rewritten the [snapclient](https://github.com/jorgenkraghjakobsen/snapclient) from Jørgen Kragh Jakobsen to an Arduino Library and integrated my AudioTools project to be used to define the output devices.
19
19
20
20
### Example Arduino Sketch
21
21
22
-
Here is an example Arduino sketch that uses the Wifi as communication API, the Opus codec and outputs the audio with I2S:
22
+
Here is an example Arduino sketch that uses the Wifi as communication API, the WAVs codec and outputs the audio with I2S:
23
23
24
24
```C++
25
25
#include"AudioTools.h"
26
26
#include"SnapClient.h"
27
-
#include"AudioCodecs/CodecOpus.h"
28
27
29
-
#defineARDUINO_LOOP_STACK_SIZE (10 * 1024)
30
-
31
-
OpusAudioDecoder opus;
32
-
I2SStream out;
28
+
WAVDecoder pcm;
33
29
WiFiClient wifi;
34
-
SnapClient client(wifi, out, opus);
30
+
I2SStream out;
31
+
SnapClient client(wifi, out, pcm);
35
32
36
33
void setup() {
37
34
Serial.begin(115200);
@@ -63,13 +60,23 @@ void loop() {
63
60
}
64
61
65
62
```
63
+
Change the snapserver.conf to define ```codec = pcm``` and restart the snapserver with ```sudo service snapserver restart```.
64
+
You can test now your sketch e.g. with ```ffmpeg -i http://stream.srg-ssr.ch/m/rsj/mp3_128 -f s16le -ar 48000 /tmp/snapfifo```
65
+
66
+
For further information on codecs please check the information in the Uncyclo!
67
+
68
+
69
+
### Documentation
66
70
67
-
You can test your sketch e.g. with ```ffmpeg -i http://stream.srg-ssr.ch/m/rsj/mp3_128 -f s16le -ar 48000 /tmp/snapfifo```
71
+
For further information
72
+
- consult the [class documentation](https://pschatzmann.github.io/arduino-snapclient/html/annotated.html) or
@@ -80,10 +87,3 @@ You can test your sketch e.g. with ```ffmpeg -i http://stream.srg-ssr.ch/m/rsj/m
80
87
Configuration settings can be found in [SnapConfig.h](https://github.com/pschatzmann/arduino-snapcast/blob/main/src/SnapConfig.h)
81
88
82
89
83
-
84
-
85
-
### Documentation
86
-
87
-
For further information consult the [class documentation](https://pschatzmann.github.io/arduino-snapclient/html/annotated.html) or the [examples](examples/).
0 commit comments