mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 17:56:51 +13:00
ffmpeg arg to mux avi to mp4 without re-encoding
This commit is contained in:
parent
39116e6dad
commit
e96308791a
4 changed files with 42 additions and 31 deletions
|
@ -126,6 +126,7 @@ private void LoadSettings()
|
|||
{
|
||||
Program.Settings.VideoEncoders.Add(new VideoEncoder() { Name = "x264 encoder to MP4", Path = "x264.exe", Args = "--output %output %input", OutputExtension = "mp4" });
|
||||
Program.Settings.VideoEncoders.Add(new VideoEncoder() { Name = "ffmpeg encoder to WebM", Path = "ffmpeg.exe", Args = "-i %input -c:v libvpx -crf 12 -b:v 500K %output", OutputExtension = "webm" });
|
||||
Program.Settings.VideoEncoders.Add(new VideoEncoder() { Name = "Change container to MP4 using ffmpeg encoder", Path = "ffmpeg.exe", Args = "-i %input -vcodec copy %output", OutputExtension = "mp4" });
|
||||
}
|
||||
Program.Settings.VideoEncoders.ForEach(x => AddVideoEncoder(x));
|
||||
|
||||
|
|
12
ShareX/Forms/EncoderProgramForm.Designer.cs
generated
12
ShareX/Forms/EncoderProgramForm.Designer.cs
generated
|
@ -43,6 +43,8 @@ private void InitializeComponent()
|
|||
//
|
||||
// txtExtension
|
||||
//
|
||||
this.txtExtension.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txtExtension.Location = new System.Drawing.Point(88, 80);
|
||||
this.txtExtension.Name = "txtExtension";
|
||||
this.txtExtension.Size = new System.Drawing.Size(224, 20);
|
||||
|
@ -59,6 +61,8 @@ private void InitializeComponent()
|
|||
//
|
||||
// txtArguments
|
||||
//
|
||||
this.txtArguments.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txtArguments.Location = new System.Drawing.Point(88, 56);
|
||||
this.txtArguments.Name = "txtArguments";
|
||||
this.txtArguments.Size = new System.Drawing.Size(224, 20);
|
||||
|
@ -66,6 +70,8 @@ private void InitializeComponent()
|
|||
//
|
||||
// txtPath
|
||||
//
|
||||
this.txtPath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txtPath.Location = new System.Drawing.Point(88, 32);
|
||||
this.txtPath.Name = "txtPath";
|
||||
this.txtPath.Size = new System.Drawing.Size(176, 20);
|
||||
|
@ -73,6 +79,8 @@ private void InitializeComponent()
|
|||
//
|
||||
// txtName
|
||||
//
|
||||
this.txtName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txtName.Location = new System.Drawing.Point(88, 8);
|
||||
this.txtName.Name = "txtName";
|
||||
this.txtName.Size = new System.Drawing.Size(224, 20);
|
||||
|
@ -107,6 +115,7 @@ private void InitializeComponent()
|
|||
//
|
||||
// btnPathBrowse
|
||||
//
|
||||
this.btnPathBrowse.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnPathBrowse.Location = new System.Drawing.Point(272, 30);
|
||||
this.btnPathBrowse.Name = "btnPathBrowse";
|
||||
this.btnPathBrowse.Size = new System.Drawing.Size(40, 23);
|
||||
|
@ -154,7 +163,8 @@ private void InitializeComponent()
|
|||
this.Controls.Add(this.lblName);
|
||||
this.Controls.Add(this.txtExtension);
|
||||
this.Controls.Add(this.lblExt);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
|
||||
this.MinimumSize = new System.Drawing.Size(340, 184);
|
||||
this.Name = "EncoderProgramForm";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Encoder Program";
|
||||
|
|
|
@ -174,7 +174,7 @@ private void NotificationForm_MouseClick(object sender, MouseEventArgs e)
|
|||
switch (ToastConfig.Action)
|
||||
{
|
||||
case ToastClickAction.AnnotateImage:
|
||||
if (!string.IsNullOrEmpty(ToastConfig.FilePath))
|
||||
if (!string.IsNullOrEmpty(ToastConfig.FilePath) && Helpers.IsImageFile(ToastConfig.FilePath))
|
||||
TaskHelpers.AnnotateImage(ToastConfig.FilePath);
|
||||
break;
|
||||
case ToastClickAction.CopyImageToClipboard:
|
||||
|
|
58
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
58
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
|
@ -109,6 +109,8 @@ private void InitializeComponent()
|
|||
this.tpCaptureShape = new System.Windows.Forms.TabPage();
|
||||
this.pgShapesCapture = new System.Windows.Forms.PropertyGrid();
|
||||
this.tpScreenRecorder = new System.Windows.Forms.TabPage();
|
||||
this.lblScreenRecorderCLI = new System.Windows.Forms.Label();
|
||||
this.btnScreenRecorderAVIOptions = new System.Windows.Forms.Button();
|
||||
this.btnEncoderConfig = new System.Windows.Forms.Button();
|
||||
this.cboEncoder = new System.Windows.Forms.ComboBox();
|
||||
this.nudScreenRecorderDuration = new System.Windows.Forms.NumericUpDown();
|
||||
|
@ -159,8 +161,6 @@ 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.btnScreenRecorderAVIOptions = new System.Windows.Forms.Button();
|
||||
this.lblScreenRecorderCLI = new System.Windows.Forms.Label();
|
||||
this.tcHotkeySettings.SuspendLayout();
|
||||
this.tpTask.SuspendLayout();
|
||||
this.cmsDestinations.SuspendLayout();
|
||||
|
@ -1126,9 +1126,28 @@ private void InitializeComponent()
|
|||
this.tpScreenRecorder.Text = "Screen recorder";
|
||||
this.tpScreenRecorder.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// 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 = 13;
|
||||
this.lblScreenRecorderCLI.Text = "CLI:";
|
||||
//
|
||||
// btnScreenRecorderAVIOptions
|
||||
//
|
||||
this.btnScreenRecorderAVIOptions.Location = new System.Drawing.Point(200, 12);
|
||||
this.btnScreenRecorderAVIOptions.Name = "btnScreenRecorderAVIOptions";
|
||||
this.btnScreenRecorderAVIOptions.Size = new System.Drawing.Size(96, 23);
|
||||
this.btnScreenRecorderAVIOptions.TabIndex = 12;
|
||||
this.btnScreenRecorderAVIOptions.Text = "AVI options...";
|
||||
this.btnScreenRecorderAVIOptions.UseVisualStyleBackColor = true;
|
||||
this.btnScreenRecorderAVIOptions.Click += new System.EventHandler(this.btnScreenRecorderAVIOptions_Click);
|
||||
//
|
||||
// btnEncoderConfig
|
||||
//
|
||||
this.btnEncoderConfig.Location = new System.Drawing.Point(336, 71);
|
||||
this.btnEncoderConfig.Location = new System.Drawing.Point(336, 43);
|
||||
this.btnEncoderConfig.Name = "btnEncoderConfig";
|
||||
this.btnEncoderConfig.Size = new System.Drawing.Size(40, 23);
|
||||
this.btnEncoderConfig.TabIndex = 11;
|
||||
|
@ -1140,7 +1159,7 @@ private void InitializeComponent()
|
|||
//
|
||||
this.cboEncoder.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cboEncoder.FormattingEnabled = true;
|
||||
this.cboEncoder.Location = new System.Drawing.Point(48, 72);
|
||||
this.cboEncoder.Location = new System.Drawing.Point(48, 44);
|
||||
this.cboEncoder.Name = "cboEncoder";
|
||||
this.cboEncoder.Size = new System.Drawing.Size(280, 21);
|
||||
this.cboEncoder.TabIndex = 10;
|
||||
|
@ -1154,7 +1173,7 @@ private void InitializeComponent()
|
|||
0,
|
||||
0,
|
||||
65536});
|
||||
this.nudScreenRecorderDuration.Location = new System.Drawing.Point(163, 128);
|
||||
this.nudScreenRecorderDuration.Location = new System.Drawing.Point(163, 100);
|
||||
this.nudScreenRecorderDuration.Maximum = new decimal(new int[] {
|
||||
60,
|
||||
0,
|
||||
|
@ -1179,7 +1198,7 @@ private void InitializeComponent()
|
|||
// lblScreenRecorderStartDelay
|
||||
//
|
||||
this.lblScreenRecorderStartDelay.AutoSize = true;
|
||||
this.lblScreenRecorderStartDelay.Location = new System.Drawing.Point(16, 162);
|
||||
this.lblScreenRecorderStartDelay.Location = new System.Drawing.Point(16, 134);
|
||||
this.lblScreenRecorderStartDelay.Name = "lblScreenRecorderStartDelay";
|
||||
this.lblScreenRecorderStartDelay.Size = new System.Drawing.Size(60, 13);
|
||||
this.lblScreenRecorderStartDelay.TabIndex = 9;
|
||||
|
@ -1193,7 +1212,7 @@ private void InitializeComponent()
|
|||
0,
|
||||
0,
|
||||
65536});
|
||||
this.nudScreenRecorderStartDelay.Location = new System.Drawing.Point(80, 158);
|
||||
this.nudScreenRecorderStartDelay.Location = new System.Drawing.Point(80, 130);
|
||||
this.nudScreenRecorderStartDelay.Maximum = new decimal(new int[] {
|
||||
60,
|
||||
0,
|
||||
|
@ -1232,7 +1251,7 @@ private void InitializeComponent()
|
|||
// cbScreenRecorderFixedDuration
|
||||
//
|
||||
this.cbScreenRecorderFixedDuration.AutoSize = true;
|
||||
this.cbScreenRecorderFixedDuration.Location = new System.Drawing.Point(19, 130);
|
||||
this.cbScreenRecorderFixedDuration.Location = new System.Drawing.Point(19, 102);
|
||||
this.cbScreenRecorderFixedDuration.Name = "cbScreenRecorderFixedDuration";
|
||||
this.cbScreenRecorderFixedDuration.Size = new System.Drawing.Size(144, 17);
|
||||
this.cbScreenRecorderFixedDuration.TabIndex = 4;
|
||||
|
@ -1242,7 +1261,7 @@ private void InitializeComponent()
|
|||
//
|
||||
// nudScreenRecorderFPS
|
||||
//
|
||||
this.nudScreenRecorderFPS.Location = new System.Drawing.Point(48, 102);
|
||||
this.nudScreenRecorderFPS.Location = new System.Drawing.Point(48, 74);
|
||||
this.nudScreenRecorderFPS.Maximum = new decimal(new int[] {
|
||||
30,
|
||||
0,
|
||||
|
@ -1267,7 +1286,7 @@ private void InitializeComponent()
|
|||
// lblScreenRecorderFPS
|
||||
//
|
||||
this.lblScreenRecorderFPS.AutoSize = true;
|
||||
this.lblScreenRecorderFPS.Location = new System.Drawing.Point(16, 106);
|
||||
this.lblScreenRecorderFPS.Location = new System.Drawing.Point(16, 78);
|
||||
this.lblScreenRecorderFPS.Name = "lblScreenRecorderFPS";
|
||||
this.lblScreenRecorderFPS.Size = new System.Drawing.Size(30, 13);
|
||||
this.lblScreenRecorderFPS.TabIndex = 2;
|
||||
|
@ -1703,25 +1722,6 @@ private void InitializeComponent()
|
|||
this.chkUseDefaultAdvancedSettings.UseVisualStyleBackColor = true;
|
||||
this.chkUseDefaultAdvancedSettings.CheckedChanged += new System.EventHandler(this.chkUseDefaultAdvancedSettings_CheckedChanged);
|
||||
//
|
||||
// btnScreenRecorderAVIOptions
|
||||
//
|
||||
this.btnScreenRecorderAVIOptions.Location = new System.Drawing.Point(16, 40);
|
||||
this.btnScreenRecorderAVIOptions.Name = "btnScreenRecorderAVIOptions";
|
||||
this.btnScreenRecorderAVIOptions.Size = new System.Drawing.Size(96, 23);
|
||||
this.btnScreenRecorderAVIOptions.TabIndex = 12;
|
||||
this.btnScreenRecorderAVIOptions.Text = "AVI options...";
|
||||
this.btnScreenRecorderAVIOptions.UseVisualStyleBackColor = true;
|
||||
this.btnScreenRecorderAVIOptions.Click += new System.EventHandler(this.btnScreenRecorderAVIOptions_Click);
|
||||
//
|
||||
// lblScreenRecorderCLI
|
||||
//
|
||||
this.lblScreenRecorderCLI.AutoSize = true;
|
||||
this.lblScreenRecorderCLI.Location = new System.Drawing.Point(16, 76);
|
||||
this.lblScreenRecorderCLI.Name = "lblScreenRecorderCLI";
|
||||
this.lblScreenRecorderCLI.Size = new System.Drawing.Size(26, 13);
|
||||
this.lblScreenRecorderCLI.TabIndex = 13;
|
||||
this.lblScreenRecorderCLI.Text = "CLI:";
|
||||
//
|
||||
// TaskSettingsForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
|
Loading…
Reference in a new issue