arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
OpusAudioEncoder Class Reference

OpusAudioEncoder: Dependens on https://github.com/pschatzmann/arduino-libopus.git. More...

#include <CodecOpus.h>

Inheritance diagram for OpusAudioEncoder:
AudioEncoder AudioWriter AudioInfoSupport

Public Member Functions

 OpusAudioEncoder (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
 
bool begin () override
 starts the processing using the actual OpusAudioInfo
 
virtual bool begin (AudioInfo info)
 
bool begin (OpusEncoderSettings settings)
 
OpusEncoderSettingsconfig ()
 Provides access to the configuration.
 
OpusEncoderSettingsdefaultConfig ()
 
void end () override
 stops the processing
 
bool isOpen ()
 
const charmime () override
 Provides "audio/pcm".
 
 operator bool () override
 
void setAudioInfo (AudioInfo from) override
 We actually do nothing with this.
 
void setOutput (Print &out_stream) override
 Defines the output Stream.
 
size_t write (const uint8_t *data, size_t len) override
 Writes PCM data to be encoded as Opus.
 

Protected Member Functions

void encodeByte (uint8_t data)
 
void encodeFrame ()
 
int getFrameSizeSamples (int sampling_rate)
 Returns the frame size in samples.
 
bool settings ()
 
void writeBlocking (Print *out, uint8_t *data, size_t len)
 

Protected Attributes

OpusEncoderSettings cfg
 
OpusEncoderenc = nullptr
 
Vector< uint8_tframe {0}
 
int frame_pos = 0
 
AudioInfo info
 
bool is_open = false
 
Printp_print = nullptr
 

Detailed Description

OpusAudioEncoder: Dependens on https://github.com/pschatzmann/arduino-libopus.git.

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 ( )
inlineoverridevirtual

starts the processing using the actual OpusAudioInfo

Implements AudioWriter.

◆ begin() [2/2]

virtual bool begin ( AudioInfo  info)
inlinevirtualinherited

Reimplemented in AACEncoderFDK.

◆ end()

void end ( )
inlineoverridevirtual

stops the processing

Implements AudioWriter.

◆ mime()

const char * mime ( )
inlineoverridevirtual

Provides "audio/pcm".

Implements AudioEncoder.

◆ operator bool()

operator bool ( )
inlineoverridevirtual

Implements AudioWriter.

◆ setAudioInfo()

void setAudioInfo ( AudioInfo  from)
inlineoverridevirtual

We actually do nothing with this.

Reimplemented from AudioEncoder.

◆ setOutput()

void setOutput ( Print out_stream)
inlineoverridevirtual

Defines the output Stream.

Implements AudioWriter.

◆ write()

size_t write ( const uint8_t data,
size_t  len 
)
inlineoverridevirtual

Writes PCM data to be encoded as Opus.

Implements AudioWriter.


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