|
3 | 3 | [](https://app.codacy.com/gh/CelliesProjects/ESP32_VS1053_Stream?utm_source=github.com&utm_medium=referral&utm_content=CelliesProjects/ESP32_VS1053_Stream&utm_campaign=Badge_Grade_Settings) |
4 | 4 |
|
5 | 5 | A streaming library for esp32, esp32-wrover, esp32-c3, esp32-s2 and esp32-s3 with a separate VS1053 codec chip. |
6 | | -This library plays mp3, ogg, aac-adts, aac-adif, aac-mp4 and <strike>flac</strike> files and streams and uses [ESP_VS1053_Library](https://github.com/baldram/ESP_VS1053_Library) to communicate with the decoder. |
| 6 | +This library plays mp3, ogg, aac and flac files and streams. |
7 | 7 |
|
8 | | -Supported stream methods are http and insecure https. Streams can be chunked. |
9 | | -Also plays mp3 and ogg files from sdcard or any mounted filesystem. |
| 8 | +- Supported codecs are **mp3**, **ogg**, **aac-adts**, **aac-adif**, **aac-mp4** and **16 bit flac**. |
| 9 | +- Supported stream methods are http and insecure https. |
| 10 | +- Streams can be chunked. |
| 11 | +- Also plays **mp3**, **ogg** and **flac** files from sdcard or any mounted filesystem. |
10 | 12 |
|
11 | 13 | Very lightweight, has a binary footprint of less than 7kB excluding the psram buffer. |
12 | 14 |
|
| 15 | +[ESP_VS1053_Library](https://github.com/baldram/ESP_VS1053_Library) is used to communicate with the decoder. |
| 16 | + |
13 | 17 | ## How to install and use |
14 | 18 |
|
15 | 19 | ~~Install [ESP_VS1053_Library](https://github.com/baldram/ESP_VS1053_Library) and this library in your Arduino library folder.~~ |
16 | 20 |
|
17 | | -Release 3.0.0 or later releases require read access to the vs1053 registers which the [ESP_VS1053_Library](https://github.com/baldram/ESP_VS1053_Library) does not provide. (yet) |
| 21 | +Release 3.0.0 and later require read access to the vs1053 registers which the [ESP_VS1053_Library](https://github.com/baldram/ESP_VS1053_Library) does not provide. |
| 22 | +There is a [PR](https://github.com/baldram/ESP_VS1053_Library/pull/119) fixing this issue waiting to be merged in the ESP_VS1053_Library repo. |
18 | 23 |
|
19 | | -While a [PR](https://github.com/baldram/ESP_VS1053_Library/pull/119) fixing this issue is waiting to be merged in the ESP_VS1053_Library repo, using this [fork](baldram/ESP_VS1053_Library) it is possible to compile the 3.0.0 release or later releases. |
| 24 | +While that is waiting you can use [this fork](https://github.com/CelliesProjects/ESP_VS1053_Library/tree/make-SCI-registers-readable) to compile the 3.0.0 and later releases. |
20 | 25 |
|
21 | 26 | Use the [latest Arduino ESP32 core version](https://github.com/espressif/arduino-esp32/releases/latest) for Arduino IDE or the corresponding [PIOArduino release](https://github.com/pioarduino/platform-espressif32/releases/latest) if you use PlatformIO in VSCode. |
22 | 27 |
|
23 | 28 | ### platformio.ini example |
24 | 29 |
|
25 | | -``` |
| 30 | +```bash |
26 | 31 | platform = https://github.com/pioarduino/platform-espressif32/releases/download/55.03.37/platform-espressif32.zip |
27 | 32 |
|
28 | 33 | lib_deps = |
@@ -237,23 +242,25 @@ void loop() { |
237 | 242 | ``` |
238 | 243 |
|
239 | 244 | ## Known issues |
240 | | -Ogg files can not be started with an offset without first playing a couple of seconds from the start of the file. |
| 245 | +`Ogg` and `flac` files can not be resumed from an offset without first playing a couple of seconds from the start of the file. |
241 | 246 |
|
242 | 247 | ## Tips for troublefree streaming |
243 | 248 |
|
244 | 249 | ### WiFi setup |
245 | 250 |
|
246 | | -Do not forget to switch WiFi out of power save mode: |
| 251 | +Switch off the BlueTooth radio if unused. |
| 252 | +Do not forget to switch WiFi out of power save mode. |
247 | 253 |
|
248 | 254 | ```c++ |
249 | 255 | ... |
| 256 | +btStop(); |
250 | 257 | WiFi.begin(SSID, PSK); |
251 | 258 | WiFi.setSleep(false); |
252 | 259 | ... |
253 | 260 | ``` |
254 | 261 |
|
255 | | -### Prevent reboots while playing |
256 | | -Early version of the esp32 have issues with the external psram cache, resulting in reboots. |
| 262 | +### Prevent reboots when used on early esp32 |
| 263 | +Early versions of the esp32 have issues with the external psram cache, resulting in reboots. |
257 | 264 | Workarounds are possible depending on the hardware revision. |
258 | 265 |
|
259 | 266 | #### Revision V0.0 |
|
0 commit comments