|
arduino-audio-tools
|
Encode for Opus audio. More...
#include <CodecOpus.h>
Public Member Functions | |
| OpusAudioEncoder (Print &out) | |
| AudioInfo | audioInfo () override |
| provides the actual input AudioInfo | |
| virtual AudioInfo | audioInfoOut () |
| bool | begin () override |
| starts the processing using the actual OpusAudioInfo | |
| virtual bool | begin (AudioInfo info) |
| bool | begin (OpusEncoderSettings settings) |
| OpusEncoderSettings & | config () |
| Provides access to the configuration. | |
| OpusEncoderSettings & | defaultConfig () |
| void | end () override |
| stops the processing | |
| virtual uint32_t | frameDurationUs () |
| Optional rtsp function: provide the frame duration in microseconds. | |
| bool | isOpen () |
| const char * | mime () override |
| Provides "audio/pcm". | |
| operator bool () override | |
| virtual uint16_t | samplesPerFrame () |
| Optional rtsp function: provide samples per the frame. | |
| 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 |
| OpusEncoder * | enc = nullptr |
| Vector< uint8_t > | frame {0} |
| int | frame_pos = 0 |
| AudioInfo | info |
| bool | is_open = false |
| Print * | p_print = nullptr |
Encode for Opus audio.
Depends on https://github.com/pschatzmann/arduino-libopus.git Please note that each fully encoded frame is written to the output stream.
|
inlineoverridevirtualinherited |
provides the actual input AudioInfo
Implements AudioInfoSupport.
Reimplemented in CodecNOP, BinaryContainerEncoder, and MP3ParserEncoder.
|
inlinevirtualinherited |
provides the actual output AudioInfo: this is usually the same as audioInfo() unless we use a transforming stream
Reimplemented in PureDataStream, PWMAudioOutput, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, FormatConverterStream, Pipeline, ResampleStream, and ResampleStreamT< TInterpolator >.
|
inlineoverridevirtual |
starts the processing using the actual OpusAudioInfo
Implements AudioWriter.
|
inlinevirtualinherited |
Reimplemented in AACEncoderFDK.
|
inlineoverridevirtual |
stops the processing
Implements AudioWriter.
|
inlinevirtualinherited |
Optional rtsp function: provide the frame duration in microseconds.
Reimplemented in ADPCMEncoder, OpusOggEncoder, MP3ParserEncoder, and MetaDataFilterEncoder.
|
inlineoverridevirtual |
Provides "audio/pcm".
Implements AudioEncoder.
|
inlineoverridevirtual |
Implements AudioWriter.
|
inlinevirtualinherited |
Optional rtsp function: provide samples per the frame.
Reimplemented in MP3ParserEncoder, and MetaDataFilterEncoder.
|
inlineoverridevirtual |
We actually do nothing with this.
Reimplemented from AudioEncoder.
|
inlineoverridevirtual |
Defines the output Stream.
Reimplemented from AudioEncoder.
|
inlineoverridevirtual |
Writes PCM data to be encoded as Opus.
Implements AudioWriter.