├── .gitignore
├── GameDVR_Config.csproj
├── GameDVR_Config.sln
├── GameDVR_ConfigForm.Designer.cs
├── GameDVR_ConfigForm.cs
├── GameDVR_ConfigForm.resx
├── Program.cs
├── Properties
├── AssemblyInfo.cs
├── Resources.Designer.cs
├── Resources.resx
├── Settings.Designer.cs
└── Settings.settings
├── README.md
└── app.config
/.gitignore:
--------------------------------------------------------------------------------
1 | ## Ignore Visual Studio temporary files, build results, and
2 | ## files generated by popular Visual Studio add-ons.
3 |
4 | # User-specific files
5 | *.suo
6 | *.user
7 | *.userosscache
8 | *.sln.docstates
9 |
10 | # User-specific files (MonoDevelop/Xamarin Studio)
11 | *.userprefs
12 |
13 | # Build results
14 | [Dd]ebug/
15 | [Dd]ebugPublic/
16 | [Rr]elease/
17 | [Rr]eleases/
18 | x64/
19 | x86/
20 | build/
21 | bld/
22 | [Bb]in/
23 | [Oo]bj/
24 |
25 | # Visual Studio 2015 cache/options directory
26 | .vs/
27 |
28 | # MSTest test Results
29 | [Tt]est[Rr]esult*/
30 | [Bb]uild[Ll]og.*
31 |
32 | # NUNIT
33 | *.VisualState.xml
34 | TestResult.xml
35 |
36 | # Build Results of an ATL Project
37 | [Dd]ebugPS/
38 | [Rr]eleasePS/
39 | dlldata.c
40 |
41 | # DNX
42 | project.lock.json
43 | artifacts/
44 |
45 | *_i.c
46 | *_p.c
47 | *_i.h
48 | *.ilk
49 | *.meta
50 | *.obj
51 | *.pch
52 | *.pdb
53 | *.pgc
54 | *.pgd
55 | *.rsp
56 | *.sbr
57 | *.tlb
58 | *.tli
59 | *.tlh
60 | *.tmp
61 | *.tmp_proj
62 | *.log
63 | *.vspscc
64 | *.vssscc
65 | .builds
66 | *.pidb
67 | *.svclog
68 | *.scc
69 |
70 | # Chutzpah Test files
71 | _Chutzpah*
72 |
73 | # Visual C++ cache files
74 | ipch/
75 | *.aps
76 | *.ncb
77 | *.opensdf
78 | *.sdf
79 | *.cachefile
80 |
81 | # Visual Studio profiler
82 | *.psess
83 | *.vsp
84 | *.vspx
85 |
86 | # TFS 2012 Local Workspace
87 | $tf/
88 |
89 | # Guidance Automation Toolkit
90 | *.gpState
91 |
92 | # ReSharper is a .NET coding add-in
93 | _ReSharper*/
94 | *.[Rr]e[Ss]harper
95 | *.DotSettings.user
96 |
97 | # JustCode is a .NET coding add-in
98 | .JustCode
99 |
100 | # TeamCity is a build add-in
101 | _TeamCity*
102 |
103 | # DotCover is a Code Coverage Tool
104 | *.dotCover
105 |
106 | # NCrunch
107 | _NCrunch_*
108 | .*crunch*.local.xml
109 | nCrunchTemp_*
110 |
111 | # MightyMoose
112 | *.mm.*
113 | AutoTest.Net/
114 |
115 | # Web workbench (sass)
116 | .sass-cache/
117 |
118 | # Installshield output folder
119 | [Ee]xpress/
120 |
121 | # DocProject is a documentation generator add-in
122 | DocProject/buildhelp/
123 | DocProject/Help/*.HxT
124 | DocProject/Help/*.HxC
125 | DocProject/Help/*.hhc
126 | DocProject/Help/*.hhk
127 | DocProject/Help/*.hhp
128 | DocProject/Help/Html2
129 | DocProject/Help/html
130 |
131 | # Click-Once directory
132 | publish/
133 |
134 | # Publish Web Output
135 | *.[Pp]ublish.xml
136 | *.azurePubxml
137 | # TODO: Comment the next line if you want to checkin your web deploy settings
138 | # but database connection strings (with potential passwords) will be unencrypted
139 | *.pubxml
140 | *.publishproj
141 |
142 | # NuGet Packages
143 | *.nupkg
144 | # The packages folder can be ignored because of Package Restore
145 | **/packages/*
146 | # except build/, which is used as an MSBuild target.
147 | !**/packages/build/
148 | # Uncomment if necessary however generally it will be regenerated when needed
149 | #!**/packages/repositories.config
150 |
151 | # Windows Azure Build Output
152 | csx/
153 | *.build.csdef
154 |
155 | # Windows Store app package directory
156 | AppPackages/
157 |
158 | # Visual Studio cache files
159 | # files ending in .cache can be ignored
160 | *.[Cc]ache
161 | # but keep track of directories ending in .cache
162 | !*.[Cc]ache/
163 |
164 | # Others
165 | ClientBin/
166 | [Ss]tyle[Cc]op.*
167 | ~$*
168 | *~
169 | *.dbmdl
170 | *.dbproj.schemaview
171 | *.pfx
172 | *.publishsettings
173 | node_modules/
174 | orleans.codegen.cs
175 |
176 | # RIA/Silverlight projects
177 | Generated_Code/
178 |
179 | # Backup & report files from converting an old project file
180 | # to a newer Visual Studio version. Backup files are not needed,
181 | # because we have git ;-)
182 | _UpgradeReport_Files/
183 | Backup*/
184 | UpgradeLog*.XML
185 | UpgradeLog*.htm
186 |
187 | # SQL Server files
188 | *.mdf
189 | *.ldf
190 |
191 | # Business Intelligence projects
192 | *.rdl.data
193 | *.bim.layout
194 | *.bim_*.settings
195 |
196 | # Microsoft Fakes
197 | FakesAssemblies/
198 |
199 | # Node.js Tools for Visual Studio
200 | .ntvs_analysis.dat
201 |
202 | # Visual Studio 6 build log
203 | *.plg
204 |
205 | # Visual Studio 6 workspace options file
206 | *.opt
207 |
--------------------------------------------------------------------------------
/GameDVR_Config.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}
8 | WinExe
9 | Properties
10 | GameDVR_Config
11 | GameDVR_Config
12 | v4.5.1
13 | 512
14 |
15 |
16 |
17 | AnyCPU
18 | true
19 | full
20 | false
21 | bin\Debug\
22 | DEBUG;TRACE
23 | prompt
24 | 4
25 | false
26 |
27 |
28 | AnyCPU
29 | pdbonly
30 | true
31 | bin\Release\
32 | TRACE
33 | prompt
34 | 4
35 | false
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | Form
48 |
49 |
50 | GameDVR_ConfigForm.cs
51 |
52 |
53 |
54 |
55 | GameDVR_ConfigForm.cs
56 |
57 |
58 | ResXFileCodeGenerator
59 | Resources.Designer.cs
60 | Designer
61 |
62 |
63 | True
64 | Resources.resx
65 | True
66 |
67 |
68 |
69 | SettingsSingleFileGenerator
70 | Settings.Designer.cs
71 |
72 |
73 | True
74 | Settings.settings
75 | True
76 |
77 |
78 |
79 |
86 |
--------------------------------------------------------------------------------
/GameDVR_Config.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25123.0
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GameDVR_Config", "GameDVR_Config.csproj", "{A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {A2B1FFFE-DA8E-498B-9E7F-92F61EDF685B}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/GameDVR_ConfigForm.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace GameDVR_Config
2 | {
3 | partial class GameDVR_ConfigForm
4 | {
5 | ///
6 | /// Erforderliche Designervariable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Verwendete Ressourcen bereinigen.
12 | ///
13 | /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Vom Windows Form-Designer generierter Code
24 |
25 | ///
26 | /// Erforderliche Methode für die Designerunterstützung.
27 | /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.EnableGameDVRCheckBox = new System.Windows.Forms.CheckBox();
32 | this.EnableAudioCaptureCheckBox = new System.Windows.Forms.CheckBox();
33 | this.AudioEncodingBitrateLabel = new System.Windows.Forms.Label();
34 | this.AudioBitrateComboBox = new System.Windows.Forms.ComboBox();
35 | this.kbpsLabel = new System.Windows.Forms.Label();
36 | this.VideoEncodingBitrateLabel = new System.Windows.Forms.Label();
37 | this.kbpsLabel2 = new System.Windows.Forms.Label();
38 | this.VideoBitrateTextBox = new System.Windows.Forms.TextBox();
39 | this.ResizeVideoCheckBox = new System.Windows.Forms.CheckBox();
40 | this.WidthLabel = new System.Windows.Forms.Label();
41 | this.HeightLabel = new System.Windows.Forms.Label();
42 | this.WidthTextBox = new System.Windows.Forms.TextBox();
43 | this.HeightTextBox = new System.Windows.Forms.TextBox();
44 | this.EnableMicrophoneCaptureCheckBox = new System.Windows.Forms.CheckBox();
45 | this.ForceSoftwareMFTCheckBox = new System.Windows.Forms.CheckBox();
46 | this.DisableCursorBlendingCheckBox = new System.Windows.Forms.CheckBox();
47 | this.BackgroundRecordingCheckBox = new System.Windows.Forms.CheckBox();
48 | this.RecordTheLastTextBox = new System.Windows.Forms.TextBox();
49 | this.RecordTheLastLabel = new System.Windows.Forms.Label();
50 | this.RecordOnBatteryCheckBox = new System.Windows.Forms.CheckBox();
51 | this.RecordOnWirelessDisplayCheckBox = new System.Windows.Forms.CheckBox();
52 | this.SecondsLabel = new System.Windows.Forms.Label();
53 | this.SuspendLayout();
54 | //
55 | // EnableGameDVRCheckBox
56 | //
57 | this.EnableGameDVRCheckBox.AutoSize = true;
58 | this.EnableGameDVRCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
59 | this.EnableGameDVRCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
60 | this.EnableGameDVRCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
61 | this.EnableGameDVRCheckBox.Location = new System.Drawing.Point(17, 17);
62 | this.EnableGameDVRCheckBox.Margin = new System.Windows.Forms.Padding(8);
63 | this.EnableGameDVRCheckBox.Name = "EnableGameDVRCheckBox";
64 | this.EnableGameDVRCheckBox.Size = new System.Drawing.Size(225, 24);
65 | this.EnableGameDVRCheckBox.TabIndex = 0;
66 | this.EnableGameDVRCheckBox.Text = "Enable Game DVR (Win+G)";
67 | this.EnableGameDVRCheckBox.UseVisualStyleBackColor = true;
68 | this.EnableGameDVRCheckBox.CheckedChanged += new System.EventHandler(this.EnableGameDVRCheckBox_CheckedChanged);
69 | //
70 | // EnableAudioCaptureCheckBox
71 | //
72 | this.EnableAudioCaptureCheckBox.AutoSize = true;
73 | this.EnableAudioCaptureCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
74 | this.EnableAudioCaptureCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
75 | this.EnableAudioCaptureCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
76 | this.EnableAudioCaptureCheckBox.Location = new System.Drawing.Point(17, 57);
77 | this.EnableAudioCaptureCheckBox.Margin = new System.Windows.Forms.Padding(8);
78 | this.EnableAudioCaptureCheckBox.Name = "EnableAudioCaptureCheckBox";
79 | this.EnableAudioCaptureCheckBox.Size = new System.Drawing.Size(176, 24);
80 | this.EnableAudioCaptureCheckBox.TabIndex = 1;
81 | this.EnableAudioCaptureCheckBox.Text = "Enable audio capture";
82 | this.EnableAudioCaptureCheckBox.UseVisualStyleBackColor = true;
83 | this.EnableAudioCaptureCheckBox.CheckedChanged += new System.EventHandler(this.EnableAudioCaptureCheckBox_CheckedChanged);
84 | //
85 | // AudioEncodingBitrateLabel
86 | //
87 | this.AudioEncodingBitrateLabel.AutoSize = true;
88 | this.AudioEncodingBitrateLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
89 | this.AudioEncodingBitrateLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
90 | this.AudioEncodingBitrateLabel.Location = new System.Drawing.Point(13, 137);
91 | this.AudioEncodingBitrateLabel.Margin = new System.Windows.Forms.Padding(8);
92 | this.AudioEncodingBitrateLabel.Name = "AudioEncodingBitrateLabel";
93 | this.AudioEncodingBitrateLabel.Size = new System.Drawing.Size(172, 20);
94 | this.AudioEncodingBitrateLabel.TabIndex = 2;
95 | this.AudioEncodingBitrateLabel.Text = "Audio encoding bitrate:";
96 | //
97 | // AudioBitrateComboBox
98 | //
99 | this.AudioBitrateComboBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
100 | this.AudioBitrateComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
101 | this.AudioBitrateComboBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
102 | this.AudioBitrateComboBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
103 | this.AudioBitrateComboBox.ForeColor = System.Drawing.Color.WhiteSmoke;
104 | this.AudioBitrateComboBox.FormattingEnabled = true;
105 | this.AudioBitrateComboBox.Items.AddRange(new object[] {
106 | "96",
107 | "128",
108 | "160",
109 | "192"});
110 | this.AudioBitrateComboBox.Location = new System.Drawing.Point(205, 134);
111 | this.AudioBitrateComboBox.Margin = new System.Windows.Forms.Padding(8);
112 | this.AudioBitrateComboBox.Name = "AudioBitrateComboBox";
113 | this.AudioBitrateComboBox.Size = new System.Drawing.Size(88, 28);
114 | this.AudioBitrateComboBox.TabIndex = 3;
115 | this.AudioBitrateComboBox.SelectedIndexChanged += new System.EventHandler(this.AudioBitrateComboBox_SelectedIndexChanged);
116 | //
117 | // kbpsLabel
118 | //
119 | this.kbpsLabel.AutoSize = true;
120 | this.kbpsLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
121 | this.kbpsLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
122 | this.kbpsLabel.Location = new System.Drawing.Point(309, 137);
123 | this.kbpsLabel.Margin = new System.Windows.Forms.Padding(8);
124 | this.kbpsLabel.Name = "kbpsLabel";
125 | this.kbpsLabel.Size = new System.Drawing.Size(53, 20);
126 | this.kbpsLabel.TabIndex = 4;
127 | this.kbpsLabel.Text = "(kbps)";
128 | //
129 | // VideoEncodingBitrateLabel
130 | //
131 | this.VideoEncodingBitrateLabel.AutoSize = true;
132 | this.VideoEncodingBitrateLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
133 | this.VideoEncodingBitrateLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
134 | this.VideoEncodingBitrateLabel.Location = new System.Drawing.Point(13, 173);
135 | this.VideoEncodingBitrateLabel.Margin = new System.Windows.Forms.Padding(8);
136 | this.VideoEncodingBitrateLabel.Name = "VideoEncodingBitrateLabel";
137 | this.VideoEncodingBitrateLabel.Size = new System.Drawing.Size(172, 20);
138 | this.VideoEncodingBitrateLabel.TabIndex = 5;
139 | this.VideoEncodingBitrateLabel.Text = "Video encoding bitrate:";
140 | //
141 | // kbpsLabel2
142 | //
143 | this.kbpsLabel2.AutoSize = true;
144 | this.kbpsLabel2.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
145 | this.kbpsLabel2.ForeColor = System.Drawing.Color.WhiteSmoke;
146 | this.kbpsLabel2.Location = new System.Drawing.Point(309, 173);
147 | this.kbpsLabel2.Margin = new System.Windows.Forms.Padding(8);
148 | this.kbpsLabel2.Name = "kbpsLabel2";
149 | this.kbpsLabel2.Size = new System.Drawing.Size(53, 20);
150 | this.kbpsLabel2.TabIndex = 6;
151 | this.kbpsLabel2.Text = "(kbps)";
152 | //
153 | // VideoBitrateTextBox
154 | //
155 | this.VideoBitrateTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
156 | this.VideoBitrateTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
157 | this.VideoBitrateTextBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
158 | this.VideoBitrateTextBox.ForeColor = System.Drawing.Color.WhiteSmoke;
159 | this.VideoBitrateTextBox.Location = new System.Drawing.Point(205, 171);
160 | this.VideoBitrateTextBox.Margin = new System.Windows.Forms.Padding(8);
161 | this.VideoBitrateTextBox.Name = "VideoBitrateTextBox";
162 | this.VideoBitrateTextBox.Size = new System.Drawing.Size(88, 26);
163 | this.VideoBitrateTextBox.TabIndex = 7;
164 | this.VideoBitrateTextBox.TextChanged += new System.EventHandler(this.VideoBitrateTextBox_TextChanged);
165 | //
166 | // ResizeVideoCheckBox
167 | //
168 | this.ResizeVideoCheckBox.AutoSize = true;
169 | this.ResizeVideoCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
170 | this.ResizeVideoCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
171 | this.ResizeVideoCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
172 | this.ResizeVideoCheckBox.Location = new System.Drawing.Point(17, 209);
173 | this.ResizeVideoCheckBox.Margin = new System.Windows.Forms.Padding(8);
174 | this.ResizeVideoCheckBox.Name = "ResizeVideoCheckBox";
175 | this.ResizeVideoCheckBox.Size = new System.Drawing.Size(115, 24);
176 | this.ResizeVideoCheckBox.TabIndex = 8;
177 | this.ResizeVideoCheckBox.Text = "Resize video";
178 | this.ResizeVideoCheckBox.UseVisualStyleBackColor = true;
179 | this.ResizeVideoCheckBox.CheckedChanged += new System.EventHandler(this.ResizeVideoCheckBox_CheckedChanged);
180 | //
181 | // WidthLabel
182 | //
183 | this.WidthLabel.AutoSize = true;
184 | this.WidthLabel.Enabled = false;
185 | this.WidthLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
186 | this.WidthLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
187 | this.WidthLabel.Location = new System.Drawing.Point(37, 249);
188 | this.WidthLabel.Margin = new System.Windows.Forms.Padding(8);
189 | this.WidthLabel.Name = "WidthLabel";
190 | this.WidthLabel.Size = new System.Drawing.Size(54, 20);
191 | this.WidthLabel.TabIndex = 9;
192 | this.WidthLabel.Text = "Width:";
193 | //
194 | // HeightLabel
195 | //
196 | this.HeightLabel.AutoSize = true;
197 | this.HeightLabel.Enabled = false;
198 | this.HeightLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
199 | this.HeightLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
200 | this.HeightLabel.Location = new System.Drawing.Point(37, 285);
201 | this.HeightLabel.Margin = new System.Windows.Forms.Padding(8);
202 | this.HeightLabel.Name = "HeightLabel";
203 | this.HeightLabel.Size = new System.Drawing.Size(60, 20);
204 | this.HeightLabel.TabIndex = 10;
205 | this.HeightLabel.Text = "Height:";
206 | //
207 | // WidthTextBox
208 | //
209 | this.WidthTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
210 | this.WidthTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
211 | this.WidthTextBox.Enabled = false;
212 | this.WidthTextBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
213 | this.WidthTextBox.ForeColor = System.Drawing.Color.WhiteSmoke;
214 | this.WidthTextBox.Location = new System.Drawing.Point(205, 247);
215 | this.WidthTextBox.Margin = new System.Windows.Forms.Padding(8);
216 | this.WidthTextBox.Name = "WidthTextBox";
217 | this.WidthTextBox.Size = new System.Drawing.Size(88, 26);
218 | this.WidthTextBox.TabIndex = 11;
219 | this.WidthTextBox.TextChanged += new System.EventHandler(this.WidthTextBox_TextChanged);
220 | //
221 | // HeightTextBox
222 | //
223 | this.HeightTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
224 | this.HeightTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
225 | this.HeightTextBox.Enabled = false;
226 | this.HeightTextBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
227 | this.HeightTextBox.ForeColor = System.Drawing.Color.WhiteSmoke;
228 | this.HeightTextBox.Location = new System.Drawing.Point(205, 283);
229 | this.HeightTextBox.Margin = new System.Windows.Forms.Padding(8);
230 | this.HeightTextBox.Name = "HeightTextBox";
231 | this.HeightTextBox.Size = new System.Drawing.Size(88, 26);
232 | this.HeightTextBox.TabIndex = 12;
233 | this.HeightTextBox.TextChanged += new System.EventHandler(this.HeightTextBox_TextChanged);
234 | //
235 | // EnableMicrophoneCaptureCheckBox
236 | //
237 | this.EnableMicrophoneCaptureCheckBox.AutoSize = true;
238 | this.EnableMicrophoneCaptureCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
239 | this.EnableMicrophoneCaptureCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
240 | this.EnableMicrophoneCaptureCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
241 | this.EnableMicrophoneCaptureCheckBox.Location = new System.Drawing.Point(17, 97);
242 | this.EnableMicrophoneCaptureCheckBox.Margin = new System.Windows.Forms.Padding(8);
243 | this.EnableMicrophoneCaptureCheckBox.Name = "EnableMicrophoneCaptureCheckBox";
244 | this.EnableMicrophoneCaptureCheckBox.Size = new System.Drawing.Size(220, 24);
245 | this.EnableMicrophoneCaptureCheckBox.TabIndex = 13;
246 | this.EnableMicrophoneCaptureCheckBox.Text = "Enable microphone capture";
247 | this.EnableMicrophoneCaptureCheckBox.UseVisualStyleBackColor = true;
248 | this.EnableMicrophoneCaptureCheckBox.CheckedChanged += new System.EventHandler(this.EnableMicrophoneCaptureCheckBox_CheckedChanged);
249 | //
250 | // ForceSoftwareMFTCheckBox
251 | //
252 | this.ForceSoftwareMFTCheckBox.AutoSize = true;
253 | this.ForceSoftwareMFTCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
254 | this.ForceSoftwareMFTCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
255 | this.ForceSoftwareMFTCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
256 | this.ForceSoftwareMFTCheckBox.Location = new System.Drawing.Point(17, 321);
257 | this.ForceSoftwareMFTCheckBox.Margin = new System.Windows.Forms.Padding(8);
258 | this.ForceSoftwareMFTCheckBox.Name = "ForceSoftwareMFTCheckBox";
259 | this.ForceSoftwareMFTCheckBox.Size = new System.Drawing.Size(285, 24);
260 | this.ForceSoftwareMFTCheckBox.TabIndex = 14;
261 | this.ForceSoftwareMFTCheckBox.Text = "Force software MFT (16 FPS + VBR)";
262 | this.ForceSoftwareMFTCheckBox.UseVisualStyleBackColor = true;
263 | this.ForceSoftwareMFTCheckBox.CheckedChanged += new System.EventHandler(this.ForceSoftwareMFTCheckBox_CheckedChanged);
264 | //
265 | // DisableCursorBlendingCheckBox
266 | //
267 | this.DisableCursorBlendingCheckBox.AutoSize = true;
268 | this.DisableCursorBlendingCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
269 | this.DisableCursorBlendingCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
270 | this.DisableCursorBlendingCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
271 | this.DisableCursorBlendingCheckBox.Location = new System.Drawing.Point(17, 361);
272 | this.DisableCursorBlendingCheckBox.Margin = new System.Windows.Forms.Padding(8);
273 | this.DisableCursorBlendingCheckBox.Name = "DisableCursorBlendingCheckBox";
274 | this.DisableCursorBlendingCheckBox.Size = new System.Drawing.Size(190, 24);
275 | this.DisableCursorBlendingCheckBox.TabIndex = 15;
276 | this.DisableCursorBlendingCheckBox.Text = "Disable cursor blending";
277 | this.DisableCursorBlendingCheckBox.UseVisualStyleBackColor = true;
278 | this.DisableCursorBlendingCheckBox.CheckedChanged += new System.EventHandler(this.DisableCursorBlendingCheckBox_CheckedChanged);
279 | //
280 | // BackgroundRecordingCheckBox
281 | //
282 | this.BackgroundRecordingCheckBox.AutoSize = true;
283 | this.BackgroundRecordingCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
284 | this.BackgroundRecordingCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
285 | this.BackgroundRecordingCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
286 | this.BackgroundRecordingCheckBox.Location = new System.Drawing.Point(17, 401);
287 | this.BackgroundRecordingCheckBox.Margin = new System.Windows.Forms.Padding(8);
288 | this.BackgroundRecordingCheckBox.Name = "BackgroundRecordingCheckBox";
289 | this.BackgroundRecordingCheckBox.Size = new System.Drawing.Size(252, 24);
290 | this.BackgroundRecordingCheckBox.TabIndex = 16;
291 | this.BackgroundRecordingCheckBox.Text = "Record game in the background";
292 | this.BackgroundRecordingCheckBox.UseVisualStyleBackColor = true;
293 | this.BackgroundRecordingCheckBox.CheckedChanged += new System.EventHandler(this.BackgroundRecordingCheckBox_CheckedChanged);
294 | //
295 | // RecordTheLastTextBox
296 | //
297 | this.RecordTheLastTextBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
298 | this.RecordTheLastTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
299 | this.RecordTheLastTextBox.Enabled = false;
300 | this.RecordTheLastTextBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
301 | this.RecordTheLastTextBox.ForeColor = System.Drawing.Color.WhiteSmoke;
302 | this.RecordTheLastTextBox.Location = new System.Drawing.Point(205, 441);
303 | this.RecordTheLastTextBox.Margin = new System.Windows.Forms.Padding(8);
304 | this.RecordTheLastTextBox.Name = "RecordTheLastTextBox";
305 | this.RecordTheLastTextBox.Size = new System.Drawing.Size(88, 26);
306 | this.RecordTheLastTextBox.TabIndex = 18;
307 | this.RecordTheLastTextBox.TextChanged += new System.EventHandler(this.RecordTheLastTextBox_TextChanged);
308 | //
309 | // RecordTheLastLabel
310 | //
311 | this.RecordTheLastLabel.AutoSize = true;
312 | this.RecordTheLastLabel.Enabled = false;
313 | this.RecordTheLastLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
314 | this.RecordTheLastLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
315 | this.RecordTheLastLabel.Location = new System.Drawing.Point(37, 443);
316 | this.RecordTheLastLabel.Margin = new System.Windows.Forms.Padding(8);
317 | this.RecordTheLastLabel.Name = "RecordTheLastLabel";
318 | this.RecordTheLastLabel.Size = new System.Drawing.Size(121, 20);
319 | this.RecordTheLastLabel.TabIndex = 17;
320 | this.RecordTheLastLabel.Text = "Record the last:";
321 | //
322 | // RecordOnBatteryCheckBox
323 | //
324 | this.RecordOnBatteryCheckBox.AutoSize = true;
325 | this.RecordOnBatteryCheckBox.Enabled = false;
326 | this.RecordOnBatteryCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
327 | this.RecordOnBatteryCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
328 | this.RecordOnBatteryCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
329 | this.RecordOnBatteryCheckBox.Location = new System.Drawing.Point(41, 479);
330 | this.RecordOnBatteryCheckBox.Margin = new System.Windows.Forms.Padding(8);
331 | this.RecordOnBatteryCheckBox.Name = "RecordOnBatteryCheckBox";
332 | this.RecordOnBatteryCheckBox.Size = new System.Drawing.Size(191, 24);
333 | this.RecordOnBatteryCheckBox.TabIndex = 19;
334 | this.RecordOnBatteryCheckBox.Text = "Record while on battery";
335 | this.RecordOnBatteryCheckBox.UseVisualStyleBackColor = true;
336 | this.RecordOnBatteryCheckBox.CheckedChanged += new System.EventHandler(this.RecordOnBatteryCheckBox_CheckedChanged);
337 | //
338 | // RecordOnWirelessDisplayCheckBox
339 | //
340 | this.RecordOnWirelessDisplayCheckBox.AutoSize = true;
341 | this.RecordOnWirelessDisplayCheckBox.Enabled = false;
342 | this.RecordOnWirelessDisplayCheckBox.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
343 | this.RecordOnWirelessDisplayCheckBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
344 | this.RecordOnWirelessDisplayCheckBox.ForeColor = System.Drawing.Color.WhiteSmoke;
345 | this.RecordOnWirelessDisplayCheckBox.Location = new System.Drawing.Point(41, 519);
346 | this.RecordOnWirelessDisplayCheckBox.Margin = new System.Windows.Forms.Padding(8);
347 | this.RecordOnWirelessDisplayCheckBox.Name = "RecordOnWirelessDisplayCheckBox";
348 | this.RecordOnWirelessDisplayCheckBox.Size = new System.Drawing.Size(270, 24);
349 | this.RecordOnWirelessDisplayCheckBox.TabIndex = 20;
350 | this.RecordOnWirelessDisplayCheckBox.Text = "Record while using wireless display";
351 | this.RecordOnWirelessDisplayCheckBox.UseVisualStyleBackColor = true;
352 | this.RecordOnWirelessDisplayCheckBox.CheckedChanged += new System.EventHandler(this.RecordOnWirelessDisplayCheckBox_CheckedChanged);
353 | //
354 | // SecondsLabel
355 | //
356 | this.SecondsLabel.AutoSize = true;
357 | this.SecondsLabel.Enabled = false;
358 | this.SecondsLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
359 | this.SecondsLabel.ForeColor = System.Drawing.Color.WhiteSmoke;
360 | this.SecondsLabel.Location = new System.Drawing.Point(309, 443);
361 | this.SecondsLabel.Margin = new System.Windows.Forms.Padding(8);
362 | this.SecondsLabel.Name = "SecondsLabel";
363 | this.SecondsLabel.Size = new System.Drawing.Size(79, 20);
364 | this.SecondsLabel.TabIndex = 21;
365 | this.SecondsLabel.Text = "(seconds)";
366 | //
367 | // GameDVR_ConfigForm
368 | //
369 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
370 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
371 | this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(66)))), ((int)(((byte)(66)))));
372 | this.ClientSize = new System.Drawing.Size(403, 562);
373 | this.Controls.Add(this.SecondsLabel);
374 | this.Controls.Add(this.RecordOnWirelessDisplayCheckBox);
375 | this.Controls.Add(this.RecordOnBatteryCheckBox);
376 | this.Controls.Add(this.RecordTheLastTextBox);
377 | this.Controls.Add(this.RecordTheLastLabel);
378 | this.Controls.Add(this.BackgroundRecordingCheckBox);
379 | this.Controls.Add(this.DisableCursorBlendingCheckBox);
380 | this.Controls.Add(this.ForceSoftwareMFTCheckBox);
381 | this.Controls.Add(this.EnableMicrophoneCaptureCheckBox);
382 | this.Controls.Add(this.HeightTextBox);
383 | this.Controls.Add(this.WidthTextBox);
384 | this.Controls.Add(this.HeightLabel);
385 | this.Controls.Add(this.WidthLabel);
386 | this.Controls.Add(this.ResizeVideoCheckBox);
387 | this.Controls.Add(this.VideoBitrateTextBox);
388 | this.Controls.Add(this.kbpsLabel2);
389 | this.Controls.Add(this.VideoEncodingBitrateLabel);
390 | this.Controls.Add(this.kbpsLabel);
391 | this.Controls.Add(this.AudioBitrateComboBox);
392 | this.Controls.Add(this.AudioEncodingBitrateLabel);
393 | this.Controls.Add(this.EnableAudioCaptureCheckBox);
394 | this.Controls.Add(this.EnableGameDVRCheckBox);
395 | this.MaximizeBox = false;
396 | this.MinimizeBox = false;
397 | this.Name = "GameDVR_ConfigForm";
398 | this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
399 | this.Text = "Game DVR Config";
400 | this.Load += new System.EventHandler(this.GameDVR_ConfigForm_Load);
401 | this.ResumeLayout(false);
402 | this.PerformLayout();
403 |
404 | }
405 |
406 | #endregion
407 |
408 | private System.Windows.Forms.CheckBox EnableGameDVRCheckBox;
409 | private System.Windows.Forms.CheckBox EnableAudioCaptureCheckBox;
410 | private System.Windows.Forms.Label AudioEncodingBitrateLabel;
411 | private System.Windows.Forms.ComboBox AudioBitrateComboBox;
412 | private System.Windows.Forms.Label kbpsLabel;
413 | private System.Windows.Forms.Label VideoEncodingBitrateLabel;
414 | private System.Windows.Forms.Label kbpsLabel2;
415 | private System.Windows.Forms.TextBox VideoBitrateTextBox;
416 | private System.Windows.Forms.CheckBox ResizeVideoCheckBox;
417 | private System.Windows.Forms.Label WidthLabel;
418 | private System.Windows.Forms.Label HeightLabel;
419 | private System.Windows.Forms.TextBox WidthTextBox;
420 | private System.Windows.Forms.TextBox HeightTextBox;
421 | private System.Windows.Forms.CheckBox EnableMicrophoneCaptureCheckBox;
422 | private System.Windows.Forms.CheckBox ForceSoftwareMFTCheckBox;
423 | private System.Windows.Forms.CheckBox DisableCursorBlendingCheckBox;
424 | private System.Windows.Forms.CheckBox BackgroundRecordingCheckBox;
425 | private System.Windows.Forms.TextBox RecordTheLastTextBox;
426 | private System.Windows.Forms.Label RecordTheLastLabel;
427 | private System.Windows.Forms.CheckBox RecordOnBatteryCheckBox;
428 | private System.Windows.Forms.CheckBox RecordOnWirelessDisplayCheckBox;
429 | private System.Windows.Forms.Label SecondsLabel;
430 | }
431 | }
432 |
433 |
--------------------------------------------------------------------------------
/GameDVR_ConfigForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Data;
5 | using System.Drawing;
6 | using System.Text;
7 | using System.Windows.Forms;
8 | using Microsoft.Win32;
9 |
10 | namespace GameDVR_Config
11 | {
12 | public partial class GameDVR_ConfigForm : Form
13 | {
14 | const string keyName = "HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\GameDVR";
15 |
16 | public GameDVR_ConfigForm()
17 | {
18 | InitializeComponent();
19 | }
20 |
21 | private void GameDVR_ConfigForm_Load(object sender, EventArgs e)
22 | {
23 | EnableGameDVRCheckBox.Checked = GetBool("AppCaptureEnabled", true);
24 | EnableAudioCaptureCheckBox.Checked = GetBool("AudioCaptureEnabled", true);
25 | EnableMicrophoneCaptureCheckBox.Checked = GetBool("MicrophoneCaptureEnabled", false);
26 | int audioBitrate = GetInt("AudioEncodingBitrate", 192000);
27 | try { AudioBitrateComboBox.SelectedItem = (audioBitrate / 1000).ToString(); }
28 | finally
29 | {
30 | if (AudioBitrateComboBox.SelectedIndex == -1)
31 | AudioBitrateComboBox.SelectedIndex = 3;
32 | }
33 | int videoBitrate = GetInt("CustomVideoEncodingBitrate", 4000000);
34 | VideoBitrateTextBox.Text = (videoBitrate / 1000).ToString();
35 | ResizeVideoCheckBox.Checked = GetInt("VideoEncodingResolutionMode", 2) == 0;
36 | WidthTextBox.Text = GetInt("CustomVideoEncodingWidth", 1280).ToString();
37 | HeightTextBox.Text = GetInt("CustomVideoEncodingHeight", 720).ToString();
38 | ForceSoftwareMFTCheckBox.Checked = GetBool("ForceSoftwareMFT", false);
39 | DisableCursorBlendingCheckBox.Checked = GetBool("DisableCursorBlending", false);
40 | BackgroundRecordingCheckBox.Checked = GetBool("HistoricalCaptureEnabled", false);
41 | RecordTheLastTextBox.Text = GetInt("HistoricalBufferLength", 15).ToString();
42 | RecordOnBatteryCheckBox.Checked = GetBool("HistoricalCaptureOnBatteryAllowed", true);
43 | RecordOnWirelessDisplayCheckBox.Checked = GetBool("HistoricalCaptureOnWirelessDisplayAllowed", true);
44 |
45 | SetInt("VideoEncodingBitrateMode", 0);
46 | }
47 |
48 | private void EnableGameDVRCheckBox_CheckedChanged(object sender, EventArgs e)
49 | {
50 | SetBool("AppCaptureEnabled", EnableGameDVRCheckBox.Checked);
51 | }
52 |
53 | private void EnableAudioCaptureCheckBox_CheckedChanged(object sender, EventArgs e)
54 | {
55 | SetBool("AudioCaptureEnabled", EnableAudioCaptureCheckBox.Checked);
56 | }
57 |
58 | private void EnableMicrophoneCaptureCheckBox_CheckedChanged(object sender, EventArgs e)
59 | {
60 | SetBool("MicrophoneCaptureEnabled", EnableMicrophoneCaptureCheckBox.Checked);
61 | }
62 |
63 | private void AudioBitrateComboBox_SelectedIndexChanged(object sender, EventArgs e)
64 | {
65 | SetInt("AudioEncodingBitrate", Convert.ToInt32(AudioBitrateComboBox.SelectedItem) * 1000);
66 | }
67 |
68 | private void VideoBitrateTextBox_TextChanged(object sender, EventArgs e)
69 | {
70 | int videoBitrate;
71 | try { videoBitrate = Convert.ToInt32(VideoBitrateTextBox.Text) * 1000; }
72 | catch { videoBitrate = 4000000; }
73 |
74 | SetInt("CustomVideoEncodingBitrate", videoBitrate > 30000000 ? 30000000 : videoBitrate);
75 | }
76 |
77 | private void ResizeVideoCheckBox_CheckedChanged(object sender, EventArgs e)
78 | {
79 | SetInt("VideoEncodingResolutionMode", ResizeVideoCheckBox.Checked ? 0 : 2);
80 | HeightLabel.Enabled = WidthLabel.Enabled = WidthTextBox.Enabled = HeightTextBox.Enabled = ResizeVideoCheckBox.Checked;
81 | }
82 |
83 | private void WidthTextBox_TextChanged(object sender, EventArgs e)
84 | {
85 | int width;
86 | try { width = Convert.ToInt32(WidthTextBox.Text); }
87 | catch { width = 1280; }
88 |
89 | SetInt("CustomVideoEncodingWidth", width > 1920 ? 1920 : width);
90 | }
91 |
92 | private void HeightTextBox_TextChanged(object sender, EventArgs e)
93 | {
94 | int height;
95 | try { height = Convert.ToInt32(HeightTextBox.Text); }
96 | catch { height = 720; }
97 |
98 | SetInt("CustomVideoEncodingHeight", height > 1080 ? 1080 : height);
99 | }
100 |
101 | private void ForceSoftwareMFTCheckBox_CheckedChanged(object sender, EventArgs e)
102 | {
103 | SetBool("ForceSoftwareMFT", ForceSoftwareMFTCheckBox.Checked);
104 | SetBool("AllowSoftwareEncode", ForceSoftwareMFTCheckBox.Checked);
105 | }
106 |
107 | private void DisableCursorBlendingCheckBox_CheckedChanged(object sender, EventArgs e)
108 | {
109 | SetBool("DisableCursorBlending", DisableCursorBlendingCheckBox.Checked);
110 | }
111 |
112 | private void BackgroundRecordingCheckBox_CheckedChanged(object sender, EventArgs e)
113 | {
114 | SetBool("HistoricalCaptureEnabled", BackgroundRecordingCheckBox.Checked);
115 | RecordTheLastLabel.Enabled = RecordTheLastTextBox.Enabled = RecordOnBatteryCheckBox.Enabled =
116 | RecordOnWirelessDisplayCheckBox.Enabled = SecondsLabel.Enabled = BackgroundRecordingCheckBox.Checked;
117 | }
118 |
119 | private void RecordTheLastTextBox_TextChanged(object sender, EventArgs e)
120 | {
121 | int seconds;
122 | try { seconds = Convert.ToInt32(RecordTheLastTextBox.Text); }
123 | catch { seconds = 15; }
124 |
125 | SetInt("HistoricalBufferLength", seconds);
126 | }
127 |
128 | private void RecordOnBatteryCheckBox_CheckedChanged(object sender, EventArgs e)
129 | {
130 | SetBool("HistoricalCaptureOnBatteryAllowed", RecordOnBatteryCheckBox.Checked);
131 | }
132 |
133 | private void RecordOnWirelessDisplayCheckBox_CheckedChanged(object sender, EventArgs e)
134 | {
135 | SetBool("HistoricalCaptureOnWirelessDisplayAllowed", RecordOnWirelessDisplayCheckBox.Checked);
136 | }
137 |
138 | int GetInt(string valueName, int defaultValue)
139 | {
140 | try { return (int)Registry.GetValue(keyName, valueName, defaultValue.ToString()); }
141 | catch { return defaultValue; }
142 | }
143 |
144 | bool GetBool(string valueName, bool defaultValue)
145 | {
146 | try { return (int)Registry.GetValue(keyName, valueName, defaultValue ? "1" : "0") == 1; }
147 | catch { return defaultValue; }
148 | }
149 |
150 | void SetInt(string valueName, int value)
151 | {
152 | Registry.SetValue(keyName, valueName, value);
153 | }
154 |
155 | void SetBool(string valueName, bool value)
156 | {
157 | Registry.SetValue(keyName, valueName, value ? 1 : 0);
158 | }
159 |
160 | }
161 | }
162 |
--------------------------------------------------------------------------------
/GameDVR_ConfigForm.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Windows.Forms;
4 |
5 | namespace GameDVR_Config
6 | {
7 | static class Program
8 | {
9 | ///
10 | /// Der Haupteinstiegspunkt für die Anwendung.
11 | ///
12 | [STAThread]
13 | static void Main()
14 | {
15 | Application.EnableVisualStyles();
16 | Application.SetCompatibleTextRenderingDefault(false);
17 | Application.Run(new GameDVR_ConfigForm());
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // Allgemeine Informationen über eine Assembly werden über die folgenden
6 | // Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
7 | // die einer Assembly zugeordnet sind.
8 | [assembly: AssemblyTitle("GameDVR_Config")]
9 | [assembly: AssemblyDescription("https://github.com/FunkyFr3sh/GameDVR_Config")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("https://github.com/FunkyFr3sh/GameDVR_Config")]
12 | [assembly: AssemblyProduct("GameDVR_Config")]
13 | [assembly: AssemblyCopyright("Copyright © 2016")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar
18 | // für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von
19 | // COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
20 | [assembly: ComVisible(false)]
21 |
22 | // Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
23 | [assembly: Guid("a2b1fffe-da8e-498b-9e7f-92f61edf685b")]
24 |
25 | // Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
26 | //
27 | // Hauptversion
28 | // Nebenversion
29 | // Buildnummer
30 | // Revision
31 | //
32 | // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
33 | // übernehmen, indem Sie "*" eingeben:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.2.0.0")]
36 | [assembly: AssemblyFileVersion("1.2.0.0")]
37 |
--------------------------------------------------------------------------------
/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // Dieser Code wurde von einem Tool generiert.
4 | // Laufzeitversion:4.0.30319.42000
5 | //
6 | // Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
7 | // der Code erneut generiert wird.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace GameDVR_Config.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
17 | ///
18 | // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
19 | // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
20 | // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
21 | // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("GameDVR_Config.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
51 | /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // Dieser Code wurde von einem Tool generiert.
4 | // Laufzeitversion:4.0.30319.42000
5 | //
6 | // Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
7 | // der Code erneut generiert wird.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace GameDVR_Config.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # GameDVR_Config
2 | Config tool for the windows 10 Game DVR. The tool allows fine tuning of certain hidden settings, e.g. bitrates up to 30000 and upscaling.
3 |
4 | MIT License
5 |
--------------------------------------------------------------------------------
/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------