4#if defined(ESP32) && USE_LEGACY_I2S || defined(DOXYGEN)
10#include "driver/i2s.h"
11#include "esp_system.h"
13#ifndef I2S_MCLK_MULTIPLE_DEFAULT
14# define I2S_MCLK_MULTIPLE_DEFAULT ((i2s_mclk_multiple_t)0)
17#define IS_I2S_IMPLEMENTED
78 LOGE(
"Did not expect go get here");
107 LOGD(
"i2s_write %d -> %d bytes", size_bytes, result);
195 .intr_alloc_flags = 0,
211 LOGD(
"%s",
"I2S restarting");
215 LOGD(
"i2s_driver_install");
223#if ESP_IDF_VERSION > ESP_IDF_VERSION_VAL(4, 4, 0)
228 .data_out_num =
txPin,
229 .data_in_num =
rxPin};
236 LOGD(
"Using built in DAC");
242 LOGD(
"i2s_zero_dma_buffer");
255 const void *
src,
size_t size_bytes) {
258 switch (bits_per_sample) {
260 for (
j = 0;
j < size_bytes;
j++) {
276 for (
j = 0;
j < size_bytes / 2;
j++) {
292 for (
j = 0;
j < size_bytes / 4;
j++) {
308 for (
j = 0;
j < size_bytes / 4;
j++) {
326#pragma GCC diagnostic push
327#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
348 LOGE(
"unsupported mode");
352#pragma GCC diagnostic pop
386#if defined(USE_ANALOG)
390 LOGE(
"mode not supported");
395 LOGW(
"signal_type undefined");
#define LOGW(...)
Definition AudioLoggerIDF.h:29
#define TRACED()
Definition AudioLoggerIDF.h:31
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define TRACEE()
Definition AudioLoggerIDF.h:34
#define LOGD(...)
Definition AudioLoggerIDF.h:27
#define LOGE(...)
Definition AudioLoggerIDF.h:30
#define I2S_MCLK_MULTIPLE_DEFAULT
Definition I2SDriverESP32.h:14
#define portMAX_DELAY
Definition QueueZephyr.h:14
#define pdMS_TO_TICKS(ms)
Definition QueueZephyr.h:17
uint32_t TickType_t
Definition QueueZephyr.h:11
RxTxMode
The Microcontroller is the Audio Source (TX_MODE) or Audio Sink (RX_MODE). RXTX_MODE is Source and Si...
Definition AudioTypes.h:26
@ RXTX_MODE
Definition AudioTypes.h:26
@ TX_MODE
Definition AudioTypes.h:26
@ RX_MODE
Definition AudioTypes.h:26