Revert "Fix UI polish: scrollbar deselect, web source inline buttons, countdown in Sources, volume click-to-position, meter decay"

This reverts commit dc91c855ef.
This commit is contained in:
2026-08-17 17:59:43 -07:00
parent b7b015b12b
commit c7d4b3b6d9
6 changed files with 48 additions and 65 deletions
+4 -14
View File
@@ -1,27 +1,18 @@
namespace ytLive.Services.Audio;
/// <summary>
/// Computes the smoothed level (0..1) from captured samples. Pure —
/// Computes the smoothed mic level (0..1) from captured samples. Pure —
/// unit-tested; the <see cref="AudioMixer"/> only feeds it and forwards the
/// result. RMS-based so it tracks perceived loudness, smoothed so the meter
/// does not flicker. Supports asymmetric smoothing: fast attack (rise) and
/// configurable decay (fall) so the meter responds quickly to silence.
/// does not flicker.
/// </summary>
public sealed class AudioLevelMeter
{
private const float Smoothing = 0.2f;
private float _level;
public float Level => _level;
public AudioLevelMeter(float attackSmoothing = 0.2f, float decaySmoothing = 0.08f)
{
AttackSmoothing = attackSmoothing;
DecaySmoothing = decaySmoothing;
}
public float AttackSmoothing { get; }
public float DecaySmoothing { get; }
/// <summary>
/// Maps a linear level (0..1) onto the meter's display scale: -60 dBFS..0 dBFS
/// spread linearly across 0..1, with +10 dB of input amplification. Linear RMS
@@ -53,8 +44,7 @@ public sealed class AudioLevelMeter
}
var rms = (float)Math.Sqrt(sumSquares / count);
var smoothing = rms > _level ? AttackSmoothing : DecaySmoothing;
_level = _level * (1 - smoothing) + rms * smoothing;
_level = _level * (1 - Smoothing) + rms * Smoothing;
return _level;
}
+1 -1
View File
@@ -57,7 +57,7 @@ public sealed class AudioMixer : IDisposable
_mic = mic;
_loopback = loopback;
_meter = new AudioLevelMeter();
_loopbackMeter = new AudioLevelMeter(attackSmoothing: 0.2f, decaySmoothing: 0.08f);
_loopbackMeter = new AudioLevelMeter();
_log = log;
_micGain = micGain;
_loopbackGain = loopbackGain;