Skip to content

Commit e14860c

Browse files
Fix typo
1 parent 49c2182 commit e14860c

File tree

9 files changed

+105
-104
lines changed

9 files changed

+105
-104
lines changed

MSUScripter/MSUScripter.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>
99
<ApplicationIcon>MSUScripterIcon.ico</ApplicationIcon>
1010
<PackageIcon>MSUScripterIcon.ico</PackageIcon>
11-
<Version>4.0.0-beta.3</Version>
11+
<Version>4.0.0-rc.1</Version>
1212
<RuntimeFrameworkVersion>8.0.0</RuntimeFrameworkVersion>
1313
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
1414
<LangVersion>12</LangVersion>

MSUScripter/Models/AnalysisDataOutput.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ namespace MSUScripter.Models;
22

33
public class AnalysisDataOutput
44
{
5-
public double? AvgDecibals { get; set; }
6-
public double? MaxDecibals { get; set; }
5+
public double? AvgDecibels { get; set; }
6+
public double? MaxDecibels { get; set; }
77
}

MSUScripter/Services/AudioAnalysisService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -250,8 +250,8 @@ public async Task<AnalysisDataOutput> AnalyzeAudio(string path)
250250

251251
return new AnalysisDataOutput()
252252
{
253-
AvgDecibals = ConvertToDecibel(average),
254-
MaxDecibals = ConvertToDecibel(maxPeak)
253+
AvgDecibels = ConvertToDecibel(average),
254+
MaxDecibels = ConvertToDecibel(maxPeak)
255255
};
256256
}
257257

