Browse Source

Merge pull request #10275 from jellyfin/disable-a53cc-sei-on-h26x-vaapi

Bond-009 1 year ago
parent
commit
2bb534d5e3
1 changed files with 9 additions and 0 deletions
  1. 9 0
      MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

+ 9 - 0
MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs

@@ -48,6 +48,7 @@ namespace MediaBrowser.Controller.MediaEncoding
         private readonly Version _minFFmpegHwaUnsafeOutput = new Version(6, 0);
         private readonly Version _minFFmpegOclCuTonemapMode = new Version(5, 1, 3);
         private readonly Version _minFFmpegSvtAv1Params = new Version(5, 1);
+        private readonly Version _minFFmpegVaapiH26xEncA53CcSei = new Version(6, 0);
 
         private static readonly string[] _videoProfilesH264 = new[]
         {
@@ -2006,6 +2007,14 @@ namespace MediaBrowser.Controller.MediaEncoding
                 param += " -svtav1-params:0 rc=1:tune=0:film-grain=0:enable-overlays=1:enable-tf=0";
             }
 
+            /* Access unit too large: 8192 < 20880 error */
+            if ((string.Equals(videoEncoder, "h264_vaapi", StringComparison.OrdinalIgnoreCase) ||
+                 string.Equals(videoEncoder, "hevc_vaapi", StringComparison.OrdinalIgnoreCase)) &&
+                 _mediaEncoder.EncoderVersion >= _minFFmpegVaapiH26xEncA53CcSei)
+            {
+                param += " -sei -a53_cc";
+            }
+
             return param;
         }