diff --git a/clients/apple/iOS/VoiceCatiOS/Views/PerUserTuningView.swift b/clients/apple/iOS/VoiceCatiOS/Views/PerUserTuningView.swift index b520994..114d46a 100644 --- a/clients/apple/iOS/VoiceCatiOS/Views/PerUserTuningView.swift +++ b/clients/apple/iOS/VoiceCatiOS/Views/PerUserTuningView.swift @@ -20,7 +20,7 @@ struct PerUserTuningView: View { Section("Volume") { HStack { Text("Gain") - Slider(value: $gain, in: 0...2, step: 0.05) { _ in + Slider(value: $gain, in: 0...4, step: 0.05) { _ in applyToAllStreams() } .accessibilityLabel("Volume gain for \(user.nickname)") diff --git a/clients/apple/iOS/VoiceCatiOS/Views/SettingsView.swift b/clients/apple/iOS/VoiceCatiOS/Views/SettingsView.swift index d680d8a..b310262 100644 --- a/clients/apple/iOS/VoiceCatiOS/Views/SettingsView.swift +++ b/clients/apple/iOS/VoiceCatiOS/Views/SettingsView.swift @@ -246,7 +246,7 @@ struct SettingsView: View { get: { Double(session.voiceState.inputGain) }, set: { session.setInputGain(Float($0)) } ), - in: 0...3, step: 0.05 + in: 0...4, step: 0.05 ) .accessibilityLabel("Microphone volume") .accessibilityValue("\(Int((session.voiceState.inputGain * 100).rounded())) percent") diff --git a/clients/apple/macOS/VoiceCatMac/Sheets/PerUserTuningSheet.swift b/clients/apple/macOS/VoiceCatMac/Sheets/PerUserTuningSheet.swift index 5e38390..84680a2 100644 --- a/clients/apple/macOS/VoiceCatMac/Sheets/PerUserTuningSheet.swift +++ b/clients/apple/macOS/VoiceCatMac/Sheets/PerUserTuningSheet.swift @@ -49,7 +49,7 @@ final class PerUserTuningSheet: NSViewController { let muted = state?.muted ?? false let nr = state?.noiseReduction ?? false - let gainSlider = NSSlider(value: Double(gain * 100), minValue: 0, maxValue: 200, target: self, action: #selector(sliderChanged)) + let gainSlider = NSSlider(value: Double(gain * 100), minValue: 0, maxValue: 400, target: self, action: #selector(sliderChanged)) gainSlider.tag = Int(stream.id) gainSlider.numberOfTickMarks = 0 gainSlider.setAccessibilityLabel("Volume for \(stream.label): \(Int(gain * 100)) percent") diff --git a/clients/apple/macOS/VoiceCatMac/Windows/SettingsWindowController.swift b/clients/apple/macOS/VoiceCatMac/Windows/SettingsWindowController.swift index 47f4240..64ec3af 100644 --- a/clients/apple/macOS/VoiceCatMac/Windows/SettingsWindowController.swift +++ b/clients/apple/macOS/VoiceCatMac/Windows/SettingsWindowController.swift @@ -50,9 +50,9 @@ final class SettingsWindowController: NSWindowController, NSWindowDelegate { // Cached VAD slider position so we can restore it when the window reopens. private var vadSliderValue: Double = 50 - // Mic input gain: 0–300 % (100 = unity). Persisted via MainWindowController.inputGain. + // Mic input gain: 0–400 % (100 = unity). Persisted via MainWindowController.inputGain. private let inputGainSlider: NSSlider = { - let s = NSSlider(value: 100, minValue: 0, maxValue: 300, target: nil, action: nil) + let s = NSSlider(value: 100, minValue: 0, maxValue: 400, target: nil, action: nil) s.numberOfTickMarks = 0 return s }() @@ -77,7 +77,7 @@ final class SettingsWindowController: NSWindowController, NSWindowDelegate { private let auxDevicePicker = NSPopUpButton() private let auxRefreshButton = NSButton() private let auxGainSlider: NSSlider = { - let s = NSSlider(value: 100, minValue: 0, maxValue: 300, target: nil, action: nil) + let s = NSSlider(value: 100, minValue: 0, maxValue: 400, target: nil, action: nil) s.numberOfTickMarks = 0 return s }() diff --git a/clients/windows/VoiceCat.App/Forms/AudioSettingsForm.cs b/clients/windows/VoiceCat.App/Forms/AudioSettingsForm.cs index 6b51cb0..58ac293 100644 --- a/clients/windows/VoiceCat.App/Forms/AudioSettingsForm.cs +++ b/clients/windows/VoiceCat.App/Forms/AudioSettingsForm.cs @@ -194,15 +194,15 @@ public sealed class AudioSettingsForm : Form Location = new Point(12, 288), Size = new Size(200, 45), Minimum = 0, - Maximum = 300, + Maximum = 400, TickFrequency = 25, SmallChange = 5, LargeChange = 25, - Value = Math.Clamp(settings.MicGain, 0, 300), + Value = Math.Clamp(settings.MicGain, 0, 400), }; _trkGain.AccessibleName = "Microphone volume"; _trkGain.AccessibleDescription = - "Boost a quiet microphone. 100 is unity gain; range 0–300 percent."; + "Boost a quiet microphone. 100 is unity gain; range 0–400 percent."; _trkGain.Scroll += TrkGain_Scroll; // ── Mic noise reduction ─────────────────────────────────────────────── @@ -290,15 +290,15 @@ public sealed class AudioSettingsForm : Form Location = new Point(12, 510), Size = new Size(200, 45), Minimum = 0, - Maximum = 300, + Maximum = 400, TickFrequency = 25, SmallChange = 5, LargeChange = 25, - Value = Math.Clamp(settings.AuxGain, 0, 300), + Value = Math.Clamp(settings.AuxGain, 0, 400), }; _trkAuxGain.AccessibleName = "Aux volume"; _trkAuxGain.AccessibleDescription = - "Volume of the aux input stream. 100 is unity gain; range 0–300 percent."; + "Volume of the aux input stream. 100 is unity gain; range 0–400 percent."; _trkAuxGain.Scroll += TrkAuxGain_Scroll; // ── OK / Cancel ─────────────────────────────────────────────────────── diff --git a/clients/windows/VoiceCat.App/Forms/PerUserTuningDialog.cs b/clients/windows/VoiceCat.App/Forms/PerUserTuningDialog.cs index b7de3c3..072925e 100644 --- a/clients/windows/VoiceCat.App/Forms/PerUserTuningDialog.cs +++ b/clients/windows/VoiceCat.App/Forms/PerUserTuningDialog.cs @@ -117,11 +117,11 @@ public sealed class PerUserTuningDialog : Form var trkGain = new TrackBar { AccessibleName = $"Gain for {s.Label}", - AccessibleDescription = "Volume level for this stream. 100 is normal (1.0×), 200 is double.", + AccessibleDescription = "Volume level for this stream. 100 is normal (1.0×); range 0–400 percent.", Location = new Point(12, y + 20), Size = new Size(260, 45), Minimum = 0, - Maximum = 200, + Maximum = 400, Value = ClampToTrack(gain0), TickFrequency = 25, SmallChange = 5, @@ -186,7 +186,7 @@ public sealed class PerUserTuningDialog : Form private static int ClampToTrack(float gain) { int v = (int)Math.Round(gain * 100f); - return Math.Max(0, Math.Min(200, v)); + return Math.Max(0, Math.Min(400, v)); } private sealed class StreamRow diff --git a/clients/windows/VoiceCat.App/Models/VoiceSettings.cs b/clients/windows/VoiceCat.App/Models/VoiceSettings.cs index 05dbe52..e1fe45f 100644 --- a/clients/windows/VoiceCat.App/Models/VoiceSettings.cs +++ b/clients/windows/VoiceCat.App/Models/VoiceSettings.cs @@ -18,7 +18,7 @@ public sealed class VoiceSettings /// VAD sensitivity slider position, 1–100 (default mirrors the designer's 76). public int VadThresholdSlider { get; set; } = 76; - /// Microphone input gain slider position, 0–300 percent (100 = unity). + /// Microphone input gain slider position, 0–400 percent (100 = unity). public int MicGain { get; set; } = 100; /// Send-side mic noise reduction (RNNoise) toggle. MIC stream only, mono only; @@ -48,7 +48,7 @@ public sealed class VoiceSettings /// NOT a core/miniaudio id — the aux device is opened client-side, so the two id spaces differ. public string? AuxDeviceId { get; set; } = null; - /// Aux input volume slider position, 0–300 percent (100 = unity). Applied client-side + /// Aux input volume slider position, 0–400 percent (100 = unity). Applied client-side /// to the captured PCM before feeding (the core's input gain is mic-only and global). public int AuxGain { get; set; } = 100;