Browse Source

fix intel vaapi pgs subtitle pixel format (#1455)

pull/1456/head
Jason Dove 2 years ago committed by GitHub
parent
commit
46bf9ef990
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      CHANGELOG.md
  2. 8
      ErsatzTV.FFmpeg/Filter/Vaapi/VaapiSubtitlePixelFormatFilter.cs
  3. 2
      ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs

1
CHANGELOG.md

@ -21,6 +21,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). @@ -21,6 +21,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Fix NVIDIA subtitle scaling when `scale_npp` filter is unavailable
- Remove ffmpeg and ffprobe as required dependencies for scanning media server libraries
- Note that ffmpeg is still *always* required for playback to work
- Fix PGS subtitle pixel format with Intel VAAPI
### Changed
- Upgrade ffmpeg to 6.1, which is now *required* for all installs

8
ErsatzTV.FFmpeg/Filter/Vaapi/VaapiSubtitlePixelFormatFilter.cs

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
namespace ErsatzTV.FFmpeg.Filter.Vaapi;
public class VaapiSubtitlePixelFormatFilter : BaseFilter
{
public override FrameState NextState(FrameState currentState) => currentState;
public override string Filter => "format=vaapi|yuva420p|yuva444p|yuva422p|rgba|abgr|bgra|gbrap|ya8";
}

2
ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs

@ -436,7 +436,7 @@ public class VaapiPipelineBuilder : SoftwarePipelineBuilder @@ -436,7 +436,7 @@ public class VaapiPipelineBuilder : SoftwarePipelineBuilder
}
else if (context.HasSubtitleOverlay)
{
var pixelFormatFilter = new PixelFormatFilter(new PixelFormatArgb());
var pixelFormatFilter = new VaapiSubtitlePixelFormatFilter();
subtitle.FilterSteps.Add(pixelFormatFilter);
if (forceSoftwareOverlay)

Loading…
Cancel
Save