diff options
| author | HiFiPHile <[email protected]> | 2026-08-25 11:30:51 +0200 |
|---|---|---|
| committer | HiFiPHile <[email protected]> | 2026-08-25 11:30:51 +0200 |
| commit | e2c6dcf20a55b74c763411ba2162884a346f52a6 (patch) | |
| tree | d80f5347a467aaee2e243af505b61b77daca6b6e /examples/host/audio_host/README.md | |
| parent | 934bc7d683272a0f439a0ea6fc76917ef6f931f1 (diff) | |
address copilot review findings
Signed-off-by: HiFiPHile <[email protected]>
Diffstat (limited to 'examples/host/audio_host/README.md')
| -rw-r--r-- | examples/host/audio_host/README.md | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/examples/host/audio_host/README.md b/examples/host/audio_host/README.md index 5413895a4..27e6425b8 100644 --- a/examples/host/audio_host/README.md +++ b/examples/host/audio_host/README.md @@ -52,8 +52,9 @@ make BOARD=<your_board> all ## Flashing ```bash -# Using CMake -ninja flash +# Using CMake: list the board-specific flash targets, then select one +ninja -t targets +ninja audio_host-jlink # example for a board with J-Link support # Using Make make BOARD=<your_board> flash @@ -111,5 +112,6 @@ Edit `src/tusb_config.h` to modify: ## Notes - While a stream is running, the driver keeps one isochronous transfer in flight and re-submits on completion, so transfers follow the endpoint's `bInterval`. `tuh_audio_capture_cb()` / `tuh_audio_playback_cb()` report each completed transfer; `tuh_audio_err_cb()` reports failures. The example restarts the failed stream automatically 100 ms after the error callback. +- Capture and playback streams in the same Audio Control instance must use the same sample rate. - `tuh_audio_read()` / `tuh_audio_write()` are non-blocking FIFO operations: they return the number of whole frames actually queued/read (0 when the FIFO is empty/full or the stream is not running), and `tuh_audio_read_available()` / `tuh_audio_write_available()` report the FIFO occupancy in frames. `tuh_audio_write()` only queues data; the playback transfer-completion chain sends it, or sends silence when the FIFO does not contain a complete polling interval without consuming the partial data. - Isochronous transfers require the host to poll `tuh_task()` continuously; the capture FIFO absorbs short scheduling gaps and overwrites the oldest frames when full. |
