Restrict audio sample rate settings to allowed values (#1116)
This commit is contained in:
parent
65c64c4504
commit
13aad1a7cb
@ -89,6 +89,7 @@ namespace AppScaffolding
|
|||||||
|
|
||||||
Migrations.migrate_to_v6_6_9(config);
|
Migrations.migrate_to_v6_6_9(config);
|
||||||
Migrations.migrate_to_v11_5_0(config);
|
Migrations.migrate_to_v11_5_0(config);
|
||||||
|
Migrations.migrate_to_v11_6_5(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Initialize logging. Wire-up events. Run after migration</summary>
|
/// <summary>Initialize logging. Wire-up events. Run after migration</summary>
|
||||||
@ -413,6 +414,15 @@ namespace AppScaffolding
|
|||||||
public List<string> Filters { get; set; } = new();
|
public List<string> Filters { get; set; } = new();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void migrate_to_v11_6_5(Configuration config)
|
||||||
|
{
|
||||||
|
//Settings migration for unsupported sample rates (#1116)
|
||||||
|
if (config.MaxSampleRate < AAXClean.SampleRate.Hz_8000)
|
||||||
|
config.MaxSampleRate = AAXClean.SampleRate.Hz_8000;
|
||||||
|
else if (config.MaxSampleRate > AAXClean.SampleRate.Hz_48000)
|
||||||
|
config.MaxSampleRate = AAXClean.SampleRate.Hz_48000;
|
||||||
|
}
|
||||||
|
|
||||||
public static void migrate_to_v11_5_0(Configuration config)
|
public static void migrate_to_v11_5_0(Configuration config)
|
||||||
{
|
{
|
||||||
// Read file, but convert old format to new (with Name field) as necessary.
|
// Read file, but convert old format to new (with Name field) as necessary.
|
||||||
|
|||||||
@ -25,7 +25,9 @@ namespace LibationAvalonia.ViewModels.Settings
|
|||||||
public NAudio.Lame.EncoderQuality SelectedEncoderQuality { get; set; }
|
public NAudio.Lame.EncoderQuality SelectedEncoderQuality { get; set; }
|
||||||
|
|
||||||
public AvaloniaList<EnumDiaplay<SampleRate>> SampleRates { get; }
|
public AvaloniaList<EnumDiaplay<SampleRate>> SampleRates { get; }
|
||||||
= new(Enum.GetValues<SampleRate>().Select(v => new EnumDiaplay<SampleRate>(v, $"{(int)v} Hz")));
|
= new(Enum.GetValues<SampleRate>()
|
||||||
|
.Where(r => r >= SampleRate.Hz_8000 && r <= SampleRate.Hz_48000)
|
||||||
|
.Select(v => new EnumDiaplay<SampleRate>(v, $"{(int)v} Hz")));
|
||||||
|
|
||||||
public AvaloniaList<NAudio.Lame.EncoderQuality> EncoderQualities { get; }
|
public AvaloniaList<NAudio.Lame.EncoderQuality> EncoderQualities { get; }
|
||||||
= new(
|
= new(
|
||||||
|
|||||||
@ -41,6 +41,7 @@ namespace LibationWinForms.Dialogs
|
|||||||
|
|
||||||
maxSampleRateCb.Items.AddRange(
|
maxSampleRateCb.Items.AddRange(
|
||||||
Enum.GetValues<AAXClean.SampleRate>()
|
Enum.GetValues<AAXClean.SampleRate>()
|
||||||
|
.Where(r => r >= AAXClean.SampleRate.Hz_8000 && r <= AAXClean.SampleRate.Hz_48000)
|
||||||
.Select(v => new EnumDiaplay<AAXClean.SampleRate>(v, $"{(int)v} Hz"))
|
.Select(v => new EnumDiaplay<AAXClean.SampleRate>(v, $"{(int)v} Hz"))
|
||||||
.ToArray());
|
.ToArray());
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user