MPEG-TS (MTS) decoder. Extracts the AAC audio data from a MPEG-TS (MTS) data stream. You can define the relevant stream types via the API. The parsing logic was taken from: https://github.com/Yokohama-Miyazawa/M5HLSPlayer/blob/main/src/AudioGeneratorTS.cpp Status: experimental!
More...
#include <CodecMTS.h>
|
virtual void | addNotifyAudioChange (AudioInfoSupport &bi) |
| Adds target to be notified about audio changes.
|
|
void | addStreamType (MTSStreamType type) |
|
void | addStreamType (TSDPMTStreamType type) |
|
virtual 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 |
|
bool | begin () override |
|
virtual bool | begin (AudioInfo info) override |
|
virtual void | clearNotifyAudioChange () |
| Deletes all change notify subscriptions.
|
|
void | clearStreamTypes () |
|
void | clearStreamTypes () |
|
void | end () override |
|
void | end () override |
|
void | flush () |
|
void | flush () |
|
bool | isNotifyActive () |
| Checks if the automatic AudioInfo update is active.
|
|
virtual bool | isResultPCM () |
| Returns true to indicate that the decoding result is PCM data.
|
|
bool | isStreamTypeActive (MTSStreamType type) |
|
bool | isStreamTypeActive (TSDPMTStreamType type) |
|
const char * | mime () |
|
const char * | mime () |
|
virtual | operator bool () override |
|
virtual | operator bool () override |
|
virtual bool | removeNotifyAudioChange (AudioInfoSupport &bi) |
| Removes a target in order not to be notified about audio changes.
|
|
void | resizeBuffer (int size) |
| Set a new write buffer size (default is 2000)
|
|
void | resizeBuffer (int size) |
| Set a new write buffer size (default is 2000)
|
|
virtual void | setAudioInfo (AudioInfo from) override |
| for most decoders this is not needed
|
|
void | setMemoryAllocationLogging (bool flag) |
| Activate logging for memory allocations.
|
|
void | setNotifyActive (bool flag) |
| Deactivate/Reactivate automatic AudioInfo updates: (default is active)
|
|
virtual void | setOutput (AudioOutput &out_stream) |
| Defines where the decoded result is written to.
|
|
virtual void | setOutput (AudioStream &out_stream) |
| Defines where the decoded result is written to.
|
|
virtual void | setOutput (Print &out_stream) override |
| Defines where the decoded result is written to.
|
|
size_t | write (const uint8_t *data, size_t len) override |
|
size_t | write (const uint8_t *data, size_t len) override |
|
|
int | id |
| custom id to be used by application
|
|
|
void | add_print_pid (TSDProgramElement *prog, TSDPMTStreamType type) |
|
void | demux (int limit) |
|
void | demux (int limit) |
|
const char * | descriptor_tag_to_str (uint8_t tag) |
|
void | event_cb_local (TSDemuxContext *ctx, uint16_t pid, TSDEventId event_id, void *data) |
|
bool | is_new_file (uint8_t *data) |
| Determines if we are at the beginning of a new file.
|
|
void | logResult (TSDCode code) |
|
void | notifyAudioChange (AudioInfo info) |
|
uint32_t | parse () |
|
int | parsePacket (uint8_t *packet, uint8_t *data) |
|
int | parsePAT (uint8_t *pat) |
|
int | parsePES (uint8_t *pat, const int posOfPacketStart, const bool isNewPayload) |
|
int | parsePMT (uint8_t *pat) |
|
void | print_descriptor_info (TSDDescriptor *desc) |
|
void | print_pat (TSDemuxContext *ctx, void *data) |
|
void | print_pmt (TSDemuxContext *ctx, void *data) |
|
void | set_write_active (bool flag) |
|
const char * | stream_type_to_str (TSDPESStreamId stream_id) |
|
void | writeBlocking (Print *out, uint8_t *data, size_t len) |
|
|
static void | event_cb (TSDemuxContext *ctx, uint16_t pid, TSDEventId event_id, void *data) |
|
static void * | log_calloc (size_t num, size_t size) |
|
static void | log_free (void *mem) |
|
static void * | log_malloc (size_t size) |
|
static void * | log_realloc (void *ptr, size_t size) |
|
|
Vector< AllocSize > | alloc_vector |
|
SingleBuffer< uint8_t > | buffer { 2000 } |
|
TSDemuxContext | ctx |
|
Vector< uint8_t > | data { 188 } |
|
AudioInfo | info |
|
bool | is_active = false |
|
bool | is_alloc_active = false |
|
bool | is_notify_active = true |
|
bool | is_write_active = false |
|
bool | isSyncByteFound = false |
|
Vector< AudioInfoSupport * > | notify_vector |
|
Print * | p_print = nullptr |
|
uint8_t | packetBuff [188] |
|
int16_t | pesDataLength = -1 |
|
pid_array | pidsOfPMT |
|
uint16_t | print_pids [(16)] = {0} |
|
int16_t | relevantPID = -1 |
|
Vector< MTSStreamType > | stream_types |
|
Vector< TSDPMTStreamType > | stream_types |
|
int | underflowLimit = 200 |
|
MPEG-TS (MTS) decoder. Extracts the AAC audio data from a MPEG-TS (MTS) data stream. You can define the relevant stream types via the API. The parsing logic was taken from: https://github.com/Yokohama-Miyazawa/M5HLSPlayer/blob/main/src/AudioGeneratorTS.cpp Status: experimental!
MPEG-TS (MTS) decoder. Extracts the AAC audio data from a MPEG-TS (MTS) data stream. You can define the relevant stream types via the API. Required dependency: https://github.com/pschatzmann/arduino-tsdemux.
- Author
- Phil Schatzmann
- Copyright
- GPLv3
The documentation for this class was generated from the following files: