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

This commit is contained in:
gnattu 2025-06-16 05:22:49 +08:00 committed by GitHub
parent 2936588c0f
commit f60281d8fd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -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)
{