summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libhb/encavcodec.c4
-rw-r--r--win/CS/HandBrakeWPF/Services/Encode/Factories/VideoPresetFactory.cs41
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs6
3 files changed, 49 insertions, 2 deletions
diff --git a/libhb/encavcodec.c b/libhb/encavcodec.c
index 1c853cb60..dbad69ca7 100644
--- a/libhb/encavcodec.c
+++ b/libhb/encavcodec.c
@@ -70,7 +70,7 @@ static const char * const vpx_preset_names[] =
static const char * const h26x_nvenc_preset_names[] =
{
- "losslesshp", "lossless", "llhp", "llhq", "ll", "bd", "hq", "hp", "fast", "medium", "slow", "default", NULL
+ "llhp", "llhq", "ll", "bd", "hq", "hp", "fast", "medium", "slow", "default", NULL // No Lossless "losslesshp", "lossless",
};
static const char * const h264_nvenc_profile_names[] =
@@ -80,7 +80,7 @@ static const char * const h264_nvenc_profile_names[] =
static const char * const h265_nvenc_profile_names[] =
{
- "auto", "main", "main10", "rext", NULL
+ "auto", "main", NULL // "main10", "rext" We do not currently support 10bit encodes with this encoder.
};
diff --git a/win/CS/HandBrakeWPF/Services/Encode/Factories/VideoPresetFactory.cs b/win/CS/HandBrakeWPF/Services/Encode/Factories/VideoPresetFactory.cs
index 491eb7c4e..e861b1f9c 100644
--- a/win/CS/HandBrakeWPF/Services/Encode/Factories/VideoPresetFactory.cs
+++ b/win/CS/HandBrakeWPF/Services/Encode/Factories/VideoPresetFactory.cs
@@ -26,6 +26,12 @@ namespace HandBrakeWPF.Services.Encode.Factories
/// </returns>
public static string GetDisplayName(string shortName)
{
+ string presetName = GetNvencPresetName(shortName);
+ if (presetName != shortName)
+ {
+ return presetName;
+ }
+
switch (shortName)
{
case "ultrafast":
@@ -59,5 +65,40 @@ namespace HandBrakeWPF.Services.Encode.Factories
return shortName;
}
+
+ public static string GetNvencPresetName(string shortName)
+ {
+ switch (shortName)
+ {
+ case "losslesshp":
+ return "High Performance Lossless";
+ case "lossless":
+ return "Lossless";
+ case "llhp":
+ return "High Performance Low Latency";
+ case "llhq":
+ return "High Quality Low Latency";
+ case "ll":
+ return "Low Latency";
+ case "bd":
+ return "Bluray Disk";
+ case "hq":
+ return "High Quality";
+ case "hp":
+ return "High Performance";
+ case "fast":
+ return "Fast";
+ case "medium":
+ return "Medium";
+ case "slow":
+ return "Slow";
+ case "default":
+ return "Default";
+ case null:
+ return "Automatic";
+ }
+
+ return shortName;
+ }
}
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
index 7c14e1594..53f410356 100644
--- a/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
@@ -1425,6 +1425,12 @@ namespace HandBrakeWPF.ViewModels
this.VideoPresetMaxValue = encoder.Presets.Count - 1;
int middlePreset = (int)Math.Round((decimal)(this.VideoPresetMaxValue / 2), 0);
+
+ if (selectedEncoder == VideoEncoder.NvencH264 || selectedEncoder == VideoEncoder.NvencH265)
+ {
+ middlePreset = this.VideoPresets.IndexOf(this.VideoPresets.FirstOrDefault(s => s.ShortName == "default"));
+ }
+
this.VideoPresetValue = middlePreset;
}
else