|
arduino-audio-tools
|
Basic Concepts. More...
Classes | |
| struct | AudioInfo |
| Basic Audio information which drives e.g. I2S. More... | |
| class | AudioInfoSource |
| Supports the subscription to audio change notifications. More... | |
| class | AudioInfoSupport |
| Supports changes to the sampling rate, bits and channels. More... | |
| class | AudioWriter |
| E.g. used by Encoders and Decoders. More... | |
| class | float16 |
| Half-precision IEEE-754 binary16 float compressed into 2 bytes (1 sign + 5 exponent + 10 mantissa bits, no infinity/NaN encoding), used to halve the memory footprint of large float buffers (e.g. sample or FFT data) at the cost of precision: range +-131008.0, minimum positive normal ~6.1035156E-5, ~3.3 significant decimal digits. Unlike float32, this is a genuinely lossy compression – converting a value in and back out will generally not return the exact original float. More... | |
| class | float32 |
A plain 32-bit float's bit pattern reinterpreted as a uint32_t, so instances can live in memory obtained from a capability-specific allocator (e.g. ESP32's MALLOC_CAP_32BIT, which some heap regions require for word-addressed access and won't necessarily hand out for a plain float array). Conversion to/from float is a zero-cost bitwise reinterpretation (see as_uint()/as_float()), not an encoding – unlike float16, this class is bit-for-bit identical to float and loses no precision or range; it exists purely to control storage/allocation, not to compress data. More... | |
| class | int24_3bytes_t |
| 24bit integer which is used for I2S sound processing. The values are really using 3 bytes. It works only on little endian machines! More... | |
| class | int24_4bytes_t |
| 24bit integer which is used for I2S sound processing. The values are represented as int32_t, but only 3 bytes are used. If you assign values which are too big, they are clipped. More... | |
| class | MovingAverage< N > |
| Caclulates the moving average of a number of values. More... | |
| class | NumberConverter |
| Converts from a source to a target number with a different type. More... | |
| class | q1_14_t |
| Fixed-point Q1.14 number: a plain 16-bit signed integer holding 1 integer bit and 14 fractional bits (value = raw / 16384.0). Covers the range [-2.0, 1.99993896484375] with a resolution of ~6.1e-5, using only integer add/sub/mul/div – no hardware floating-point instructions. More... | |
Typedefs | |
| using | Pins = Vector< int > |
| Type alias for a collection of pin numbers. | |
| using | sample_rate_t = uint32_t |
| Type alias for sample rate values. | |
Enumerations | |
| enum | MemoryType { RAM , PS_RAM , FLASH_RAM } |
| Memory types. More... | |
| enum class | MTSStreamType { NONE = 0x00 , VIDEO = 0x01 , VIDEO_H262 = 0x02 , AUDIO_MP3 = 0x03 , AUDIO_MP3_LOW_BITRATE = 0x04 , PRV_SECTIONS = 0x05 , PES_PRV = 0x06 , MHEG = 0x07 , H222_0_DSM_CC = 0x08 , H222_1 = 0x09 , A = 0x0A , B = 0x0B , C = 0x0C , D = 0x0D , H222_0_AUX = 0x0E , AUDIO_AAC = 0x0F , VISUAL = 0x10 , AUDIO_AAC_LATM = 0x11 , SL_PES = 0x12 , SL_SECTIONS = 0x13 , SYNC_DOWNLOAD = 0x14 , PES_METADATA = 0x15 , METDATA_SECTIONS = 0x16 , METADATA_DATA_CAROUSEL = 0x17 , METADATA_OBJ_CAROUSEL = 0x18 , METADATA_SYNC_DOWNLOAD = 0x19 , IPMP = 0x1A , VIDEO_AVC = 0X1B , VIDEO_H222_0 = 0x1C , DCII_VIDEO = 0x80 , AUDIO_A53 = 0x81 , SCTE_STD_SUBTITLE = 0x82 , SCTE_ISOCH_DATA = 0x83 , ATSC_PROG_ID = 0x85 , SCTE_25 = 0x86 , AUDIO_EAC3 = 0x87 , AUDIO_DTS_HD = 0x88 , DVB_MPE_FEC = 0x90 , ULE = 0x91 , VEI = 0x92 , ATSC_DATA_SERVICE_TABLE = 0x95 , SCTE_IP_DATA = 0xA0 , DCII_TEXT = 0xC0 , ATSC_SYNC_DATA = 0xC2 , SCTE_AYSNC_DATA = 0xC3 , ATSC_USER_PRIV_PROG_ELEMENTS = 0xC4 , VC1 = 0xEA , ATSC_USER_PRIV = 0xEB } |
| PMT Program Element Stream Types. More... | |
| enum | RxTxMode { UNDEFINED_MODE = 0 , TX_MODE = 1 , RX_MODE = 2 , RXTX_MODE = 3 } |
| The Microcontroller is the Audio Source (TX_MODE) or Audio Sink (RX_MODE). RXTX_MODE is Source and Sink at the same time! More... | |
| enum | TimeUnit { MS , US , HZ } |
| Time Units. More... | |
Functions | |
| static void | checkMemory (bool printMemory=false) |
| Executes heap_caps_check_integrity_all() | |
| void | stop () |
| stops any further processing by spinning in an endless loop | |
| void | waitFor (bool &flag) |
| wait for flag to be active | |
Basic Concepts.
| using sample_rate_t = uint32_t |
Type alias for sample rate values.
| enum MemoryType |
|
strong |
PMT Program Element Stream Types.
| enum RxTxMode |
| enum TimeUnit |
|
inlinestatic |
Executes heap_caps_check_integrity_all()
|
inline |
stops any further processing by spinning in an endless loop
|
inline |
wait for flag to be active