mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 18:43:51 +00:00
Add audio buffer setting and optimize overlays
This commit is contained in:
@@ -286,6 +286,8 @@ type
|
||||
procedure LoadWindowBounds(out L, T, W, H: Integer);
|
||||
procedure SaveStartupPreview(VfoA, VfoB: Double; SampleRate: Integer);
|
||||
function LoadStartupPreview(out VfoA, VfoB: Double; out SampleRate: Integer): Boolean;
|
||||
procedure SaveAudioBufferSize(BufferSize: Integer);
|
||||
function LoadAudioBufferSize: Integer;
|
||||
// CAT settings — не привязаны к MAC, хранятся в корне JSON (доступны до подключения)
|
||||
procedure SaveCATSettings(const G: TGlobalSettings);
|
||||
procedure LoadCATSettings(var G: TGlobalSettings);
|
||||
@@ -798,6 +800,27 @@ begin
|
||||
SampleRate := JI(O, 'sample_rate', 192000);
|
||||
end;
|
||||
|
||||
procedure TSettingsManager.SaveAudioBufferSize(BufferSize: Integer);
|
||||
var O: TJSONObject;
|
||||
begin
|
||||
if BufferSize <= 128 then BufferSize := 128
|
||||
else if BufferSize <= 256 then BufferSize := 256
|
||||
else BufferSize := 512;
|
||||
O := EnsureObj(FRoot, 'audio');
|
||||
JW(O, 'output_buffer_size', BufferSize);
|
||||
end;
|
||||
|
||||
function TSettingsManager.LoadAudioBufferSize: Integer;
|
||||
var O: TJSONObject;
|
||||
begin
|
||||
if FRoot.Find('audio') = nil then Exit(128);
|
||||
O := EnsureObj(FRoot, 'audio');
|
||||
Result := JI(O, 'output_buffer_size', 128);
|
||||
if Result <= 128 then Result := 128
|
||||
else if Result <= 256 then Result := 256
|
||||
else Result := 512;
|
||||
end;
|
||||
|
||||
procedure TSettingsManager.SaveCATSettings(const G: TGlobalSettings);
|
||||
var O: TJSONObject; i: Integer;
|
||||
begin
|
||||
|
||||
Reference in New Issue
Block a user