diff options
Diffstat (limited to 'win/CS/HandBrake.Interop/HandBrakeInterop')
6 files changed, 93 insertions, 9 deletions
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInstance.cs b/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInstance.cs index 597e8cbe7..0e484794c 100644 --- a/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInstance.cs +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInstance.cs @@ -1213,24 +1213,26 @@ namespace HandBrake.Interop if (profile.Denoise != Denoise.Off)
{
string settings = null;
- switch (profile.Denoise)
+ switch (profile.DenoisePreset)
{
- case Denoise.Weak:
+ case DenoisePreset.Weak:
settings = "2:1:1:2:3:3";
break;
- case Denoise.Medium:
+ case DenoisePreset.Medium:
settings = "3:2:2:2:3:3";
break;
- case Denoise.Strong:
+ case DenoisePreset.Strong:
settings = "7:7:7:5:5:5";
break;
- case Denoise.Custom:
+ case DenoisePreset.Custom:
settings = profile.CustomDenoise;
break;
+ // TODO Add new Presets.
default:
break;
}
+ // TODO Add Tunes
this.AddFilter(filterList, (int)hb_filter_ids.HB_FILTER_DENOISE, settings, allocatedMemory);
}
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInterop.csproj b/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInterop.csproj index 720f64395..a1f1b076b 100644 --- a/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInterop.csproj +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/HandBrakeInterop.csproj @@ -50,6 +50,7 @@ <CodeAnalysisRuleDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules</CodeAnalysisRuleDirectories>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
+ <UseVSHostingProcess>true</UseVSHostingProcess>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<OutputPath>bin\x64\Release\</OutputPath>
@@ -173,6 +174,8 @@ <Compile Include="HbLib\NativeConstants.cs" />
<Compile Include="Interfaces\IHandBrakeInstance.cs" />
<Compile Include="Helpers\InteropUtilities.cs" />
+ <Compile Include="Model\Encoding\DenoisePreset.cs" />
+ <Compile Include="Model\Encoding\DenoiseTune.cs" />
<Compile Include="Model\Encoding\PictureRotation.cs" />
<Compile Include="Model\Encoding\x265\x265Preset.cs" />
<Compile Include="Model\Encoding\x265\x265Profile.cs" />
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/Denoise.cs b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/Denoise.cs index a2ab0f0a4..500547a24 100644 --- a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/Denoise.cs +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/Denoise.cs @@ -15,9 +15,7 @@ namespace HandBrake.Interop.Model.Encoding public enum Denoise
{
Off = 0,
- Weak = 2,
- Medium = 3,
- Strong = 4,
- Custom = 1
+ hqdn3d = 1,
+ NlMeans = 2,
}
}
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoisePreset.cs b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoisePreset.cs new file mode 100644 index 000000000..b26635052 --- /dev/null +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoisePreset.cs @@ -0,0 +1,37 @@ +// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="DenoisePreset.cs" company="HandBrake Project (http://handbrake.fr)">
+// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
+// </copyright>
+// <summary>
+// Defines the DenoisePreset type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrake.Interop.Model.Encoding
+{
+ using System.ComponentModel.DataAnnotations;
+
+ /// <summary>
+ /// The denoise preset.
+ /// </summary>
+ public enum DenoisePreset
+ {
+ [Display(Name = "Weak")]
+ Weak = 0,
+
+ [Display(Name = "Medium")]
+ Medium,
+
+ [Display(Name = "Strong")]
+ Strong,
+
+ [Display(Name = "Custom")]
+ Custom,
+
+ [Display(Name = "Ultralight")] // NLMeans only
+ Ultralight,
+
+ [Display(Name = "Light")] // NLMeans only
+ Light,
+ }
+}
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoiseTune.cs b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoiseTune.cs new file mode 100644 index 000000000..35b5843a8 --- /dev/null +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/DenoiseTune.cs @@ -0,0 +1,34 @@ +// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="DenoiseTune.cs" company="HandBrake Project (http://handbrake.fr)">
+// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
+// </copyright>
+// <summary>
+// Defines the DenoiseTune type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrake.Interop.Model.Encoding
+{
+ using System.ComponentModel.DataAnnotations;
+
+ /// <summary>
+ /// The denoise tune.
+ /// </summary>
+ public enum DenoiseTune
+ {
+ [Display(Name = "None")]
+ None = 0,
+
+ [Display(Name = "Film")]
+ Film,
+
+ [Display(Name = "Grain")]
+ Grain,
+
+ [Display(Name = "High Motion")]
+ HighMotion,
+
+ [Display(Name = "Animation")]
+ Animation,
+ }
+}
diff --git a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/EncodingProfile.cs b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/EncodingProfile.cs index 2dea5624b..834ef5576 100644 --- a/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/EncodingProfile.cs +++ b/win/CS/HandBrake.Interop/HandBrakeInterop/Model/Encoding/EncodingProfile.cs @@ -185,6 +185,16 @@ namespace HandBrake.Interop.Model.Encoding public Denoise Denoise { get; set; }
/// <summary>
+ /// Gets or sets the denoise preset.
+ /// </summary>
+ public DenoisePreset DenoisePreset { get; set; }
+
+ /// <summary>
+ /// Gets or sets the denoise tune.
+ /// </summary>
+ public DenoiseTune DenoiseTune { get; set; }
+
+ /// <summary>
/// Gets or sets the custom denoise.
/// </summary>
public string CustomDenoise { get; set; }
|