remove dynaudnorm filter (#1573)

This commit is contained in:
Jason Dove
2024-01-25 19:56:14 -06:00
committed by GitHub
parent 60b3bc92f4
commit 45c04366c9
12 changed files with 9897 additions and 10 deletions
+3
View File
@@ -48,6 +48,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- In schedule items, disambiguate seasons from shows with the same title by including show year
- Old format: `Show Title (Season Number)`
- New format: `Show Title (Show Year) - Season Number`
- Remove FFmpeg Profile `Normalize Loudness` option `dynaudnorm` as it often caused streams to fail to start
- Disable loudness normalization by default in new FFmpeg Profiles
- Use AAC audio format by default in new FFmpeg Profiles
## [0.8.4-beta] - 2023-12-02
### Fixed
+2 -2
View File
@@ -35,12 +35,12 @@ public record FFmpegProfile
ResolutionId = resolution.Id,
Resolution = resolution,
VideoFormat = FFmpegProfileVideoFormat.H264,
AudioFormat = FFmpegProfileAudioFormat.Ac3,
AudioFormat = FFmpegProfileAudioFormat.Aac,
VideoBitrate = 2000,
VideoBufferSize = 4000,
AudioBitrate = 192,
AudioBufferSize = 384,
NormalizeLoudnessMode = NormalizeLoudnessMode.DynAudNorm,
NormalizeLoudnessMode = NormalizeLoudnessMode.Off,
AudioChannels = 2,
AudioSampleRate = 48,
DeinterlaceVideo = true,
@@ -3,6 +3,5 @@ namespace ErsatzTV.Core.Domain;
public enum NormalizeLoudnessMode
{
Off = 0,
LoudNorm = 1,
DynAudNorm = 2
LoudNorm = 1
}
@@ -153,7 +153,6 @@ public class FFmpegLibraryProcessService : IFFmpegProcessService
playbackSettings.NormalizeLoudnessMode switch
{
NormalizeLoudnessMode.LoudNorm => AudioFilter.LoudNorm,
NormalizeLoudnessMode.DynAudNorm => AudioFilter.DynAudNorm,
_ => AudioFilter.None
});
+1 -2
View File
@@ -3,6 +3,5 @@ namespace ErsatzTV.FFmpeg;
public enum AudioFilter
{
None = 0,
LoudNorm = 1,
DynAudNorm = 2
LoudNorm = 1
}
@@ -9,7 +9,6 @@ public class NormalizeLoudnessFilter : BaseFilter
public override string Filter => _loudnessFilter switch
{
AudioFilter.LoudNorm => "loudnorm=I=-16:TP=-1.5:LRA=11",
AudioFilter.DynAudNorm => "dynaudnorm",
_ => string.Empty
};
@@ -635,7 +635,6 @@ public abstract class PipelineBuilderBase : IPipelineBuilder
initialBurst = filter switch
{
AudioFilter.LoudNorm => 5,
AudioFilter.DynAudNorm => 15,
_ => 0
};
}
@@ -0,0 +1,21 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace ErsatzTV.Infrastructure.MySql.Migrations
{
/// <inheritdoc />
public partial class Remove_FFmpegProfileDynaudnorm : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql("UPDATE FFmpegProfile SET NormalizeLoudnessMode = 1 WHERE NormalizeLoudnessMode = 2");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
}
}
}
@@ -0,0 +1,21 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace ErsatzTV.Infrastructure.Sqlite.Migrations
{
/// <inheritdoc />
public partial class Remove_FFmpegProfileDynaudnorm : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql("UPDATE FFmpegProfile SET NormalizeLoudnessMode = 1 WHERE NormalizeLoudnessMode = 2");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
}
}
}
-1
View File
@@ -138,7 +138,6 @@
<MudSelect Label="Normalize Loudness" @bind-Value="_model.NormalizeLoudnessMode" For="@(() => _model.NormalizeLoudnessMode)">
<MudSelectItem Value="@NormalizeLoudnessMode.Off">Off</MudSelectItem>
<MudSelectItem Value="@NormalizeLoudnessMode.LoudNorm">loudnorm</MudSelectItem>
<MudSelectItem Value="@NormalizeLoudnessMode.DynAudNorm">dynaudnorm</MudSelectItem>
</MudSelect>
</MudElement>
</MudItem>