Browse Source

feat: show errors over next fallback by default (#3016)

pull/3017/head
Jason Dove 5 days ago committed by GitHub
parent
commit
599dc5ea52
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      CHANGELOG.md
  2. 4
      ErsatzTV.Application/Streaming/ChannelConfigConverter.cs
  3. 19
      ErsatzTV.Core/Next/Config/ChannelConfig.cs

2
CHANGELOG.md

@ -21,6 +21,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). @@ -21,6 +21,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Optimize anamorphic pipelines by only performing one scale instead of two
- Optimize tonemapping pipelines by downscaling before tonemapping when possible
- Optimize QSV pipelines by merging consecutive vpp_qsv filters as much as possible (e.g. tonemap, scale and format using a single filter)
- Show error messages over black/silence fallback streams by default
- To disable, create the file `next/channel-config-overlays/default.json` in ETV's config folder with the contents `{"fallback":{"show_error":false}}`
### Fixed
- Next engine:

4
ErsatzTV.Application/Streaming/ChannelConfigConverter.cs

@ -159,6 +159,10 @@ public class ChannelConfigConverter(IConfigElementRepository configElementReposi @@ -159,6 +159,10 @@ public class ChannelConfigConverter(IConfigElementRepository configElementReposi
Audio = audioNormalization,
Video = videoNormalization,
Subtitle = subtitleNormalization
},
Fallback = new Fallback
{
ShowError = true
}
};
}

19
ErsatzTV.Core/Next/Config/ChannelConfig.cs

@ -22,6 +22,10 @@ namespace ErsatzTV.Core.Next.Config @@ -22,6 +22,10 @@ namespace ErsatzTV.Core.Next.Config
public partial class ChannelConfig
{
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyName("fallback")]
public Fallback? Fallback { get; set; }
[JsonPropertyName("ffmpeg")]
public Ffmpeg Ffmpeg { get; set; }
@ -32,6 +36,21 @@ namespace ErsatzTV.Core.Next.Config @@ -32,6 +36,21 @@ namespace ErsatzTV.Core.Next.Config
public Playout Playout { get; set; }
}
/// <summary>
/// Controls the content that replaces scheduled content when there is nothing to play
/// (a gap in the playout) or when the scheduled item fails
/// </summary>
public partial class Fallback
{
/// <summary>
/// Burn the reason for the fallback into the fallback video; this is always burned,
/// regardless of the normalization subtitle mode
/// </summary>
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyName("show_error")]
public bool? ShowError { get; set; }
}
public partial class Ffmpeg
{
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]

Loading…
Cancel
Save