Icecast/Shoutcast Metadata Handling. Metadata class which splits the data into audio and metadata. The result is provided via callback methods. see https://www.codeproject.com/Articles/11308/SHOUTcast-Stream-Ripper.
More...
#include <MetaDataICY.h>
Icecast/Shoutcast Metadata Handling. Metadata class which splits the data into audio and metadata. The result is provided via callback methods. see https://www.codeproject.com/Articles/11308/SHOUTcast-Stream-Ripper.
- Author
- Phil Schatzmann
- Copyright
- GPLv3
◆ MetaDataICY() [1/2]
◆ MetaDataICY() [2/2]
We just process the Metadata and ignore the audio info.
◆ ~MetaDataICY()
◆ begin()
◆ clear()
◆ end()
◆ hasMetaData()
Returns true if the ICY stream contains metadata.
◆ isData()
returns true if the actual bytes is an audio data byte (e.g.mp3)
◆ isPrintable()
◆ metaInt()
◆ metaSize()
determines the meta data size from the size byte
◆ processChar()
character based state engine
◆ processData()
Collects the data in a buffer and executes the callback when the buffer is full
◆ processMetaData()
e.g. StreamTitle=' House Bulldogs - But your love (Radio Edit)';StreamUrl='';
◆ setAsciiOnly()
Sets whether to only accept ASCII characters in metadata (default is true)
◆ setAudioDataCallback()
Defines the audio callback function.
◆ setCallback()
◆ setIcyMetaInt()
Defines the ICE metaint value which is provided by the web call!
Reimplemented from AbstractMetaData.
◆ setupMetaData()
allocates the memory to store the metadata / we support changing sizes
◆ status()
Returns the actual status of the state engine for the current byte.
◆ write()
Writes the data in order to retrieve the metadata and perform the corresponding callbacks
Implements AbstractMetaData.
◆ callback
◆ currentStatus
| Status currentStatus = ProcessData |
|
protected |
◆ dataBuffer
◆ dataCallback
◆ dataLen
◆ dataPos
◆ is_ascii
◆ is_data
◆ metaData
◆ metaDataLen
◆ metaDataMaxLen
◆ metaDataPos
◆ mp3_blocksize
◆ nextStatus
| Status nextStatus = ProcessData |
|
protected |
◆ totalData
The documentation for this class was generated from the following file: