mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-30 01:07:21 +13:00
Screen recording ui changes
This commit is contained in:
parent
ba961d03ad
commit
cfc93cd6b2
6 changed files with 58 additions and 47 deletions
|
@ -76,7 +76,7 @@ public enum FFmpegPreset
|
|||
[Description("Slower")]
|
||||
slower,
|
||||
[Description("Very slow")]
|
||||
veryslow,
|
||||
veryslow
|
||||
}
|
||||
|
||||
public enum FFmpegAudioCodec
|
||||
|
|
|
@ -67,9 +67,10 @@ public FFmpegOptions()
|
|||
Extension = "mp4";
|
||||
CLIPath = "ffmpeg.exe";
|
||||
UserArgs = "";
|
||||
ShowError = true;
|
||||
|
||||
// x264
|
||||
x264_CRF = 20;
|
||||
x264_CRF = 23;
|
||||
Preset = FFmpegPreset.medium;
|
||||
|
||||
// VPx
|
||||
|
|
|
@ -28,11 +28,12 @@ protected override void Dispose(bool disposing)
|
|||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FFmpegOptionsForm));
|
||||
this.lblExt = new System.Windows.Forms.Label();
|
||||
this.lblX264CRF = new System.Windows.Forms.Label();
|
||||
this.nudx264CRF = new System.Windows.Forms.NumericUpDown();
|
||||
this.tpFFmpeg = new System.Windows.Forms.ToolTip();
|
||||
this.tpFFmpeg = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.nudQscale = new System.Windows.Forms.NumericUpDown();
|
||||
this.nudVPxCRF = new System.Windows.Forms.NumericUpDown();
|
||||
this.cbPreset = new System.Windows.Forms.ComboBox();
|
||||
|
@ -206,7 +207,7 @@ private void InitializeComponent()
|
|||
this.cbPreset.Name = "cbPreset";
|
||||
this.cbPreset.Size = new System.Drawing.Size(121, 21);
|
||||
this.cbPreset.TabIndex = 3;
|
||||
this.tpFFmpeg.SetToolTip(this.cbPreset, "Default is \"Medium\".");
|
||||
this.tpFFmpeg.SetToolTip(this.cbPreset, resources.GetString("cbPreset.ToolTip"));
|
||||
this.cbPreset.SelectedIndexChanged += new System.EventHandler(this.cbPreset_SelectedIndexChanged);
|
||||
//
|
||||
// tbVorbis_qscale
|
||||
|
|
|
@ -123,6 +123,15 @@
|
|||
<data name="nudx264CRF.ToolTip" xml:space="preserve">
|
||||
<value>Constant Rate Factor (CRF): The range of the quantizer scale is 0-51: where 0 is lossless, 23 is default, and 51 is worst possible.
|
||||
A lower value is a higher quality and a subjectively sane range is 18-28.
|
||||
Consider 18 to be visually lossless or nearly so: it should look the same or nearly the same as the input but it isn't technically lossless.</value>
|
||||
Consider 18 to be visually lossless or nearly so: it should look the same or nearly the same as the input but it isn't technically lossless.
|
||||
The range is exponential, so increasing the CRF value +6 is roughly half the bitrate while -6 is roughly twice the bitrate.
|
||||
General usage is to choose the highest CRF value that still provides an acceptable quality.
|
||||
If the output looks good, then try a higher value and if it looks bad then choose a lower value.</value>
|
||||
</data>
|
||||
<data name="cbPreset.ToolTip" xml:space="preserve">
|
||||
<value>The default preset is "Medium".
|
||||
A preset is a collection of options that will provide a certain encoding speed to compression ratio. A slower preset will provide better compression (compression is quality per filesize).
|
||||
This means that, for example, if you target a certain file size or constant bit rate, you will achieve better quality with a slower preset.
|
||||
Similarly, for constant quality encoding, you will simply save bitrate by choosing a slower preset.</value>
|
||||
</data>
|
||||
</root>
|
70
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
70
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
|
@ -113,7 +113,6 @@ private void InitializeComponent()
|
|||
this.nudScreenRecordFPS = new System.Windows.Forms.NumericUpDown();
|
||||
this.lblScreenRecordFPS = new System.Windows.Forms.Label();
|
||||
this.chkRunScreencastCLI = new System.Windows.Forms.CheckBox();
|
||||
this.lblScreenRecorderCLI = new System.Windows.Forms.Label();
|
||||
this.btnScreenRecorderOptions = new System.Windows.Forms.Button();
|
||||
this.btnEncoderConfig = new System.Windows.Forms.Button();
|
||||
this.cboEncoder = new System.Windows.Forms.ComboBox();
|
||||
|
@ -166,6 +165,7 @@ private void InitializeComponent()
|
|||
this.tpAdvanced = new System.Windows.Forms.TabPage();
|
||||
this.pgTaskSettings = new System.Windows.Forms.PropertyGrid();
|
||||
this.chkUseDefaultAdvancedSettings = new System.Windows.Forms.CheckBox();
|
||||
this.lblScreenRecorderFixedDuration = new System.Windows.Forms.Label();
|
||||
this.tcHotkeySettings.SuspendLayout();
|
||||
this.tpTask.SuspendLayout();
|
||||
this.cmsDestinations.SuspendLayout();
|
||||
|
@ -1124,10 +1124,10 @@ private void InitializeComponent()
|
|||
//
|
||||
// tpScreenRecorder
|
||||
//
|
||||
this.tpScreenRecorder.Controls.Add(this.lblScreenRecorderFixedDuration);
|
||||
this.tpScreenRecorder.Controls.Add(this.nudScreenRecordFPS);
|
||||
this.tpScreenRecorder.Controls.Add(this.lblScreenRecordFPS);
|
||||
this.tpScreenRecorder.Controls.Add(this.chkRunScreencastCLI);
|
||||
this.tpScreenRecorder.Controls.Add(this.lblScreenRecorderCLI);
|
||||
this.tpScreenRecorder.Controls.Add(this.btnScreenRecorderOptions);
|
||||
this.tpScreenRecorder.Controls.Add(this.btnEncoderConfig);
|
||||
this.tpScreenRecorder.Controls.Add(this.cboEncoder);
|
||||
|
@ -1149,7 +1149,7 @@ private void InitializeComponent()
|
|||
//
|
||||
// nudScreenRecordFPS
|
||||
//
|
||||
this.nudScreenRecordFPS.Location = new System.Drawing.Point(320, 69);
|
||||
this.nudScreenRecordFPS.Location = new System.Drawing.Point(144, 64);
|
||||
this.nudScreenRecordFPS.Maximum = new decimal(new int[] {
|
||||
30,
|
||||
0,
|
||||
|
@ -1174,7 +1174,7 @@ private void InitializeComponent()
|
|||
// lblScreenRecordFPS
|
||||
//
|
||||
this.lblScreenRecordFPS.AutoSize = true;
|
||||
this.lblScreenRecordFPS.Location = new System.Drawing.Point(208, 73);
|
||||
this.lblScreenRecordFPS.Location = new System.Drawing.Point(16, 68);
|
||||
this.lblScreenRecordFPS.Name = "lblScreenRecordFPS";
|
||||
this.lblScreenRecordFPS.Size = new System.Drawing.Size(100, 13);
|
||||
this.lblScreenRecordFPS.TabIndex = 7;
|
||||
|
@ -1183,28 +1183,19 @@ private void InitializeComponent()
|
|||
// chkRunScreencastCLI
|
||||
//
|
||||
this.chkRunScreencastCLI.AutoSize = true;
|
||||
this.chkRunScreencastCLI.Location = new System.Drawing.Point(392, 14);
|
||||
this.chkRunScreencastCLI.Location = new System.Drawing.Point(18, 42);
|
||||
this.chkRunScreencastCLI.Name = "chkRunScreencastCLI";
|
||||
this.chkRunScreencastCLI.Size = new System.Drawing.Size(117, 17);
|
||||
this.chkRunScreencastCLI.Size = new System.Drawing.Size(120, 17);
|
||||
this.chkRunScreencastCLI.TabIndex = 3;
|
||||
this.chkRunScreencastCLI.Text = "Run CLI afterwards";
|
||||
this.chkRunScreencastCLI.Text = "Run CLI afterwards:";
|
||||
this.chkRunScreencastCLI.UseVisualStyleBackColor = true;
|
||||
this.chkRunScreencastCLI.CheckedChanged += new System.EventHandler(this.chkRunScreencastCLI_CheckedChanged);
|
||||
//
|
||||
// lblScreenRecorderCLI
|
||||
//
|
||||
this.lblScreenRecorderCLI.AutoSize = true;
|
||||
this.lblScreenRecorderCLI.Location = new System.Drawing.Point(16, 48);
|
||||
this.lblScreenRecorderCLI.Name = "lblScreenRecorderCLI";
|
||||
this.lblScreenRecorderCLI.Size = new System.Drawing.Size(26, 13);
|
||||
this.lblScreenRecorderCLI.TabIndex = 4;
|
||||
this.lblScreenRecorderCLI.Text = "CLI:";
|
||||
//
|
||||
// btnScreenRecorderOptions
|
||||
//
|
||||
this.btnScreenRecorderOptions.Location = new System.Drawing.Point(320, 11);
|
||||
this.btnScreenRecorderOptions.Location = new System.Drawing.Point(402, 15);
|
||||
this.btnScreenRecorderOptions.Name = "btnScreenRecorderOptions";
|
||||
this.btnScreenRecorderOptions.Size = new System.Drawing.Size(64, 23);
|
||||
this.btnScreenRecorderOptions.Size = new System.Drawing.Size(70, 23);
|
||||
this.btnScreenRecorderOptions.TabIndex = 2;
|
||||
this.btnScreenRecorderOptions.Text = "Options...";
|
||||
this.btnScreenRecorderOptions.UseVisualStyleBackColor = true;
|
||||
|
@ -1212,11 +1203,11 @@ private void InitializeComponent()
|
|||
//
|
||||
// btnEncoderConfig
|
||||
//
|
||||
this.btnEncoderConfig.Location = new System.Drawing.Point(392, 40);
|
||||
this.btnEncoderConfig.Location = new System.Drawing.Point(402, 39);
|
||||
this.btnEncoderConfig.Name = "btnEncoderConfig";
|
||||
this.btnEncoderConfig.Size = new System.Drawing.Size(40, 23);
|
||||
this.btnEncoderConfig.Size = new System.Drawing.Size(70, 23);
|
||||
this.btnEncoderConfig.TabIndex = 6;
|
||||
this.btnEncoderConfig.Text = "...";
|
||||
this.btnEncoderConfig.Text = "Profiles...";
|
||||
this.btnEncoderConfig.UseVisualStyleBackColor = true;
|
||||
this.btnEncoderConfig.Click += new System.EventHandler(this.btnEncoderConfig_Click);
|
||||
//
|
||||
|
@ -1224,9 +1215,9 @@ private void InitializeComponent()
|
|||
//
|
||||
this.cboEncoder.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cboEncoder.FormattingEnabled = true;
|
||||
this.cboEncoder.Location = new System.Drawing.Point(64, 41);
|
||||
this.cboEncoder.Location = new System.Drawing.Point(144, 40);
|
||||
this.cboEncoder.Name = "cboEncoder";
|
||||
this.cboEncoder.Size = new System.Drawing.Size(320, 21);
|
||||
this.cboEncoder.Size = new System.Drawing.Size(256, 21);
|
||||
this.cboEncoder.TabIndex = 5;
|
||||
this.cboEncoder.SelectedIndexChanged += new System.EventHandler(this.cboEncoder_SelectedIndexChanged);
|
||||
//
|
||||
|
@ -1238,7 +1229,7 @@ private void InitializeComponent()
|
|||
0,
|
||||
0,
|
||||
65536});
|
||||
this.nudScreenRecorderDuration.Location = new System.Drawing.Point(320, 123);
|
||||
this.nudScreenRecorderDuration.Location = new System.Drawing.Point(144, 112);
|
||||
this.nudScreenRecorderDuration.Maximum = new decimal(new int[] {
|
||||
60,
|
||||
0,
|
||||
|
@ -1263,7 +1254,7 @@ private void InitializeComponent()
|
|||
// lblScreenRecorderStartDelay
|
||||
//
|
||||
this.lblScreenRecorderStartDelay.AutoSize = true;
|
||||
this.lblScreenRecorderStartDelay.Location = new System.Drawing.Point(248, 154);
|
||||
this.lblScreenRecorderStartDelay.Location = new System.Drawing.Point(16, 140);
|
||||
this.lblScreenRecorderStartDelay.Name = "lblScreenRecorderStartDelay";
|
||||
this.lblScreenRecorderStartDelay.Size = new System.Drawing.Size(60, 13);
|
||||
this.lblScreenRecorderStartDelay.TabIndex = 13;
|
||||
|
@ -1277,7 +1268,7 @@ private void InitializeComponent()
|
|||
0,
|
||||
0,
|
||||
65536});
|
||||
this.nudScreenRecorderStartDelay.Location = new System.Drawing.Point(320, 150);
|
||||
this.nudScreenRecorderStartDelay.Location = new System.Drawing.Point(144, 136);
|
||||
this.nudScreenRecorderStartDelay.Maximum = new decimal(new int[] {
|
||||
60,
|
||||
0,
|
||||
|
@ -1298,16 +1289,16 @@ private void InitializeComponent()
|
|||
//
|
||||
this.cbScreenRecorderOutput.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cbScreenRecorderOutput.FormattingEnabled = true;
|
||||
this.cbScreenRecorderOutput.Location = new System.Drawing.Point(64, 12);
|
||||
this.cbScreenRecorderOutput.Location = new System.Drawing.Point(144, 16);
|
||||
this.cbScreenRecorderOutput.Name = "cbScreenRecorderOutput";
|
||||
this.cbScreenRecorderOutput.Size = new System.Drawing.Size(248, 21);
|
||||
this.cbScreenRecorderOutput.Size = new System.Drawing.Size(256, 21);
|
||||
this.cbScreenRecorderOutput.TabIndex = 1;
|
||||
this.cbScreenRecorderOutput.SelectedIndexChanged += new System.EventHandler(this.cbScreenRecorderOutput_SelectedIndexChanged);
|
||||
//
|
||||
// lblScreenRecorderOutput
|
||||
//
|
||||
this.lblScreenRecorderOutput.AutoSize = true;
|
||||
this.lblScreenRecorderOutput.Location = new System.Drawing.Point(16, 16);
|
||||
this.lblScreenRecorderOutput.Location = new System.Drawing.Point(16, 20);
|
||||
this.lblScreenRecorderOutput.Name = "lblScreenRecorderOutput";
|
||||
this.lblScreenRecorderOutput.Size = new System.Drawing.Size(42, 13);
|
||||
this.lblScreenRecorderOutput.TabIndex = 0;
|
||||
|
@ -1316,17 +1307,17 @@ private void InitializeComponent()
|
|||
// cbScreenRecorderFixedDuration
|
||||
//
|
||||
this.cbScreenRecorderFixedDuration.AutoSize = true;
|
||||
this.cbScreenRecorderFixedDuration.Location = new System.Drawing.Point(164, 125);
|
||||
this.cbScreenRecorderFixedDuration.Location = new System.Drawing.Point(18, 114);
|
||||
this.cbScreenRecorderFixedDuration.Name = "cbScreenRecorderFixedDuration";
|
||||
this.cbScreenRecorderFixedDuration.Size = new System.Drawing.Size(144, 17);
|
||||
this.cbScreenRecorderFixedDuration.Size = new System.Drawing.Size(95, 17);
|
||||
this.cbScreenRecorderFixedDuration.TabIndex = 11;
|
||||
this.cbScreenRecorderFixedDuration.Text = "Fixed duration (seconds):";
|
||||
this.cbScreenRecorderFixedDuration.Text = "Fixed duration:";
|
||||
this.cbScreenRecorderFixedDuration.UseVisualStyleBackColor = true;
|
||||
this.cbScreenRecorderFixedDuration.CheckedChanged += new System.EventHandler(this.cbScreenRecorderFixedDuration_CheckedChanged);
|
||||
//
|
||||
// nudGIFFPS
|
||||
//
|
||||
this.nudGIFFPS.Location = new System.Drawing.Point(320, 96);
|
||||
this.nudGIFFPS.Location = new System.Drawing.Point(144, 88);
|
||||
this.nudGIFFPS.Maximum = new decimal(new int[] {
|
||||
30,
|
||||
0,
|
||||
|
@ -1351,7 +1342,7 @@ private void InitializeComponent()
|
|||
// lblGIFPS
|
||||
//
|
||||
this.lblGIFPS.AutoSize = true;
|
||||
this.lblGIFPS.Location = new System.Drawing.Point(258, 100);
|
||||
this.lblGIFPS.Location = new System.Drawing.Point(16, 92);
|
||||
this.lblGIFPS.Name = "lblGIFPS";
|
||||
this.lblGIFPS.Size = new System.Drawing.Size(50, 13);
|
||||
this.lblGIFPS.TabIndex = 9;
|
||||
|
@ -1798,6 +1789,15 @@ private void InitializeComponent()
|
|||
this.chkUseDefaultAdvancedSettings.UseVisualStyleBackColor = true;
|
||||
this.chkUseDefaultAdvancedSettings.CheckedChanged += new System.EventHandler(this.chkUseDefaultAdvancedSettings_CheckedChanged);
|
||||
//
|
||||
// lblScreenRecorderFixedDuration
|
||||
//
|
||||
this.lblScreenRecorderFixedDuration.AutoSize = true;
|
||||
this.lblScreenRecorderFixedDuration.Location = new System.Drawing.Point(210, 115);
|
||||
this.lblScreenRecorderFixedDuration.Name = "lblScreenRecorderFixedDuration";
|
||||
this.lblScreenRecorderFixedDuration.Size = new System.Drawing.Size(47, 13);
|
||||
this.lblScreenRecorderFixedDuration.TabIndex = 15;
|
||||
this.lblScreenRecorderFixedDuration.Text = "seconds";
|
||||
//
|
||||
// TaskSettingsForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
@ -2002,12 +2002,12 @@ private void InitializeComponent()
|
|||
private System.Windows.Forms.CheckBox cbThumbnailIfSmaller;
|
||||
private System.Windows.Forms.CheckBox cbClipboardUploadAutoIndexFolder;
|
||||
private System.Windows.Forms.Button btnScreenRecorderOptions;
|
||||
private System.Windows.Forms.Label lblScreenRecorderCLI;
|
||||
private System.Windows.Forms.CheckBox chkRunScreencastCLI;
|
||||
private System.Windows.Forms.CheckBox chkClipboardUploadContents;
|
||||
private System.Windows.Forms.NumericUpDown nudScreenRecordFPS;
|
||||
private System.Windows.Forms.Label lblScreenRecordFPS;
|
||||
private System.Windows.Forms.CheckBox chkShowBeforeUploadForm;
|
||||
private System.Windows.Forms.Label lblScreenRecorderFixedDuration;
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -293,18 +293,18 @@ public class TaskSettingsCapture
|
|||
#region Capture / Screen recorder
|
||||
|
||||
public ScreenRecordOutput ScreenRecordOutput = ScreenRecordOutput.FFmpeg;
|
||||
public AVIOptions AVIOptions = new AVIOptions();
|
||||
public FFmpegOptions FFmpegOptions = new FFmpegOptions();
|
||||
|
||||
public int GIFFPS = 5;
|
||||
public int ScreenRecordFPS = 20;
|
||||
public bool ScreenRecordFixedDuration = true;
|
||||
public float ScreenRecordDuration = 3f;
|
||||
public float ScreenRecordStartDelay = 0.1f;
|
||||
public AVIOptions AVIOptions = new AVIOptions();
|
||||
|
||||
public bool RunScreencastCLI = false;
|
||||
public int VideoEncoderSelected = 0;
|
||||
|
||||
public int ScreenRecordFPS = 20;
|
||||
public int GIFFPS = 5;
|
||||
public bool ScreenRecordFixedDuration = false;
|
||||
public float ScreenRecordDuration = 3f;
|
||||
public float ScreenRecordStartDelay = 0.5f;
|
||||
|
||||
#endregion Capture / Screen recorder
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue