this.drp_dvdtitle.TabIndex = 39;\r
this.drp_dvdtitle.Text = "Automatic";\r
this.ToolTip.SetToolTip(this.drp_dvdtitle, "The title number you wish to encode.");\r
+ this.drp_dvdtitle.SelectedIndexChanged += new System.EventHandler(this.drp_dvdtitle_SelectedIndexChanged);\r
// \r
// RadioISO\r
// \r
this.text_height.Name = "text_height";\r
this.text_height.Size = new System.Drawing.Size(64, 21);\r
this.text_height.TabIndex = 8;\r
+ this.text_height.TextChanged += new System.EventHandler(this.text_height_TextChanged);\r
// \r
// Label55\r
// \r
this.text_width.Name = "text_width";\r
this.text_width.Size = new System.Drawing.Size(64, 21);\r
this.text_width.TabIndex = 7;\r
+ this.text_width.TextChanged += new System.EventHandler(this.text_width_TextChanged);\r
// \r
// btn_destBrowse\r
// \r
this.drp_videoEncoder.Size = new System.Drawing.Size(156, 21);\r
this.drp_videoEncoder.TabIndex = 5;\r
this.drp_videoEncoder.Text = "H.264";\r
+ this.drp_videoEncoder.SelectedIndexChanged += new System.EventHandler(this.drp_videoEncoder_SelectedIndexChanged);\r
// \r
// Label47\r
// \r
this.drp_audioCodec.Size = new System.Drawing.Size(111, 21);\r
this.drp_audioCodec.TabIndex = 6;\r
this.drp_audioCodec.Text = "AAC";\r
+ this.drp_audioCodec.SelectedIndexChanged += new System.EventHandler(this.drp_audioCodec_SelectedIndexChanged);\r
// \r
// Label12\r
// \r
this.drp_crop.Size = new System.Drawing.Size(123, 21);\r
this.drp_crop.TabIndex = 9;\r
this.drp_crop.Text = "No Crop";\r
+ this.drp_crop.SelectedIndexChanged += new System.EventHandler(this.drp_crop_SelectedIndexChanged);\r
// \r
// text_right\r
// \r
this.check_largeFile.TabIndex = 51;\r
this.check_largeFile.Text = "Larger mp4 Files (> 4GB)";\r
this.check_largeFile.UseVisualStyleBackColor = true;\r
+ this.check_largeFile.Click += new System.EventHandler(this.check_largeFile_CheckedChanged);\r
// \r
// check_turbo\r
// \r
this.check_turbo.TabIndex = 50;\r
this.check_turbo.Text = "Turbo 1st Pass";\r
this.check_turbo.UseVisualStyleBackColor = true;\r
+ this.check_turbo.Click += new System.EventHandler(this.check_turbo_CheckedChanged);\r
// \r
// Label36\r
// \r
this.Check_ChapterMarkers.TabIndex = 48;\r
this.Check_ChapterMarkers.Text = "Chapter Markers";\r
this.Check_ChapterMarkers.UseVisualStyleBackColor = true;\r
+ this.Check_ChapterMarkers.CheckedChanged += new System.EventHandler(this.Check_ChapterMarkers_CheckedChanged);\r
// \r
// Label28\r
// \r
this.CheckCRF.TabIndex = 44;\r
this.CheckCRF.Text = "Enable CRF";\r
this.CheckCRF.UseVisualStyleBackColor = true;\r
+ this.CheckCRF.Click += new System.EventHandler(this.CheckCRF_CheckedChanged);\r
// \r
// CheckPixelRatio\r
// \r
this.CheckPixelRatio.TabIndex = 40;\r
this.CheckPixelRatio.Text = "Anamorphic PAR";\r
this.CheckPixelRatio.UseVisualStyleBackColor = true;\r
+ this.CheckPixelRatio.CheckedChanged += new System.EventHandler(this.CheckPixelRatio_CheckedChanged);\r
// \r
// Label23\r
// \r
this.drp_audioMixDown.Size = new System.Drawing.Size(173, 21);\r
this.drp_audioMixDown.TabIndex = 50;\r
this.drp_audioMixDown.Text = "Automatic";\r
+ this.drp_audioMixDown.SelectedIndexChanged += new System.EventHandler(this.drp_audioMixDown_SelectedIndexChanged);\r
// \r
// drp_audioChannels\r
// \r
this.drp_audioBitrate.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
this.drp_audioBitrate.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
this.drp_audioBitrate.FormattingEnabled = true;\r
+ this.drp_audioBitrate.Items.AddRange(new object[] {\r
+ "32",\r
+ "40",\r
+ "48",\r
+ "56",\r
+ "64",\r
+ "80",\r
+ "86",\r
+ "112",\r
+ "128",\r
+ "160"});\r
this.drp_audioBitrate.Location = new System.Drawing.Point(157, 37);\r
this.drp_audioBitrate.Name = "drp_audioBitrate";\r
this.drp_audioBitrate.Size = new System.Drawing.Size(101, 21);\r
{\r
File_Open.ShowDialog();\r
}\r
+\r
private void mnu_save_Click(object sender, EventArgs e)\r
{\r
File_Save.ShowDialog();\r
\r
DVD_Save.ShowDialog();\r
text_destination.Text = DVD_Save.FileName;\r
+\r
+ if (Check_ChapterMarkers.CheckState.ToString() == "Checked")\r
+ {\r
+ string destination = text_destination.Text;\r
+ destination = destination.Replace(".mp4", ".m4v");\r
+ text_destination.Text = destination;\r
+ }\r
}\r
\r
private void btn_h264Clear_Click(object sender, EventArgs e)\r
System.Diagnostics.Process.Start("http://handbrake.m0k.org/trac/wiki/x264Options");\r
}\r
\r
+ private void text_width_TextChanged(object sender, EventArgs e)\r
+ {\r
+ try\r
+ {\r
+ if (CheckPixelRatio.CheckState.ToString() == "Checked") {\r
+ text_width.Text = "";\r
+ } else {\r
+ if ((int.Parse(text_width.Text) % 16) != 0){\r
+ text_width.BackColor = Color.LightCoral;\r
+ }else {\r
+ text_width.BackColor = Color.LightGreen;\r
+ }\r
+ }\r
+\r
+ if (!lbl_Aspect.Text.Equals("Select a Title")){\r
+ int height = int.Parse(text_width.Text) / int.Parse(lbl_Aspect.Text);\r
+ int mod16 = height % 16;\r
+ height = height - mod16;\r
+ text_height.Text = height.ToString();\r
+ }\r
+ \r
+ } catch(Exception){\r
+ }\r
+ }\r
+\r
+ private void text_height_TextChanged(object sender, EventArgs e)\r
+ {\r
+ try\r
+ {\r
+ if (CheckPixelRatio.CheckState.ToString() == "Checked")\r
+ {\r
+ text_height.Text = "";\r
+ }\r
+ else\r
+ {\r
+ if ((int.Parse(text_height.Text) % 16) != 0)\r
+ {\r
+ text_height.BackColor = Color.LightCoral;\r
+ }\r
+ else\r
+ {\r
+ text_height.BackColor = Color.LightGreen;\r
+ }\r
+ }\r
+ } catch(Exception){\r
+ }\r
+ }\r
+\r
+ private void drp_crop_SelectedIndexChanged(object sender, EventArgs e)\r
+ {\r
+ if ((string)drp_crop.SelectedItem == "Manual")\r
+ {\r
+ text_left.Enabled = true;\r
+ text_right.Enabled = true;\r
+ text_top.Enabled = true;\r
+ text_bottom.Enabled = true;\r
+ }\r
\r
+ if ((string)drp_crop.SelectedItem == "Auto Crop")\r
+ {\r
+ text_left.Enabled = false;\r
+ text_right.Enabled = false;\r
+ text_top.Enabled = false;\r
+ text_bottom.Enabled = false;\r
+ text_left.Text = "";\r
+ text_right.Text = "";\r
+ text_top.Text = "";\r
+ text_bottom.Text = "";\r
+\r
+ if (lbl_RecomendedCrop.Text != "Select a Title")\r
+ {\r
+ string[] temp = new string[4];\r
+ temp = lbl_RecomendedCrop.Text.Split('/');\r
+ text_left.Text = temp[2];\r
+ text_right.Text = temp[3];\r
+ text_top.Text = temp[0];\r
+ text_bottom.Text = temp[1];\r
+ }\r
+ }\r
+\r
+ if ((string)drp_crop.SelectedItem == "No Crop")\r
+ {\r
+ text_left.Enabled = false;\r
+ text_right.Enabled = false;\r
+ text_top.Enabled = false;\r
+ text_bottom.Enabled = false;\r
+ text_left.Text = "0";\r
+ text_right.Text = "0";\r
+ text_top.Text = "0";\r
+ text_bottom.Text = "0";\r
\r
+ }\r
+ }\r
+ \r
+ private void CheckPixelRatio_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ text_width.Text = "";\r
+ text_height.Text = "";\r
+ text_width.BackColor = Color.White;\r
+ text_height.BackColor = Color.White;\r
+ }\r
+\r
+ private void drp_dvdtitle_SelectedIndexChanged(object sender, EventArgs e)\r
+ {\r
+ if (drp_dvdtitle.Items.Count == 1)\r
+ {\r
+ MessageBox.Show("There are no titles to select. Please scan the DVD by clicking the 'browse' button above before trying to select a title.", "Alert", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);\r
+ }\r
+ }\r
+\r
+ private void drp_audioCodec_SelectedIndexChanged(object sender, EventArgs e)\r
+ {\r
+\r
+ //CLI Audio mixdown Names: mono stereo dpl1 dpl2 6ch\r
+\r
+ drp_audioMixDown.Items.Clear();\r
+\r
+ if (drp_audioCodec.Text == "AAC")\r
+ {\r
+ drp_audioMixDown.Items.Add("Mono");\r
+ drp_audioMixDown.Items.Add("Stereo");\r
+ drp_audioMixDown.Items.Add("Dolby Surround");\r
+ drp_audioMixDown.Items.Add("Dolby Pro Logic II");\r
+ drp_audioMixDown.Items.Add("6 Channel Discrete");\r
+ drp_audioBitrate.Items.Clear();\r
+ drp_audioBitrate.Items.Add("32");\r
+ drp_audioBitrate.Items.Add("40");\r
+ drp_audioBitrate.Items.Add("48");\r
+ drp_audioBitrate.Items.Add("56");\r
+ drp_audioBitrate.Items.Add("64");\r
+ drp_audioBitrate.Items.Add("80");\r
+ drp_audioBitrate.Items.Add("86");\r
+ drp_audioBitrate.Items.Add("112");\r
+ drp_audioBitrate.Items.Add("128");\r
+ drp_audioBitrate.Items.Add("160");\r
+\r
+ }\r
+ else\r
+ {\r
+ drp_audioMixDown.Items.Add("Stereo");\r
+ drp_audioMixDown.Items.Add("Dolby Surround");\r
+ drp_audioMixDown.Items.Add("Dolby Pro Logic II");\r
+\r
+ drp_audioBitrate.Items.Clear();\r
+ drp_audioBitrate.Items.Add("32");\r
+ drp_audioBitrate.Items.Add("40");\r
+ drp_audioBitrate.Items.Add("48");\r
+ drp_audioBitrate.Items.Add("56");\r
+ drp_audioBitrate.Items.Add("64");\r
+ drp_audioBitrate.Items.Add("80");\r
+ drp_audioBitrate.Items.Add("86");\r
+ drp_audioBitrate.Items.Add("112");\r
+ drp_audioBitrate.Items.Add("128");\r
+ drp_audioBitrate.Items.Add("160");\r
+ drp_audioBitrate.Items.Add("192");\r
+ drp_audioBitrate.Items.Add("224");\r
+ drp_audioBitrate.Items.Add("256");\r
+ drp_audioBitrate.Items.Add("320");\r
+ drp_audioBitrate.Items.Add("384");\r
+ }\r
+ }\r
+\r
+ private void drp_audioMixDown_SelectedIndexChanged(object sender, EventArgs e)\r
+ {\r
+ if (drp_audioCodec.Text == "AAC")\r
+ {\r
+ if (drp_audioMixDown.Text == "6 Channel Discrete")\r
+ {\r
+\r
+ drp_audioBitrate.Items.Clear();\r
+ drp_audioBitrate.Items.Add("32");\r
+ drp_audioBitrate.Items.Add("40");\r
+ drp_audioBitrate.Items.Add("48");\r
+ drp_audioBitrate.Items.Add("56");\r
+ drp_audioBitrate.Items.Add("64");\r
+ drp_audioBitrate.Items.Add("80");\r
+ drp_audioBitrate.Items.Add("86");\r
+ drp_audioBitrate.Items.Add("112");\r
+ drp_audioBitrate.Items.Add("128");\r
+ drp_audioBitrate.Items.Add("160");\r
+ drp_audioBitrate.Items.Add("192");\r
+ drp_audioBitrate.Items.Add("224");\r
+ drp_audioBitrate.Items.Add("256");\r
+ drp_audioBitrate.Items.Add("320");\r
+ drp_audioBitrate.Items.Add("384");\r
+ }\r
+ }\r
+ }\r
+\r
+ private void Check_ChapterMarkers_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ if (Check_ChapterMarkers.CheckState.ToString() == "Checked")\r
+ {\r
+ string destination = text_destination.Text;\r
+ destination = destination.Replace(".mp4", ".m4v");\r
+ text_destination.Text = destination;\r
+ }\r
+ }\r
+\r
+ private void check_largeFile_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ if (!text_destination.Text.Contains(".mp4"))\r
+ {\r
+ MessageBox.Show("This option is only compatible with the mp4 file container.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+ check_largeFile.CheckState = CheckState.Unchecked;\r
+ }\r
+ }\r
+\r
+ private void check_turbo_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ if (!drp_videoEncoder.Text.Contains("H.264"))\r
+ {\r
+ MessageBox.Show("This option is only compatible with the H.264 encoder's", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+ check_turbo.CheckState = CheckState.Unchecked;\r
+ }\r
+ }\r
+\r
+ private void drp_videoEncoder_SelectedIndexChanged(object sender, EventArgs e)\r
+ {\r
+ //Turn off some options which are H.264 only when the user selects a non h.264 encoder\r
+ if (!drp_videoEncoder.Text.Contains("H.264"))\r
+ {\r
+ check_turbo.CheckState = CheckState.Unchecked;\r
+ CheckCRF.CheckState = CheckState.Unchecked;\r
+ }\r
+ }\r
+\r
+ private void CheckCRF_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ if (slider_videoQuality.Value == 0)\r
+ {\r
+ MessageBox.Show("This option is can only be used with the 'Video Quality' slider.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+ CheckCRF.CheckState = CheckState.Unchecked;\r
+ }\r
+ }\r
\r
//\r
// The Query Generation Function\r
// ----------------------------------------------------------------------\r
\r
return querySource+ queryDestination+ queryPictureSettings+ queryVideoSettings+ h264Settings+ queryAudioSettings+ queryAdvancedSettings+ verbose;\r
- }\r
+ } \r
\r
- \r
-\r
- \r
\r
// This is the END of the road ------------------------------------------------------------------------------\r
}\r