增加LilyGo T-Circle-S3和T-CameraPlus-S3的屏幕背光和低功耗模式 (#304)

* 增加LilyGo T-Circle-S3和T-CameraPlus-S3的屏幕背光和低功耗模式

* 增加LilyGo T-Circle-S3和T-CameraPlus-S3的屏幕背光和低功耗模式
This commit is contained in:
yusuhua
2025-03-08 02:21:05 +08:00
committed by GitHub
parent febcfefd19
commit a1bade4e0f
6 changed files with 127 additions and 14 deletions

View File

@@ -114,17 +114,13 @@ int Tcamerapluss3AudioCodec::Read(int16_t *dest, int samples){
return samples;
}
void AdjustTcamerapluss3Volume(const int16_t *input_data, int16_t *output_data, size_t samples, float volume){
for (size_t i = 0; i < samples; i++){
output_data[i] = (float)input_data[i] * volume;
}
}
int Tcamerapluss3AudioCodec::Write(const int16_t *data, int samples){
if (output_enabled_){
size_t bytes_read;
auto output_data = (int16_t *)malloc(samples * sizeof(int16_t));
AdjustTcamerapluss3Volume(data, output_data, samples, (float)(volume_ / 100.0));
for (size_t i = 0; i < samples; i++){
output_data[i] = (float)data[i] * (float)(volume_ / 100.0);
}
i2s_channel_write(tx_handle_, output_data, samples * sizeof(int16_t), &bytes_read, portMAX_DELAY);
free(output_data);
}