Files
alicerc/AliceRC_ESP32/components/audio/audio.h
T

41 lines
757 B
C

/**
* @file audio.h
* @brief Audio driver for PWM/DAC audio output
*/
#pragma once
#include <stdint.h>
#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