arduino-audio-tools
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
EncoderBase64 Class Reference

EncoderBase64s - Encodes the input data into a Base64 string. By default each audio frame is followed by a new line, so that we can easily resynchronize the reading of a data stream. The generation of the new line can be configured with the setNewLine() method. More...

#include <CodecBase64.h>

Inheritance diagram for EncoderBase64:
AudioEncoder AudioWriter AudioInfoSupport

Public Member Functions

 EncoderBase64 (Print &out)
 
AudioInfo audioInfo ()
 provides the actual input AudioInfo
 
virtual AudioInfo audioInfoOut ()
 provides the actual output AudioInfo: this is usually the same as audioInfo() unless we use a transforming stream
 
virtual bool begin () override
 starts the processing using the actual RAWAudioInfo
 
virtual bool begin (AudioInfo info)
 
void end () override
 stops the processing
 
bool isOpen ()
 
const char * mime () override
 Provides "text/base64".
 
 operator bool () override
 
void setAudioInfo (AudioInfo from) override
 Defines the sample rate, number of channels and bits per sample.
 
void setNewLine (Base46Logic flag)
 We add a new line after each write.
 
void setOutput (Print &out_buffeream) override
 Defines the output Stream.
 
virtual size_t write (const void *binary, size_t len) override
 Writes PCM data to be encoded as RAW.
 

Protected Member Functions

void encodeLine (uint8_t *data, size_t input_length)
 
void flush ()
 
void writeBlocking (Print *out, uint8_t *data, size_t len)
 

Protected Attributes

int frame_size
 
AudioInfo info
 
bool is_open
 
Base46Logic newline_logic = CRforFrame
 
Printp_print = nullptr
 
Vector< uint8_t > ret
 

Detailed Description

EncoderBase64s - Encodes the input data into a Base64 string. By default each audio frame is followed by a new line, so that we can easily resynchronize the reading of a data stream. The generation of the new line can be configured with the setNewLine() method.

Author
Phil Schatzmann

The documentation for this class was generated from the following file: