arduino-audio-tools
Loading...
Searching...
No Matches
ICYStream.h
1#pragma once
2#include "AudioTools/Communication/HTTP/ICYStreamT.h"
3#include "AudioTools/Communication/HTTP/URLStream.h"
4
5namespace audio_tools {
6
12
13#if defined(USE_CONCURRENCY)
18class ICYStreamBuffered : public URLStreamBufferedT<ICYStream> {
19 public:
20 using URLStreamBufferedT<ICYStream>::URLStreamBufferedT;
21
23 virtual bool setMetadataCallback(void (*fn)(MetaDataType info,
24 const char* str,
25 int len)) override {
26 this->urlStream.setMetadataCallback(fn);
27 return true;
28 }
29};
30#endif
31
32} // namespace audio_tools
Buffered ICYStream with metadata callback support.
Definition ICYStream.h:18
virtual bool setMetadataCallback(void(*fn)(MetaDataType info, const char *str, int len)) override
Defines the metadata callback function.
Definition ICYStream.h:23
Icecast/Shoutcast audio stream that separates ICY metadata from audio bytes.
Definition ICYStreamT.h:42
virtual bool setMetadataCallback(void(*fn)(MetaDataType info, const char *str, int len)) override
Defines the metadata callback function.
Definition ICYStreamT.h:65
URLStream implementation for the ESP32 based on a separate FreeRTOS task: the.
Definition URLStreamBufferedT.h:154
MetaDataType
Type of meta info.
Definition AbstractMetaData.h:11
Generic Implementation of sound input and output for desktop environments using portaudio.
Definition AudioCodecsBase.h:10