/** * @file audio.h * @brief Audio driver for PWM/DAC audio output */ #pragma once #include #include "esp_err.h" #ifdef __cplusplus extern "C" { #endif /* Audio sample rate */ #define AUDIO_SAMPLE_RATE 8000 /* Initialize audio output (PWM for ESP32S3, DAC for ESP32) */ esp_err_t audio_init(int gpio); /* Play a beep/tone */ void audio_beep(uint16_t freq_hz, uint16_t duration_ms); /* Play a startup sound */ void audio_play_startup(void); /* Play a warning beep */ void audio_play_warning(void); /* Set volume (0-100) */ void audio_set_volume(uint8_t volume); /* Get current volume */ uint8_t audio_get_volume(void); /* Audio task for continuous audio playback */ void audio_task(void *pvParameters); #ifdef __cplusplus } #endif