mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
Merge pull request #12673 from nyanmisaka/rkmppdec-nokey
Enable key-frame only decoding for RKMPP trickplay
This commit is contained in:
commit
e005c32151
@ -804,7 +804,8 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|||||||
|| (hardwareAccelerationType == HardwareAccelerationType.amf && OperatingSystem.IsWindows())
|
|| (hardwareAccelerationType == HardwareAccelerationType.amf && OperatingSystem.IsWindows())
|
||||||
|| (hardwareAccelerationType == HardwareAccelerationType.qsv && options.PreferSystemNativeHwDecoder)
|
|| (hardwareAccelerationType == HardwareAccelerationType.qsv && options.PreferSystemNativeHwDecoder)
|
||||||
|| hardwareAccelerationType == HardwareAccelerationType.vaapi
|
|| hardwareAccelerationType == HardwareAccelerationType.vaapi
|
||||||
|| hardwareAccelerationType == HardwareAccelerationType.videotoolbox;
|
|| hardwareAccelerationType == HardwareAccelerationType.videotoolbox
|
||||||
|
|| hardwareAccelerationType == HardwareAccelerationType.rkmpp;
|
||||||
if (!supportsKeyFrameOnly)
|
if (!supportsKeyFrameOnly)
|
||||||
{
|
{
|
||||||
// Disable hardware acceleration when the hardware decoder does not support keyframe only mode.
|
// Disable hardware acceleration when the hardware decoder does not support keyframe only mode.
|
||||||
@ -930,13 +931,14 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|||||||
// Final command arguments
|
// Final command arguments
|
||||||
var args = string.Format(
|
var args = string.Format(
|
||||||
CultureInfo.InvariantCulture,
|
CultureInfo.InvariantCulture,
|
||||||
"-loglevel error {0} -an -sn {1} -threads {2} -c:v {3} {4}{5}-f {6} \"{7}\"",
|
"-loglevel error {0} -an -sn {1} -threads {2} -c:v {3} {4}{5}{6}-f {7} \"{8}\"",
|
||||||
inputArg,
|
inputArg,
|
||||||
filterParam,
|
filterParam,
|
||||||
outputThreads.GetValueOrDefault(_threads),
|
outputThreads.GetValueOrDefault(_threads),
|
||||||
vidEncoder,
|
vidEncoder,
|
||||||
encoderQualityOption + encoderQuality + " ",
|
encoderQualityOption + encoderQuality + " ",
|
||||||
vidEncoder.Contains("videotoolbox", StringComparison.InvariantCultureIgnoreCase) ? "-allow_sw 1 " : string.Empty, // allow_sw fallback for some intel macs
|
vidEncoder.Contains("videotoolbox", StringComparison.InvariantCultureIgnoreCase) ? "-allow_sw 1 " : string.Empty, // allow_sw fallback for some intel macs
|
||||||
|
EncoderVersion >= new Version(5, 1) ? "-fps_mode passthrough " : "-vsync passthrough ", // passthrough timestamp
|
||||||
"image2",
|
"image2",
|
||||||
outputPath);
|
outputPath);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user