@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
@@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Next engine
- Use `overlay_qsv` for hardware-accelerated watermarks and image subtitles
- Support multiple watermarks (still only `permanent` and `intermittent` modes, not `opacity expression`)
- Support image graphics elements that do not use an opacity expression
### Changed
- Upgrade Mesa driver in docker from 25.2.8 to 26.0.3 to fix issues with hevc_vaapi encoder when using radeonsi driver
@ -358,7 +358,8 @@ public class GetPlayoutItemProcessByChannelNumberHandler : FFmpegProcessHandler<
@@ -358,7 +358,8 @@ public class GetPlayoutItemProcessByChannelNumberHandler : FFmpegProcessHandler<
@ -3,6 +3,7 @@ using ErsatzTV.Core.Domain.Filler;
@@ -3,6 +3,7 @@ using ErsatzTV.Core.Domain.Filler;
usingErsatzTV.Core.Domain.Scheduling;
usingErsatzTV.Core.Interfaces.FFmpeg;
usingMicrosoft.Extensions.Logging;
usingMicrosoft.Extensions.Logging.Abstractions;
namespaceErsatzTV.Core.FFmpeg;
@ -12,9 +13,14 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -12,9 +13,14 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
log.LogDebug("Checking for graphics elements at {Now}",now);
varresult=newList<PlayoutItemGraphicsElement>();
@ -25,7 +31,7 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -25,7 +31,7 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
// if (playoutItem.DisableWatermarks)
// {
// logger.LogDebug("Graphics elements are disabled by playout item");
// log.LogDebug("Graphics elements are disabled by playout item");
// return result;
// }
@ -41,21 +47,21 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -41,21 +47,21 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@ -63,16 +69,16 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -63,16 +69,16 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
break;
}
logger.LogDebug("Graphics elements are disabled by template deco during filler");
log.LogDebug("Graphics elements are disabled by template deco during filler");
result.Clear();
done=true;
break;
caseDecoMode.Disable:
logger.LogDebug("Graphics elements are disabled by template deco");
log.LogDebug("Graphics elements are disabled by template deco");
done=true;
break;
caseDecoMode.Inherit:
logger.LogDebug("Graphics elements will inherit from playout deco");
log.LogDebug("Graphics elements will inherit from playout deco");
break;
}
@ -92,21 +98,21 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -92,21 +98,21 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@ -114,16 +120,16 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
@@ -114,16 +120,16 @@ public class GraphicsElementSelector(IDecoSelector decoSelector, ILogger<Graphic
break;
}
logger.LogDebug("Graphics elements are disabled by playout deco during filler");
log.LogDebug("Graphics elements are disabled by playout deco during filler");
result.Clear();
done=true;
break;
caseDecoMode.Disable:
logger.LogDebug("Graphics elements are disabled by playout deco");
log.LogDebug("Graphics elements are disabled by playout deco");
done=true;
break;
caseDecoMode.Inherit:
logger.LogDebug("Graphics elements will inherit from channel and/or global setting");
log.LogDebug("Graphics elements will inherit from channel and/or global setting");
@ -34,6 +34,11 @@ public class TemplateDataRepository(IFileSystem fileSystem, IDbContextFactory<Tv
@@ -34,6 +34,11 @@ public class TemplateDataRepository(IFileSystem fileSystem, IDbContextFactory<Tv