Sfoglia il codice sorgente

Use square root scaling for high framerate videos' bitrate requirements (#14314)

gnattu 6 giorni fa
parent
commit
f60281d8fd
1 ha cambiato i file con 6 aggiunte e 1 eliminazioni
  1. 6 1
      MediaBrowser.Model/Dlna/ResolutionNormalizer.cs

+ 6 - 1
MediaBrowser.Model/Dlna/ResolutionNormalizer.cs

@@ -43,7 +43,12 @@ namespace MediaBrowser.Model.Dlna
                 }
             }
 
-            var referenceBitrate = h264EquivalentOutputBitrate * (30.0f / (targetFps ?? 30.0f));
+            // Our reference bitrate is based on SDR h264 at 30fps
+            var referenceFps = targetFps ?? 30.0f;
+            var referenceScale = referenceFps <= 30.0f
+                ? 30.0f / referenceFps
+                : 1.0f / MathF.Sqrt(referenceFps / 30.0f);
+            var referenceBitrate = h264EquivalentOutputBitrate * referenceScale;
 
             if (isHdr)
             {