mirror of
https://git.eden-emu.dev/archive/citron
synced 2026-04-01 17:08:31 -04:00
feat: Enhance audio renderer with new features and simplify Android UI indicators
Audio Core: - Add support for splitter previous volume reset (REV 13+) - Implement new audio processing time limits (REV 14-15) - Add voice channel resource limits and effect processing v3 - Support float biquad filters for improved audio quality - Enhance error handling to prevent audio system crashes Android UI: - Simplify FPS, RAM, and thermal indicator views - Remove complex backgrounds and icons for cleaner display - Reduce view sizes and improve text-based rendering - Maintain color-coded status indicators for performance metrics Core System: - Improve file system save data space handling - Enhance kernel synchronization error handling - Add new error modules and result codes - Fix potential infinite loops in handle operations These changes improve audio processing capabilities while providing a cleaner, more performant Android UI experience. Signed-off-by: Zephyron <zephyron@citron-emu.org>
This commit is contained in:
@@ -50,6 +50,8 @@ public:
|
||||
/* 0x30 */ f32 out_gain;
|
||||
/* 0x34 */ ParameterState state;
|
||||
/* 0x35 */ bool makeup_gain_enabled;
|
||||
/* 0x36 */ bool statistics_enabled;
|
||||
/* 0x37 */ bool statistics_reset;
|
||||
};
|
||||
static_assert(sizeof(ParameterVersion2) <= sizeof(EffectInfoBase::InParameterVersion2),
|
||||
"CompressorInfo::ParameterVersion2 has the wrong size!");
|
||||
@@ -69,6 +71,22 @@ public:
|
||||
static_assert(sizeof(State) <= sizeof(EffectInfoBase::State),
|
||||
"CompressorInfo::State has the wrong size!");
|
||||
|
||||
struct Statistics {
|
||||
f32 maximum_mean;
|
||||
f32 minimum_gain;
|
||||
std::array<f32, MaxChannels> last_samples;
|
||||
|
||||
void Reset(u16 channel_count) {
|
||||
maximum_mean = 0.0f;
|
||||
minimum_gain = 1.0f;
|
||||
for (u16 i = 0; i < channel_count; i++) {
|
||||
last_samples[i] = 0.0f;
|
||||
}
|
||||
}
|
||||
};
|
||||
static_assert(sizeof(Statistics) <= sizeof(EffectResultState),
|
||||
"CompressorInfo::Statistics has the wrong size!");
|
||||
|
||||
/**
|
||||
* Update the info with new parameters, version 1.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user