MSUScripter/Services/ControlServices/AddSongWindowService.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -212,10 +212,10 @@ public void AnalyzeAudio()
212212
{
213213
var output = await audioAnalysisService.AnalyzeAudio(outputPath);
214214

215-
if (output is { AvgDecibals: not null, MaxDecibals: not null })
215+
if (output is { AvgDecibels: not null, MaxDecibels: not null })
216216
{
217-
_model.AverageAudio = $"Average: {Math.Round(output.AvgDecibals.Value, 2)}db";
218-
_model.PeakAudio = $"Peak: {Math.Round(output.MaxDecibals.Value, 2)}db";
217+
_model.AverageAudio = $"Average: {Math.Round(output.AvgDecibels.Value, 2)}db";
218+
_model.PeakAudio = $"Peak: {Math.Round(output.MaxDecibels.Value, 2)}db";
219219
}
220220
else
221221
{

MSUScripter/Services/ControlServices/AudioAnalysisWindowService.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ public void Run()
105105

106106
public void RunSong(AudioAnalysisSongViewModel song)
107107
{
108-
song.AvgDecibals = null;
109-
song.MaxDecibals = null;
108+
song.AvgDecibels = null;
109+
song.MaxDecibels = null;
110110
song.WarningMessage = "";
111111
song.HasLoaded = false;
112112

@@ -125,25 +125,25 @@ public void Stop()
125125

126126
public event EventHandler? Completed;
127127

128-
private double GetAverageRms() => Math.Round(_model.Rows.Where(x => x.AvgDecibals != null).Average(x => x.AvgDecibals) ?? 0, 4);
129-
private double GetAveragePeak() => Math.Round(_model.Rows.Where(x => x.MaxDecibals != null).Average(x => x.MaxDecibals) ?? 0, 4);
128+
private double GetAverageRms() => Math.Round(_model.Rows.Where(x => x.AvgDecibels != null).Average(x => x.AvgDecibels) ?? 0, 4);
129+
private double GetAveragePeak() => Math.Round(_model.Rows.Where(x => x.MaxDecibels != null).Average(x => x.MaxDecibels) ?? 0, 4);
130130

131131
private void CheckSongWarnings(AudioAnalysisSongViewModel song, double averageVolume, double maxVolume)
132132
{
133-
if (song.AvgDecibals != null && Math.Abs(song.AvgDecibals.Value - averageVolume) > 4)
133+
if (song.AvgDecibels != null && Math.Abs(song.AvgDecibels.Value - averageVolume) > 4)
134134
{
135135
song.WarningMessage =
136-
$"This song's average volume of {song.AvgDecibals} differs greatly from the average volume of all songs, {averageVolume}";
136+
$"This song's average volume of {song.AvgDecibels} differs greatly from the average volume of all songs, {averageVolume}";
137137
}
138-
else if (song.MaxDecibals != null && song.MaxDecibals - maxVolume > 4)
138+
else if (song.MaxDecibels != null && song.MaxDecibels - maxVolume > 4)
139139
{
140140
song.WarningMessage =
141-
$"This song's peak volume of {song.MaxDecibals} differs greatly from the average peak volume of all songs, {maxVolume}";
141+
$"This song's peak volume of {song.MaxDecibels} differs greatly from the average peak volume of all songs, {maxVolume}";
142142
}
143143
}
144144

145145
private void UpdateBottomMessage()
146146
{
147-
_model.BottomBar = $"{GetAverageRms()} Total Average Decibals | {GetAveragePeak()} Average Peak Decibals";
147+
_model.BottomBar = $"{GetAverageRms()} Total Average Decibels | {GetAveragePeak()} Average Peak Decibels";
148148
}
149149
}

MSUScripter/Services/ControlServices/MsuSongInfoPanelService.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,10 +166,10 @@ public void AnalyzeAudio()
166166
{
167167
var output = await audioAnalysisService.AnalyzeAudio(_model.OutputPath);
168168

169-
if (output is { AvgDecibals: not null, MaxDecibals: not null })
169+
if (output is { AvgDecibels: not null, MaxDecibels: not null })
170170
{
171-
_model.AverageAudio = $"Average: {Math.Round(output.AvgDecibals.Value, 2)}db";
172-
_model.PeakAudio = $"Peak: {Math.Round(output.MaxDecibals.Value, 2)}db";
171+
_model.AverageAudio = $"Average: {Math.Round(output.AvgDecibels.Value, 2)}db";
172+
_model.PeakAudio = $"Peak: {Math.Round(output.MaxDecibels.Value, 2)}db";
173173
}
174174
else
175175
{

MSUScripter/ViewModels/AudioAnalysisSongViewModel.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ public class AudioAnalysisSongViewModel : ViewModelBase
1616

1717
[Reactive] public string Path { get; set; } = "";
1818

19-
[Reactive] public double? AvgDecibals { get; set; }
19+
[Reactive] public double? AvgDecibels { get; set; }
2020

21-
[Reactive] public double? MaxDecibals { get; set; }
21+
[Reactive] public double? MaxDecibels { get; set; }
2222

2323
[Reactive] public bool HasLoaded { get; set; }
2424

@@ -30,8 +30,8 @@ public class AudioAnalysisSongViewModel : ViewModelBase
3030

3131
public void ApplyAudioAnalysis(AnalysisDataOutput data)
3232
{
33-
AvgDecibals = data.AvgDecibals;
34-
MaxDecibals = data.MaxDecibals;
33+
AvgDecibels = data.AvgDecibels;
34+
MaxDecibels = data.MaxDecibels;
3535
HasLoaded = true;
3636
}
3737

MSUScripter/ViewModels/AudioAnalysisViewModel.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,17 +35,17 @@ public override ViewModelBase DesignerExample()
3535
SongName = "Test Song Name",
3636
TrackNumber = 1,
3737
TrackName = "Track #1",
38-
AvgDecibals = -20,
39-
MaxDecibals = -10,
38+
AvgDecibels = -20,
39+
MaxDecibels = -10,
4040
HasLoaded = true
4141
},
4242
new AudioAnalysisSongViewModel()
4343
{
4444
SongName = "Test Song Name 2",
4545
TrackNumber = 2,
4646
TrackName = "Track #2",
47-
AvgDecibals = -21.25,
48-
MaxDecibals = -22,
47+
AvgDecibels = -21.25,
48+
MaxDecibels = -22,
4949
WarningMessage = "Could not fully load",
5050
HasLoaded = true
5151
},
Lines changed: 77 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,77 @@
1-
<Window xmlns="https://github.com/avaloniaui"
2-
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
3-
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
4-
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
5-
xmlns:viewModels="clr-namespace:MSUScripter.ViewModels"
6-
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"xmlns:controls="using:AvaloniaControls.Controls"
7-
mc:Ignorable="d" d:DesignWidth="500" d:DesignHeight="450"
8-
Width="768" Height="1024"
9-
x:Class="MSUScripter.Views.AudioAnalysisWindow"
10-
Title="Audio Analysis - MSU Scripter"
11-
x:DataType="viewModels:AudioAnalysisViewModel"
12-
Loaded="Control_OnLoaded"
13-
Unloaded="Control_OnUnloaded"
14-
WindowStartupLocation="CenterOwner"
15-
Icon="/Assets/MSUScripterIcon.ico"
16-
>
17-
<LayoutTransformControl Name="MainLayout">
18-
<DockPanel>
19-
<ProgressBar Name="MsuPcmProgressBar" DockPanel.Dock="Top"
20-
Minimum="0"
21-
Maximum="{Binding TotalSongs}"
22-
Value="{Binding SongsCompleted}"></ProgressBar>
23-
<controls:HeaderFooter DockPanel.Dock="Bottom">
24-
<Grid ColumnDefinitions="Auto, *">
25-
<Button Margin="5" Click="CompareButton_OnClick" IsVisible="{Binding ShowCompareButton}" IsEnabled="{Binding CompareEnabled}">
26-
Compare to Other MSU
27-
</Button>
28-
<TextBlock Grid.Column="2" Text="{Binding BottomBar}" TextAlignment="Right" VerticalAlignment="Center" Margin="5" />
29-
</Grid>
30-
</controls:HeaderFooter>
31-
32-
<DataGrid Name="AudioDataGrid"
33-
ItemsSource="{Binding Rows}"
34-
AutoGenerateColumns="False"
35-
CanUserReorderColumns="False"
36-
CanUserResizeColumns="True"
37-
IsReadOnly="True"
38-
RowBackground="{DynamicResource CardBackground}"
39-
SelectionMode="Single"
40-
BorderThickness="0"
41-
>
42-
<DataGrid.Columns>
43-
<DataGridTemplateColumn Header="">
44-
<DataGridTemplateColumn.CellTemplate>
45-
<DataTemplate>
46-
<Button Name="RefreshSongButton"
47-
Tag="{Binding}"
48-
IsEnabled="{Binding HasLoaded}"
49-
IsVisible="{Binding CanRefresh}"
50-
Click="RefreshSongButton_OnClick">
51-
<avalonia:MaterialIcon Kind="Refresh" ></avalonia:MaterialIcon>
52-
</Button>
53-
</DataTemplate>
54-
</DataGridTemplateColumn.CellTemplate>
55-
</DataGridTemplateColumn>
56-
<DataGridTemplateColumn Header="">
57-
<DataGridTemplateColumn.CellTemplate>
58-
<DataTemplate>
59-
<avalonia:MaterialIcon Kind="Alert"
60-
Foreground="Goldenrod"
61-
IsVisible="{Binding HasWarning}"
62-
ToolTip.Tip="{Binding WarningMessage}"
63-
></avalonia:MaterialIcon>
64-
</DataTemplate>
65-
</DataGridTemplateColumn.CellTemplate>
66-
</DataGridTemplateColumn>
67-
<DataGridTextColumn Header="Track" Binding="{Binding TrackNumber}"/>
68-
<DataGridTextColumn Header="Track Name" Binding="{Binding TrackName}"/>
69-
<DataGridTextColumn Header="File" Binding="{Binding SongName}"/>
70-
<DataGridTextColumn Header="Average Volume" Binding="{Binding AvgDecibals}"/>
71-
<DataGridTextColumn Header="Peak Volume" Binding="{Binding MaxDecibals}"/>
72-
</DataGrid.Columns>
73-
</DataGrid>
74-
</DockPanel>
75-
</LayoutTransformControl>
76-
</Window>
1+
<Window xmlns="https://github.com/avaloniaui"
2+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
3+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
4+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
5+
xmlns:viewModels="clr-namespace:MSUScripter.ViewModels"
6+
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
7+
xmlns:controls="using:AvaloniaControls.Controls"
8+
mc:Ignorable="d" d:DesignWidth="500" d:DesignHeight="450"
9+
Width="768" Height="1024"
10+
x:Class="MSUScripter.Views.AudioAnalysisWindow"
11+
Title="Audio Analysis - MSU Scripter"
12+
x:DataType="viewModels:AudioAnalysisViewModel"
13+
Loaded="Control_OnLoaded"
14+
Unloaded="Control_OnUnloaded"
15+
WindowStartupLocation="CenterOwner"
16+
Icon="/Assets/MSUScripterIcon.ico"
17+
>
18+
<LayoutTransformControl Name="MainLayout">
19+
<DockPanel>
20+
<ProgressBar Name="MsuPcmProgressBar" DockPanel.Dock="Top"
21+
Minimum="0"
22+
Maximum="{Binding TotalSongs}"
23+
Value="{Binding SongsCompleted}"></ProgressBar>
24+
<controls:HeaderFooter DockPanel.Dock="Bottom">
25+
<Grid ColumnDefinitions="Auto, *">
26+
<Button Margin="5" Click="CompareButton_OnClick" IsVisible="{Binding ShowCompareButton}" IsEnabled="{Binding CompareEnabled}">
27+
Compare to Other MSU
28+
</Button>
29+
<TextBlock Grid.Column="2" Text="{Binding BottomBar}" TextAlignment="Right" VerticalAlignment="Center" Margin="5" />
30+
</Grid>
31+
</controls:HeaderFooter>
32+
33+
<DataGrid Name="AudioDataGrid"
34+
ItemsSource="{Binding Rows}"
35+
AutoGenerateColumns="False"
36+
CanUserReorderColumns="False"
37+
CanUserResizeColumns="True"
38+
IsReadOnly="True"
39+
RowBackground="{DynamicResource CardBackground}"
40+
SelectionMode="Single"
41+
BorderThickness="0"
42+
>
43+
<DataGrid.Columns>
44+
<DataGridTemplateColumn Header="">
45+
<DataGridTemplateColumn.CellTemplate>
46+
<DataTemplate>
47+
<Button Name="RefreshSongButton"
48+
Tag="{Binding}"
49+
IsEnabled="{Binding HasLoaded}"
50+
IsVisible="{Binding CanRefresh}"
51+
Click="RefreshSongButton_OnClick">
52+
<avalonia:MaterialIcon Kind="Refresh" ></avalonia:MaterialIcon>
53+
</Button>
54+
</DataTemplate>
55+
</DataGridTemplateColumn.CellTemplate>
56+
</DataGridTemplateColumn>
57+
<DataGridTemplateColumn Header="">
58+
<DataGridTemplateColumn.CellTemplate>
59+
<DataTemplate>
60+
<avalonia:MaterialIcon Kind="Alert"
61+
Foreground="Goldenrod"
62+
IsVisible="{Binding HasWarning}"
63+
ToolTip.Tip="{Binding WarningMessage}"
64+
></avalonia:MaterialIcon>
65+
</DataTemplate>
66+
</DataGridTemplateColumn.CellTemplate>
67+
</DataGridTemplateColumn>
68+
<DataGridTextColumn Header="Track" Binding="{Binding TrackNumber}"/>
69+
<DataGridTextColumn Header="Track Name" Binding="{Binding TrackName}"/>
70+
<DataGridTextColumn Header="File" Binding="{Binding SongName}"/>
71+
<DataGridTextColumn Header="Average Volume" Binding="{Binding AvgDecibels}"/>
72+
<DataGridTextColumn Header="Peak Volume" Binding="{Binding MaxDecibels}"/>
73+
</DataGrid.Columns>
74+
</DataGrid>
75+
</DockPanel>
76+
</LayoutTransformControl>
77+
</Window>

0 commit comments

Comments
 (0)