Opus Decoder which uses the Ogg Container. See https://datatracker.ietf.org/doc/html/rfc7845. The audio data is transmitted in frames and the header information contains the sampler rate, channels and other critical info. Dependency: https://github.com/pschatzmann/arduino-libopus.
More...
#include <CodecOpusOgg.h>
|
| int | id |
| | custom id to be used by application
|
| |
|
| static size_t | ogg_io_read (void *user_handle, void *buf, size_t n) |
| |
| static int | read_packet (OGGZ *oggz, oggz_packet *zp, long serialno, void *user_data) |
| |
| static int | read_page (OGGZ *oggz, const ogg_page *og, long serialno, void *user_data) |
| |
Opus Decoder which uses the Ogg Container. See https://datatracker.ietf.org/doc/html/rfc7845. The audio data is transmitted in frames and the header information contains the sampler rate, channels and other critical info. Dependency: https://github.com/pschatzmann/arduino-libopus.
- Author
- Phil Schatzmann
- Copyright
- GPLv3
◆ OpusOggDecoder()
◆ addNotifyAudioChange()
|
|
inlineoverridevirtualinherited |
Adds target to be notified about audio changes.
Reimplemented from AudioInfoSource.
◆ audioInfo()
|
|
inlineoverridevirtualinherited |
◆ audioInfoOut()
provides the actual output AudioInfo: this is usually the same as audioInfo() unless we use a transforming stream
Reimplemented in MP3EncoderShine, PureDataStream, PWMAudioOutput< PWMDriverT >, ChannelFormatConverterStreamT< T >, ChannelFormatConverterStream, NumberFormatConverterStreamT< TFrom, TTo >, NumberFormatConverterStream, FormatConverterStream, Pipeline, ResampleStream, and ResampleStreamT< TInterpolator >.
◆ begin() [1/3]
◆ begin() [2/3]
|
|
inlineoverridevirtualinherited |
◆ begin() [3/3]
◆ beginOfSegment()
| virtual void beginOfSegment |
( |
ogg_packet * |
op | ) |
|
|
inlineoverrideprotectedvirtual |
◆ clearNotifyAudioChange()
| virtual void clearNotifyAudioChange |
( |
| ) |
|
|
inlinevirtualinherited |
◆ config()
Provides access to the Opus configuration.
◆ end()
◆ endOfSegment()
| virtual void endOfSegment |
( |
ogg_packet * |
op | ) |
|
|
inlineprotectedvirtualinherited |
◆ flush()
◆ getOutput()
◆ isNotifyActive()
Checks if the automatic AudioInfo update is active.
◆ notifyAudioChange()
◆ ogg_io_read()
| static size_t ogg_io_read |
( |
void * |
user_handle, |
|
|
void * |
buf, |
|
|
size_t |
n |
|
) |
| |
|
inlinestaticprotectedinherited |
◆ operator bool()
| virtual operator bool |
( |
| ) |
|
|
inlineoverridevirtualinherited |
◆ read_packet()
| static int read_packet |
( |
OGGZ * |
oggz, |
|
|
oggz_packet * |
zp, |
|
|
long |
serialno, |
|
|
void * |
user_data |
|
) |
| |
|
inlinestaticprotectedinherited |
◆ read_page()
| static int read_page |
( |
OGGZ * |
oggz, |
|
|
const ogg_page * |
og, |
|
|
long |
serialno, |
|
|
void * |
user_data |
|
) |
| |
|
inlinestaticprotectedinherited |
◆ removeNotifyAudioChange()
◆ setAudioInfo()
|
|
inlineoverridevirtualinherited |
◆ setCodecConfig()
| virtual bool setCodecConfig |
( |
const uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlinevirtualinherited |
Some decoders need e.g. a magic cookie to provide the relevant info for decoding.
Reimplemented in DecoderALAC, and MultiDecoder.
◆ setDecoder()
◆ setNotifyActive()
| void setNotifyActive |
( |
bool |
flag | ) |
|
|
inlineinherited |
Deactivate/Reactivate automatic AudioInfo updates: (default is active)
◆ setOutput() [1/3]
◆ setOutput() [2/3]
◆ setOutput() [3/3]
| void setOutput |
( |
Print & |
print | ) |
|
|
inlineoverridevirtualinherited |
◆ write()
| virtual size_t write |
( |
const uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlineoverridevirtualinherited |
◆ writeBlocking()
| void writeBlocking |
( |
Print * |
out, |
|
|
uint8_t * |
data, |
|
|
size_t |
len |
|
) |
| |
|
inlineprotectedinherited |
◆ buffer
◆ dec
◆ dec_copy
◆ header
◆ id
custom id to be used by application
◆ info
◆ is_notify_active
| bool is_notify_active = true |
|
protectedinherited |
◆ is_open
◆ notify_vector
◆ out
◆ p_codec
◆ p_oggz
◆ p_print
◆ pos
The documentation for this class was generated from the following file: