Merge pull request #8620 from nyanmisaka/fix-dg2-tonemap-tearing

Fix the DG2 HDR TM tearing issue on Windows
This commit is contained in:
Claus Vium 2022-10-25 12:43:47 +02:00 committed by GitHub
commit 3bdc2bff5f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1415,7 +1415,11 @@ namespace MediaBrowser.Controller.MediaEncoding
param += " -preset 7"; param += " -preset 7";
} }
param += " -look_ahead 0"; // Only h264_qsv has look_ahead option
if (string.Equals(videoEncoder, "h264_qsv", StringComparison.OrdinalIgnoreCase))
{
param += " -look_ahead 0";
}
} }
else if (string.Equals(videoEncoder, "h264_nvenc", StringComparison.OrdinalIgnoreCase) // h264 (h264_nvenc) else if (string.Equals(videoEncoder, "h264_nvenc", StringComparison.OrdinalIgnoreCase) // h264 (h264_nvenc)
|| string.Equals(videoEncoder, "hevc_nvenc", StringComparison.OrdinalIgnoreCase)) // hevc (hevc_nvenc) || string.Equals(videoEncoder, "hevc_nvenc", StringComparison.OrdinalIgnoreCase)) // hevc (hevc_nvenc)
@ -1453,7 +1457,7 @@ namespace MediaBrowser.Controller.MediaEncoding
break; break;
default: default:
param += " -preset p4"; param += " -preset p1";
break; break;
} }
} }
@ -3404,6 +3408,12 @@ namespace MediaBrowser.Controller.MediaEncoding
// map from d3d11va to qsv. // map from d3d11va to qsv.
mainFilters.Add("hwmap=derive_device=qsv"); mainFilters.Add("hwmap=derive_device=qsv");
} }
else
{
// Insert a qsv scaler to sync the decoder surface,
// msdk will passthrough this internally.
mainFilters.Add("hwmap=derive_device=qsv,scale_qsv");
}
} }
// hw deint // hw deint