audio_feeder_compare

Example of the component jason-mao/av_processor v0.6.2
# audio_feeder_compare

This example compares two feeder playback paths:

- `direct`
  PCM frames are fed into `audio_feeder`, and the feeder writes decoded PCM directly to the output path.

- `elastic`
  PCM frames are fed into `audio_feeder`, and the feeder output is smoothed by the built-in `esp_elastic_pcm_buffer` integration.

## Input Conditions

- Board: a board supported by `esp_board_manager_adapter` with audio playback and SD card
- File: `/sdcard/feeder.pcm`
- PCM: `16 kHz / 16-bit / mono`
- Feed chunk: `2048 bytes` (`64 ms`)

## Features

- Reads raw PCM from SD card
- Simulates network jitter with random +/- delay
- Console switch between `direct` and `elastic`
- Uses the feeder path inside `audio_processor`
- Prints feeder elastic buffer runtime status in `status`

## Console Commands

```text
mode direct
mode elastic
play /sdcard/feeder.pcm
stop
vol 60
status
```

The example auto-starts in `direct` mode after boot, so you can hear the baseline path first and then switch to `elastic` for comparison.

To create a project from this example, run:

idf.py create-project-from-example "jason-mao/av_processor=0.6.2:audio_feeder_compare"

or download archive (~14.95 KB)