arduino-audio-tools
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Modules Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Codec2Encoder Class Reference

Encoder for Codec2 - Depends on https://github.com/pschatzmann/arduino-libcodec2. More...

#include <CodecCodec2.h>

Inheritance diagram for Codec2Encoder:
AudioEncoder AudioWriter AudioInfoSupport

Public Member Functions

 Codec2Encoder (int bps=3200)
 
AudioInfo audioInfo ()
 provides the actual input AudioInfo
 
virtual AudioInfo audioInfoOut ()
 
bool begin ()
 
virtual bool begin (AudioInfo info)
 
int bitsPerSecond ()
 
int bytesCompressed ()
 
int bytesUncompressed ()
 
virtual void end ()
 
virtual const char * mime ()
 Provides the mime type of the encoded result.
 
 operator bool ()
 
void setAudioInfo (AudioInfo from) override
 Defines the sample rate, number of channels and bits per sample.
 
virtual void setBitsPerSecond (int bps)
 
virtual void setOutput (Print &out_stream)
 
size_t write (const uint8_t *in_ptr, size_t in_size) override
 

Protected Member Functions

void processByte (uint8_t byte)
 
void writeBlocking (Print *out, uint8_t *data, size_t len)
 

Protected Attributes

int bits_per_second = 0
 
int buffer_pos = 0
 
AudioInfo info
 
Vector< uint8_t > input_buffer
 
bool is_active = false
 
struct CODEC2 * p_codec2 = nullptr
 
Printp_print = nullptr
 
Vector< uint8_t > result_buffer
 

Detailed Description

Encoder for Codec2 - Depends on https://github.com/pschatzmann/arduino-libcodec2.

Author
Phil Schatzmann

Member Function Documentation

◆ audioInfo()

AudioInfo audioInfo ( )
inlinevirtualinherited

provides the actual input AudioInfo

Implements AudioInfoSupport.

Reimplemented in CodecNOP, and BinaryContainerEncoder.

◆ audioInfoOut()

virtual AudioInfo audioInfoOut ( )
inlinevirtualinherited

◆ begin() [1/2]

bool begin ( )
inlinevirtual

Implements AudioWriter.

◆ begin() [2/2]

virtual bool begin ( AudioInfo  info)
inlinevirtualinherited

Reimplemented in AACEncoderFDK.

◆ end()

virtual void end ( )
inlinevirtual

Implements AudioWriter.

◆ mime()

virtual const char * mime ( )
inlinevirtual

Provides the mime type of the encoded result.

Implements AudioEncoder.

◆ operator bool()

operator bool ( )
inlinevirtual

Implements AudioWriter.

◆ setAudioInfo()

void setAudioInfo ( AudioInfo  from)
inlineoverridevirtualinherited

Defines the sample rate, number of channels and bits per sample.

Implements AudioWriter.

Reimplemented in MP3EncoderLAME, EncoderBasic, FLACEncoder, OpusAudioEncoder, WAVEncoder, CodecNOP, G7xxEncoder, BinaryContainerEncoder, and OggContainerEncoder.

◆ setBitsPerSecond()

virtual void setBitsPerSecond ( int  bps)
inlinevirtual

sets bits per second: 3200, 2400, 1600, 1400, 1300, 1200, 700 and 450 bit/s

◆ setOutput()

virtual void setOutput ( Print out_stream)
inlinevirtual

Implements AudioWriter.

◆ write()

size_t write ( const uint8_t *  in_ptr,
size_t  in_size 
)
inlineoverridevirtual

Implements AudioWriter.


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