{\r
// Source tab\r
#region source\r
- string source = mainWindow.text_source.Text;\r
- string dvdTitle = mainWindow.drp_dvdtitle.Text;\r
- string chapterStart = mainWindow.drop_chapterStart.Text;\r
- string chapterFinish = mainWindow.drop_chapterFinish.Text;\r
- int totalChapters = mainWindow.drop_chapterFinish.Items.Count - 1;\r
- string dvdChapter = "";\r
-\r
- if ((source != "") && (source.Trim() != "Click 'Browse' to continue"))\r
- source = " -i " + '"' + source + '"';\r
- else\r
- source = "";\r
+ string query = "";\r
\r
- if (dvdTitle == "Automatic")\r
- dvdTitle = "";\r
- else\r
+ if ((mainWindow.text_source.Text != "") && (mainWindow.text_source.Text.Trim() != "Click 'Source' to continue"))\r
+ query = " -i " + '"' + mainWindow.text_source.Text + '"';\r
+\r
+ if (mainWindow.drp_dvdtitle.Text != "Automatic")\r
{\r
- string[] titleInfo = dvdTitle.Split(' ');\r
- dvdTitle = " -t " + titleInfo[0];\r
+ string[] titleInfo = mainWindow.drp_dvdtitle.Text.Split(' ');\r
+ query += " -t " + titleInfo[0];\r
}\r
\r
- if (chapterFinish.Equals("Auto") && chapterStart.Equals("Auto"))\r
- dvdChapter = "";\r
- else if (chapterFinish == chapterStart)\r
- dvdChapter = " -c " + chapterStart;\r
+ if (mainWindow.drop_chapterFinish.Text == mainWindow.drop_chapterStart.Text)\r
+ query += " -c " + mainWindow.drop_chapterStart.Text;\r
else\r
- dvdChapter = " -c " + chapterStart + "-" + chapterFinish;\r
+ query += " -c " + mainWindow.drop_chapterStart.Text + "-" + mainWindow.drop_chapterFinish.Text;\r
\r
- string querySource = source + dvdTitle + dvdChapter;\r
#endregion\r
\r
// Destination tab\r
#region Destination\r
-\r
- string destination = mainWindow.text_destination.Text;\r
- string videoEncoder = mainWindow.drp_videoEncoder.Text;\r
- string width = mainWindow.text_width.Text;\r
- string height = mainWindow.text_height.Text;\r
-\r
- if (destination != "")\r
- destination = " -o " + '"' + destination + '"';\r
-\r
- switch (videoEncoder)\r
- {\r
- case "MPEG-4 (FFmpeg)":\r
- videoEncoder = " -e ffmpeg";\r
- break;\r
- case "MPEG-4 (XviD)":\r
- videoEncoder = " -e xvid";\r
- break;\r
- case "H.264 (x264)":\r
- videoEncoder = " -e x264";\r
- break;\r
- case "VP3 (Theora)":\r
- videoEncoder = " -e theora";\r
- break;\r
- default:\r
- videoEncoder = " -e x264";\r
- break;\r
- }\r
-\r
- if (width != "")\r
- width = " -w " + width;\r
-\r
- if (height == "Auto")\r
- height = "";\r
- else if (height != "")\r
- height = " -l " + height;\r
-\r
- string queryDestination = destination + videoEncoder + width + height;\r
+ if (mainWindow.text_destination.Text != "")\r
+ query += " -o " + '"' + mainWindow.text_destination.Text + '"';\r
#endregion\r
\r
- string query = querySource + queryDestination;\r
- query = query + generateTabbedComponentsQuery(mainWindow, source);\r
+ query += generateTabbedComponentsQuery(mainWindow, mainWindow.text_source.Text);\r
return query;\r
}\r
\r
/// </summary>\r
/// <param name="mainWindow"></param>\r
/// <returns>Returns a CLI query String.</returns>\r
- public string GeneratePreview(frmMain mainWindow)\r
+ public string GeneratePreviewQuery(frmMain mainWindow)\r
{\r
// Source tab\r
#region source\r
- string source = mainWindow.text_source.Text;\r
- string dvdTitle = mainWindow.drp_dvdtitle.Text;\r
- string chapterStart = mainWindow.drop_chapterStart.Text;\r
- string chapterFinish = mainWindow.drop_chapterFinish.Text;\r
- int totalChapters = mainWindow.drop_chapterFinish.Items.Count - 1;\r
- string dvdChapter = "";\r
-\r
- if ((source != "") && (source.Trim() != "Click 'Browse' to continue"))\r
- source = " -i " + '"' + source + '"';\r
- else\r
- source = "";\r
+ string query = "";\r
\r
- if (dvdTitle == "Automatic")\r
- dvdTitle = "";\r
- else\r
+ if ((mainWindow.text_source.Text != "") && (mainWindow.text_source.Text.Trim() != "Click 'Source' to continue"))\r
+ query = " -i " + '"' + mainWindow.text_source.Text + '"';\r
+\r
+ if (mainWindow.drp_dvdtitle.Text != "Automatic")\r
{\r
- string[] titleInfo = dvdTitle.Split(' ');\r
- dvdTitle = " -t " + titleInfo[0];\r
+ string[] titleInfo = mainWindow.drp_dvdtitle.Text.Split(' ');\r
+ query += " -t " + titleInfo[0];\r
}\r
\r
- dvdChapter = " -c 2 ";\r
-\r
- string querySource = source + dvdTitle + dvdChapter;\r
+ query += " -c 2";\r
#endregion\r
\r
// Destination tab\r
#region Destination\r
+ if (mainWindow.text_destination.Text != "")\r
+ query += " -o " + '"' + mainWindow.text_destination.Text.Replace(".m", "_sample.m").Replace(".avi", "_sample.avi").Replace(".ogm", "_sample.ogm") + '"';\r
\r
- string destination = mainWindow.text_destination.Text;\r
- string videoEncoder = mainWindow.drp_videoEncoder.Text;\r
- string width = mainWindow.text_width.Text;\r
- string height = mainWindow.text_height.Text;\r
-\r
- if (destination != "")\r
- destination = " -o " + '"' + destination.Replace(".m", "_sample.m").Replace(".avi", "_sample.avi").Replace(".ogm", "_sample.ogm") + '"';\r
-\r
-\r
- switch (videoEncoder)\r
- {\r
- case "MPEG-4 (FFmpeg)":\r
- videoEncoder = " -e ffmpeg";\r
- break;\r
- case "MPEG-4 (XviD)":\r
- videoEncoder = " -e xvid";\r
- break;\r
- case "H.264 (x264)":\r
- videoEncoder = " -e x264";\r
- break;\r
- case "VP3 (Theora)":\r
- videoEncoder = " -e theora";\r
- break;\r
- default:\r
- videoEncoder = " -e x264";\r
- break;\r
- }\r
-\r
- if (width != "")\r
- width = " -w " + width;\r
-\r
- if (height == "Auto")\r
- height = "";\r
- else if (height != "")\r
- height = " -l " + height;\r
-\r
- string queryDestination = destination + videoEncoder + width + height;\r
#endregion\r
\r
- string query = querySource + queryDestination;\r
- query = query + generateTabbedComponentsQuery(mainWindow, source);\r
+ query += generateTabbedComponentsQuery(mainWindow, mainWindow.text_source.Text);\r
return query;\r
}\r
\r
// Generates part of the CLI query, for the tabbed components only.\r
private string generateTabbedComponentsQuery(frmMain mainWindow, string source)\r
{\r
+ string query = "";\r
+\r
// Picture Settings Tab\r
#region Picture Settings Tab\r
\r
- string cropSetting = mainWindow.drp_crop.Text;\r
- string cropTop = mainWindow.text_top.Text;\r
- string cropBottom = mainWindow.text_bottom.Text;\r
- string cropLeft = mainWindow.text_left.Text;\r
- string cropRight = mainWindow.text_right.Text;\r
- string cropOut = "";\r
- string deInterlace_Option = mainWindow.drp_deInterlace_option.Text;\r
- string deinterlace = "";\r
- string grayscale = "";\r
- string pixelRatio = "";\r
- string vfr = "";\r
- string deblock = "";\r
- string detelecine = "";\r
- string lanamorphic = "";\r
-\r
-\r
-\r
- if (cropSetting == "Automatic")\r
- cropOut = "";\r
- else if (cropSetting == "No Crop")\r
- cropOut = " --crop 0:0:0:0 ";\r
- else\r
+ switch (mainWindow.drp_videoEncoder.Text)\r
+ {\r
+ case "MPEG-4 (FFmpeg)":\r
+ query += " -e ffmpeg";\r
+ break;\r
+ case "MPEG-4 (XviD)":\r
+ query += " -e xvid";\r
+ break;\r
+ case "H.264 (x264)":\r
+ query += " -e x264";\r
+ break;\r
+ case "VP3 (Theora)":\r
+ query += " -e theora";\r
+ break;\r
+ default:\r
+ query += " -e x264";\r
+ break;\r
+ }\r
+\r
+ if (mainWindow.text_width.Text != "")\r
+ query += " -w " + mainWindow.text_width.Text;\r
+\r
+ if (mainWindow.text_height.Text != "")\r
+ query += " -l " + mainWindow.text_height.Text;\r
+\r
+ string cropTop = "";\r
+ string cropBottom = "";\r
+ string cropLeft = "";\r
+ string cropRight = "";\r
+\r
+ if (mainWindow.drp_crop.Text == "No Crop")\r
+ query += " --crop 0:0:0:0 ";\r
+ else if (mainWindow.drp_crop.Text == "Custom")\r
{\r
- if ((mainWindow.text_top.Text == "") && (mainWindow.text_bottom.Text == "") && (mainWindow.text_left.Text == "") && (mainWindow.text_right.Text == ""))\r
- cropOut = "";\r
- else\r
- {\r
if (mainWindow.text_top.Text == "")\r
cropTop = "0";\r
if (mainWindow.text_bottom.Text == "")\r
if (mainWindow.text_right.Text == "")\r
cropRight = "0";\r
\r
- cropOut = " --crop " + cropTop + ":" + cropBottom + ":" + cropLeft + ":" + cropRight;\r
- }\r
+ query += " --crop " + cropTop + ":" + cropBottom + ":" + cropLeft + ":" + cropRight;\r
}\r
\r
- switch (deInterlace_Option)\r
+ switch (mainWindow.drp_deInterlace_option.Text)\r
{\r
case "None":\r
- deinterlace = "";\r
+ query += "";\r
break;\r
case "Fast":\r
- deinterlace = " --deinterlace=\"fast\"";\r
+ query += " --deinterlace=\"fast\"";\r
break;\r
case "Slow":\r
- deinterlace = " --deinterlace=\"slow\"";\r
+ query += " --deinterlace=\"slow\"";\r
break;\r
case "Slower":\r
- deinterlace = " --deinterlace=\"slower\"";\r
+ query += " --deinterlace=\"slower\"";\r
break;\r
case "Slowest":\r
- deinterlace = " --deinterlace=\"slowest\"";\r
+ query += " --deinterlace=\"slowest\"";\r
break;\r
default:\r
- deinterlace = "";\r
+ query += "";\r
break;\r
}\r
\r
if (mainWindow.check_grayscale.Checked)\r
- grayscale = " -g ";\r
+ query += " -g ";\r
\r
if (mainWindow.drp_anamorphic.SelectedIndex == 1)\r
- pixelRatio = " -p ";\r
+ query += " -p ";\r
else if (mainWindow.drp_anamorphic.SelectedIndex == 2)\r
- pixelRatio = " -P ";\r
- else\r
- pixelRatio = " ";\r
-\r
+ query += " -P ";\r
\r
if (mainWindow.check_deblock.Checked)\r
- deblock = " --deblock";\r
+ query += " --deblock";\r
\r
if (mainWindow.check_detelecine.Checked)\r
- detelecine = " --detelecine";\r
+ query += " --detelecine";\r
\r
if (mainWindow.check_vfr.Checked)\r
- vfr = " -V ";\r
-\r
-\r
-\r
- string queryPictureSettings = cropOut + deinterlace + deblock + detelecine + vfr + grayscale + pixelRatio + lanamorphic;\r
+ query += " -V ";\r
#endregion\r
\r
// Video Settings Tab\r
#region Video Settings Tab\r
+ // These are output settings features\r
+ if (mainWindow.check_largeFile.Checked)\r
+ query += " -4 ";\r
\r
- string videoBitrate = mainWindow.text_bitrate.Text;\r
- string videoFilesize = mainWindow.text_filesize.Text;\r
- double videoQuality = mainWindow.slider_videoQuality.Value;\r
- string vidQSetting = "";\r
- string twoPassEncoding = "";\r
- string videoFramerate = mainWindow.drp_videoFramerate.Text;\r
- string vid_frame_rate = "";\r
- string turboH264 = "";\r
- string largeFile = "";\r
- string denoise = "";\r
- string ipodAtom = "";\r
- string optimizeMP4 = "";\r
-\r
- if (videoBitrate != "")\r
- videoBitrate = " -b " + videoBitrate;\r
-\r
- if (videoFilesize != "")\r
- videoFilesize = " -S " + videoFilesize;\r
+ if (mainWindow.check_iPodAtom.Checked)\r
+ query += " -I ";\r
\r
- // Video Quality Setting\r
+ if (mainWindow.check_optimiseMP4.Checked)\r
+ query += " -O ";\r
\r
- if ((videoQuality == 0))\r
- vidQSetting = "";\r
- else\r
+ // Video Settings\r
+ if (mainWindow.text_bitrate.Text != "")\r
+ query += " -b " + mainWindow.text_bitrate.Text;\r
+\r
+ if (mainWindow.text_filesize.Text != "")\r
+ query += " -S " + mainWindow.text_filesize.Text;\r
+\r
+ // Video Quality Setting\r
+ double videoQuality = mainWindow.slider_videoQuality.Value;\r
+ if (videoQuality != 0)\r
{\r
videoQuality = videoQuality / 100;\r
- if (videoQuality == 1)\r
- {\r
- vidQSetting = "1.0";\r
- }\r
- vidQSetting = " -q " + videoQuality.ToString(new CultureInfo("en-US"));\r
+ query += " -q " + videoQuality.ToString(new CultureInfo("en-US"));\r
}\r
\r
if (mainWindow.check_2PassEncode.Checked)\r
- twoPassEncoding = " -2 ";\r
+ query += " -2 ";\r
\r
- if (videoFramerate == "Same as source")\r
- vid_frame_rate = "";\r
- else\r
+ if (mainWindow.drp_videoFramerate.Text != "Same as source")\r
{\r
if (!mainWindow.check_vfr.Checked)\r
- vid_frame_rate = " -r " + videoFramerate;\r
+ query += " -r " + mainWindow.drp_videoFramerate.Text;\r
}\r
\r
if (mainWindow.check_turbo.Checked)\r
- turboH264 = " -T ";\r
+ query += " -T ";\r
\r
- if (mainWindow.check_largeFile.Checked)\r
- largeFile = " -4 ";\r
\r
\r
switch (mainWindow.drp_deNoise.Text)\r
{\r
case "None":\r
- denoise = "";\r
+ query += "";\r
break;\r
case "Weak":\r
- denoise = " --denoise=\"weak\"";\r
+ query += " --denoise=\"weak\"";\r
break;\r
case "Medium":\r
- denoise = " --denoise=\"medium\"";\r
+ query += " --denoise=\"medium\"";\r
break;\r
case "Strong":\r
- denoise = " --denoise=\"strong\"";\r
+ query += " --denoise=\"strong\"";\r
break;\r
default:\r
- denoise = "";\r
+ query += "";\r
break;\r
}\r
-\r
- if (mainWindow.check_iPodAtom.Checked)\r
- ipodAtom = " -I ";\r
-\r
- if (mainWindow.check_optimiseMP4.Checked)\r
- optimizeMP4 = " -O ";\r
-\r
-\r
- string queryVideoSettings = videoBitrate + videoFilesize + vidQSetting + twoPassEncoding + vid_frame_rate + turboH264 + ipodAtom + optimizeMP4 + largeFile + denoise;\r
#endregion\r
\r
// Audio Settings Tab\r
#region Audio Settings Tab\r
-\r
- // Query\r
- string tracks = "";\r
- string aencoder = "";\r
- string audioBitrate = "";\r
- string audioSampleRate = "";\r
- string Mixdown = "";\r
- string drc = "";\r
- string subScan = "";\r
- string forced = "";\r
-\r
// Track 1\r
string track1 = mainWindow.drp_track1Audio.Text;\r
string aencoder1 = mainWindow.drp_audenc_1.Text;\r
// Audio Track Selections\r
//\r
if (track1 == "Automatic")\r
- tracks = " -a 1";\r
- else if (track1 == "")\r
- tracks = "";\r
- else if (track1 == "None")\r
- tracks = "";\r
- else\r
+ query += " -a 1";\r
+ else if (track1 != "None")\r
{\r
string[] tempSub = track1.Split(' ');\r
- tracks = " -a " + tempSub[0];\r
+ query += " -a " + tempSub[0];\r
}\r
\r
if (track2 != "None")\r
{\r
string[] tempSub;\r
tempSub = track2.Split(' ');\r
- if (tracks == "")\r
- tracks = " -a none," + tempSub[0];\r
+\r
+ if (track1 == "None")\r
+ query += " -a none," + tempSub[0];\r
else\r
- tracks = tracks + "," + tempSub[0];\r
+ query += "," + tempSub[0];\r
}\r
\r
if (track3 != "None")\r
{\r
string[] tempSub;\r
tempSub = track3.Split(' ');\r
- tracks = tracks + "," + tempSub[0];\r
+ query += "," + tempSub[0];\r
}\r
\r
if (track4 != "None")\r
{\r
string[] tempSub;\r
tempSub = track4.Split(' ');\r
- tracks = tracks + "," + tempSub[0];\r
+ query += "," + tempSub[0];\r
}\r
\r
//\r
// Audio Encoder\r
//\r
if (aencoder1 != "")\r
- aencoder = " -E " + getAudioEncoder(aencoder1);\r
+ query += " -E " + getAudioEncoder(aencoder1);\r
\r
if (aencoder2 != "")\r
{\r
- if (aencoder == "")\r
- aencoder = " -E faac," + getAudioEncoder(aencoder2);\r
+ if (aencoder1 == "")\r
+ query += " -E faac," + getAudioEncoder(aencoder2);\r
else\r
- aencoder = aencoder + "," + getAudioEncoder(aencoder2);\r
+ query += "," + getAudioEncoder(aencoder2);\r
}\r
\r
if (aencoder3 != "")\r
- {\r
- aencoder = aencoder + "," + getAudioEncoder(aencoder3);\r
- }\r
+ query += "," + getAudioEncoder(aencoder3);\r
\r
if (aencoder4 != "")\r
- {\r
- aencoder = aencoder + "," + getAudioEncoder(aencoder4);\r
- }\r
+ query += "," + getAudioEncoder(aencoder4);\r
\r
//\r
// Audio Bitrate Selections\r
//\r
if (audioBitrate1 != "")\r
- audioBitrate = " -B " + audioBitrate1;\r
+ query += " -B " + audioBitrate1;\r
\r
if (audioBitrate2 != "")\r
{\r
- if (audioBitrate == "")\r
- audioBitrate = " -B 160," + audioBitrate2;\r
+ if (audioBitrate1 == "")\r
+ query += " -B 160," + audioBitrate2;\r
else\r
- audioBitrate = audioBitrate + "," + audioBitrate2;\r
+ query += "," + audioBitrate2;\r
}\r
\r
if (audioBitrate3 != "")\r
- {\r
- audioBitrate = audioBitrate + "," + audioBitrate3;\r
- }\r
+ query += "," + audioBitrate3;\r
\r
if (audioBitrate4 != "")\r
- {\r
- audioBitrate = audioBitrate + "," + audioBitrate4;\r
- }\r
+ query += "," + audioBitrate4;\r
\r
- //Audio Sample Rate - audioSampleRate\r
\r
+ //Audio Sample Rate - audioSampleRate\r
if (audioSampleRate1 != "")\r
- audioSampleRate = " -R " + audioSampleRate1.Replace("Auto", "0");\r
+ query += " -R " + audioSampleRate1.Replace("Auto", "0");\r
\r
if (audioSampleRate2 != "")\r
{\r
- if (audioSampleRate == "")\r
- audioSampleRate = " -R 0," + audioSampleRate2.Replace("Auto", "0");\r
+ if (audioSampleRate1 == "")\r
+ query += " -R 0," + audioSampleRate2.Replace("Auto", "0");\r
else\r
- audioSampleRate = audioSampleRate + "," + audioSampleRate2.Replace("Auto", "0");\r
+ query += "," + audioSampleRate2.Replace("Auto", "0");\r
}\r
else\r
{\r
\r
if ((track2 != "") && (track2 != "None"))\r
{\r
- if (audioSampleRate == "")\r
- audioSampleRate = " -R 0,0";\r
+ if (audioSampleRate1 == "")\r
+ query += " -R 0,0";\r
else\r
- audioSampleRate = audioSampleRate + ",0";\r
+ query += ",0";\r
}\r
-\r
}\r
\r
if (audioSampleRate3 != "")\r
- {\r
- audioSampleRate = audioSampleRate + "," + audioSampleRate3.Replace("Auto", "0");\r
- }\r
+ query += "," + audioSampleRate3.Replace("Auto", "0");\r
\r
if (audioSampleRate4 != "")\r
- {\r
- audioSampleRate = audioSampleRate + "," + audioSampleRate4.Replace("Auto", "0");\r
- }\r
+ query += "," + audioSampleRate4.Replace("Auto", "0");\r
\r
//\r
// Audio Mixdown Selections\r
//\r
\r
- if ((Mixdown1 != "") && (Mixdown1 != "Automatic"))\r
- Mixdown = " -6 " + getMixDown(Mixdown1);\r
+ if (Mixdown1 != "")\r
+ query += " -6 " + getMixDown(Mixdown1);\r
+ else\r
+ query += " -6 dpl2";\r
\r
- if ((Mixdown2 != "") && (Mixdown2 != "Automatic"))\r
- {\r
- if (Mixdown != "")\r
- Mixdown = Mixdown + "," + getMixDown(Mixdown2);\r
- }\r
+ if (Mixdown2 != "" && track2 != "None")\r
+ query += "," + getMixDown(Mixdown2);\r
\r
- if ((Mixdown3 != "") && (Mixdown3 != "Automatic"))\r
- {\r
- if (Mixdown != "")\r
- Mixdown = Mixdown + "," + getMixDown(Mixdown3);\r
- }\r
+ if (Mixdown3 != "" && track3 != "None" && track2 != "None")\r
+ query += "," + getMixDown(Mixdown3);\r
\r
- if ((Mixdown4 != "") && (Mixdown4 != "Automatic"))\r
- {\r
- if (Mixdown != "")\r
- Mixdown = Mixdown + "," + getMixDown(Mixdown4);\r
- }\r
+ if (Mixdown4 != "" && track4 != "None" && track3 != "None")\r
+ query += "," + getMixDown(Mixdown4);\r
\r
\r
//\r
value++;\r
\r
if (value > 1.0)\r
- drc = " -D " + value;\r
+ query += " -D " + value;\r
+ else\r
+ query += " -D 1";\r
\r
value = mainWindow.trackBar2.Value / 10.0;\r
value++;\r
- if (drc2 != "0")\r
- {\r
- if (drc == "")\r
- drc = " -D 1," + value;\r
- else\r
- drc = drc + "," + value;\r
- }\r
+ if (track2 != "None" && drc2 != "0")\r
+ query += "," + value;\r
+ else if (track2 != "None" && drc2 == "0")\r
+ query += ",1";\r
\r
value = mainWindow.trackBar3.Value / 10.0;\r
value++;\r
- if (drc3 != "0")\r
- {\r
- drc = drc + "," + value;\r
- }\r
+ if (track3 != "None" && drc3 != "0")\r
+ query += "," + value;\r
+ else if (track3 != "None" && drc3 == "0")\r
+ query += ",1";\r
\r
value = mainWindow.trackBar4.Value / 10.0;\r
value++;\r
- if (drc4 != "0")\r
- {\r
- drc = drc + "," + value;\r
- }\r
-\r
+ if (track4 != "None" && drc4 != "0")\r
+ query += "," + value;\r
+ else if (track4 != "None" && drc4 == "0")\r
+ query += ",1";\r
\r
// Subtitles\r
string subtitles = mainWindow.drp_subtitle.Text;\r
- if (subtitles == "None")\r
- subtitles = "";\r
- else if (subtitles == "")\r
- subtitles = "";\r
- else if (subtitles == "Autoselect")\r
- {\r
- subScan = " -U ";\r
- subtitles = "";\r
- }\r
- else\r
+ if (subtitles == "Autoselect")\r
+ query += " -U ";\r
+ else if (subtitles != "" && subtitles != "None")\r
{\r
string[] tempSub;\r
tempSub = subtitles.Split(' ');\r
- subtitles = " -s " + tempSub[0];\r
+ query += " -s " + tempSub[0];\r
}\r
\r
if (mainWindow.check_forced.Checked)\r
- forced = " -F ";\r
-\r
-\r
- string queryAudioSettings = tracks + aencoder + audioBitrate + audioSampleRate + Mixdown + drc + subScan + subtitles + forced;\r
+ query += " -F ";\r
\r
#endregion\r
\r
// Chapter Markers Tab\r
#region Chapter Markers\r
\r
- string ChapterMarkers = "";\r
-\r
// Attach Source name and dvd title to the start of the chapters.csv filename.\r
// This is for the queue. It allows different chapter name files for each title.\r
string source_name = mainWindow.text_source.Text;\r
\r
if (mainWindow.Check_ChapterMarkers.Checked)\r
{\r
-\r
if ((source_name.Trim().Replace("-i ", "") != "Click 'Browse' to continue") && (source_name.Trim().Replace("-i ", "") != ""))\r
{\r
if (source_title != "Automatic")\r
\r
Boolean saveCSV = chapterCSVSave(mainWindow, path);\r
if (saveCSV == false)\r
- ChapterMarkers = " -m ";\r
+ query += " -m ";\r
else\r
- {\r
- ChapterMarkers = " --markers=" + "\"" + path + "\"";\r
- }\r
+ query += " --markers=" + "\"" + path + "\"";\r
}\r
else\r
{\r
\r
Boolean saveCSV = chapterCSVSave(mainWindow, path);\r
if (saveCSV == false)\r
- ChapterMarkers = " -m ";\r
+ query += " -m ";\r
else\r
- {\r
- ChapterMarkers = " --markers=" + "\"" + path + "\"";\r
- }\r
+ query += " --markers=" + "\"" + path + "\"";\r
}\r
}\r
else\r
{\r
string path = Path.Combine(Path.GetTempPath(), "chapters.csv");\r
- ChapterMarkers = " --markers=" + "\"" + path + "\"";\r
+ query += " --markers=" + "\"" + path + "\"";\r
}\r
}\r
-\r
- string chapter_markers = ChapterMarkers;\r
#endregion\r
\r
// H264 Tab\r
#region H264 Tab\r
-\r
- string h264Advanced = mainWindow.rtf_x264Query.Text;\r
-\r
- if ((h264Advanced == ""))\r
- h264Advanced = "";\r
- else\r
- h264Advanced = " -x " + h264Advanced;\r
-\r
-\r
- string h264Settings = h264Advanced;\r
+ if (mainWindow.rtf_x264Query.Text != "")\r
+ query += " -x " + mainWindow.rtf_x264Query.Text;\r
#endregion\r
\r
// Other\r
#region Processors / Other\r
-\r
string processors = Properties.Settings.Default.Processors;\r
- // Number of Processors Handler\r
+ if (processors != "Automatic")\r
+ query += " -C " + processors + " ";\r
\r
- if (processors == "Automatic")\r
- processors = "";\r
- else\r
- processors = " -C " + processors + " ";\r
-\r
-\r
- string queryAdvancedSettings = processors;\r
-\r
- string verbose = " -v ";\r
+ query += " -v ";\r
#endregion\r
\r
- return queryPictureSettings + queryVideoSettings + h264Settings + queryAudioSettings + ChapterMarkers + queryAdvancedSettings + verbose;\r
+ return query;\r
}\r
\r
// This function saves the data in the chapters tab, dataGridView into a CSV file called chapters.csv\r
switch (selectedAudio)\r
{\r
case "Automatic":\r
- return "";\r
+ return "dpl2";\r
case "Mono":\r
return "mono";\r
case "Stereo":\r
case "6 Channel Discrete":\r
return "6ch";\r
default:\r
- return "";\r
+ return "dpl2";\r
}\r
}\r
\r
}\r
\r
}\r
-}\r
+}
\ No newline at end of file
System.Windows.Forms.Label Label38;\r
System.Windows.Forms.ContextMenuStrip notifyIconMenu;\r
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmMain));\r
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();\r
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();\r
this.btn_restore = new System.Windows.Forms.ToolStripMenuItem();\r
this.DVD_Save = new System.Windows.Forms.SaveFileDialog();\r
this.File_Save = new System.Windows.Forms.SaveFileDialog();\r
this.drp_audmix_1.TabIndex = 7;\r
this.drp_audmix_1.Text = "Automatic";\r
this.ToolTip.SetToolTip(this.drp_audmix_1, "Please note: Some options require a 5.1 audio channel to be selected");\r
- this.drp_audmix_1.SelectedIndexChanged += new System.EventHandler(this.drp_audioMixDown_SelectedIndexChanged);\r
+ this.drp_audmix_1.SelectedIndexChanged += new System.EventHandler(this.drp_audmix_1_SelectedIndexChanged);\r
// \r
// text_height\r
// \r
// \r
// number\r
// \r
- dataGridViewCellStyle1.Format = "N0";\r
- dataGridViewCellStyle1.NullValue = null;\r
- this.number.DefaultCellStyle = dataGridViewCellStyle1;\r
+ dataGridViewCellStyle2.Format = "N0";\r
+ dataGridViewCellStyle2.NullValue = null;\r
+ this.number.DefaultCellStyle = dataGridViewCellStyle2;\r
this.number.HeaderText = "Chapter Number";\r
this.number.MaxInputLength = 3;\r
this.number.Name = "number";\r
this.mnu_user_guide.Name = "mnu_user_guide";\r
this.mnu_user_guide.Size = new System.Drawing.Size(215, 22);\r
this.mnu_user_guide.Text = "HandBrake User Guide";\r
- this.mnu_user_guide.Click += new System.EventHandler(this.mnu_user_guide_Click_1);\r
+ this.mnu_user_guide.Click += new System.EventHandler(this.mnu_user_guide_Click);\r
// \r
// mnu_handbrake_home\r
// \r
this.GroupBox1.Location = new System.Drawing.Point(10, 10);\r
this.GroupBox1.Name = "GroupBox1";\r
this.GroupBox1.Size = new System.Drawing.Size(705, 87);\r
- this.GroupBox1.TabIndex = 1;\r
+ this.GroupBox1.TabIndex = 0;\r
this.GroupBox1.TabStop = false;\r
this.GroupBox1.Text = "Source";\r
// \r
this.advancedOptions.Name = "advancedOptions";\r
this.advancedOptions.SelectedIndex = 0;\r
this.advancedOptions.Size = new System.Drawing.Size(705, 328);\r
- this.advancedOptions.TabIndex = 5;\r
+ this.advancedOptions.TabIndex = 1;\r
this.advancedOptions.TabStop = false;\r
// \r
// tab_chapters\r
// \r
// btn_reset\r
// \r
- this.btn_reset.Location = new System.Drawing.Point(277, 224);\r
+ this.btn_reset.Location = new System.Drawing.Point(13, 224);\r
this.btn_reset.Name = "btn_reset";\r
this.btn_reset.Size = new System.Drawing.Size(75, 23);\r
this.btn_reset.TabIndex = 41;\r
this.check_pyrmidalBFrames.AutoSize = true;\r
this.check_pyrmidalBFrames.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;\r
this.check_pyrmidalBFrames.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
- this.check_pyrmidalBFrames.Location = new System.Drawing.Point(47, 210);\r
+ this.check_pyrmidalBFrames.Location = new System.Drawing.Point(47, 198);\r
this.check_pyrmidalBFrames.Name = "check_pyrmidalBFrames";\r
this.check_pyrmidalBFrames.RightToLeft = System.Windows.Forms.RightToLeft.No;\r
this.check_pyrmidalBFrames.Size = new System.Drawing.Size(121, 16);\r
this.check_BidirectionalRefinement.AutoSize = true;\r
this.check_BidirectionalRefinement.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;\r
this.check_BidirectionalRefinement.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
- this.check_BidirectionalRefinement.Location = new System.Drawing.Point(21, 188);\r
+ this.check_BidirectionalRefinement.Location = new System.Drawing.Point(21, 180);\r
this.check_BidirectionalRefinement.Name = "check_BidirectionalRefinement";\r
this.check_BidirectionalRefinement.RightToLeft = System.Windows.Forms.RightToLeft.No;\r
this.check_BidirectionalRefinement.Size = new System.Drawing.Size(147, 16);\r
this.check_bFrameRateDistortion.AutoSize = true;\r
this.check_bFrameRateDistortion.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;\r
this.check_bFrameRateDistortion.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
- this.check_bFrameRateDistortion.Location = new System.Drawing.Point(20, 166);\r
+ this.check_bFrameRateDistortion.Location = new System.Drawing.Point(20, 162);\r
this.check_bFrameRateDistortion.Name = "check_bFrameRateDistortion";\r
this.check_bFrameRateDistortion.RightToLeft = System.Windows.Forms.RightToLeft.No;\r
this.check_bFrameRateDistortion.Size = new System.Drawing.Size(147, 16);\r
this.toolStrip1.Name = "toolStrip1";\r
this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;\r
this.toolStrip1.Size = new System.Drawing.Size(938, 39);\r
- this.toolStrip1.TabIndex = 0;\r
+ this.toolStrip1.TabIndex = 1;\r
this.toolStrip1.Text = "toolStrip1";\r
// \r
// btn_source\r
this.splitContainer1.Panel2.Controls.Add(this.groupBox2);\r
this.splitContainer1.Size = new System.Drawing.Size(938, 556);\r
this.splitContainer1.SplitterDistance = 723;\r
- this.splitContainer1.TabIndex = 12;\r
+ this.splitContainer1.TabIndex = 0;\r
// \r
// frmMain\r
// \r
lblStatus.Location = new Point(10, 280);\r
splash.Controls.Add(lblStatus);\r
\r
- //Fire a thread to wait for 2 seconds. The splash screen will exit when the time expires\r
- Thread timer = new Thread(splashTimer);\r
- timer.Start();\r
-\r
InitializeComponent();\r
\r
// Update the users config file with the CLI version data.\r
Properties.Settings.Default.hb_build = int.Parse(x[1].ToString());\r
Properties.Settings.Default.hb_version = x[0].ToString();\r
}\r
- catch (Exception) { /* Do Nothing */ }\r
+ catch (Exception) \r
+ {\r
+ Properties.Settings.Default.hb_build = 0;\r
+ Properties.Settings.Default.hb_version = "0";\r
+ }\r
}\r
+ Thread.Sleep(100);\r
\r
// show the form, but leave disabled until preloading is complete then show the main form\r
this.Enabled = false;\r
if (Properties.Settings.Default.tooltipEnable == "Checked")\r
ToolTip.Active = true;\r
lbl_encode.Text = "";\r
- Thread.Sleep(400);\r
-\r
+ Thread.Sleep(100);\r
\r
//Finished Loading\r
lblStatus.Text = "Loading Complete!";\r
Application.DoEvents();\r
- Thread.Sleep(200);\r
-\r
- // Wait until splash screen is done\r
- while (timer.IsAlive)\r
- { Thread.Sleep(100); }\r
+ Thread.Sleep(100);\r
\r
//Close the splash screen\r
splash.Close();\r
this.Enabled = true;\r
\r
// Some event Handlers. Used for minimize to taskbar\r
- this.Resize += new EventHandler(frmMain_Resize); \r
+ this.Resize += new EventHandler(frmMain_Resize);\r
}\r
\r
// Startup Functions\r
updateWindow.Show();\r
}\r
}\r
- catch (Exception)\r
- {\r
- // Don't want to have an exception messagebox displayed behind the splash screen,\r
- // So, exception is ignored. Lets hope there are no bugs here :)\r
- }\r
- }\r
- private void splashTimer(object sender)\r
- {\r
- Thread.Sleep(1000); //sit for 1 seconds then exit\r
- }\r
- private void showSplash(object sender)\r
- {\r
- Form splash = new frmSplashScreen();\r
- splash.Show();\r
+ catch (Exception) { /* Do Nothing*/ }\r
}\r
private void setupH264Panel()\r
{\r
+ // Set the default settings of the x264 panel\r
drop_bFrames.Text = "Default (0)";\r
drop_refFrames.Text = "Default (1)";\r
drop_subpixelMotionEstimation.Text = "Default (4)";\r
}\r
private void loadUserDefaults()\r
{\r
+ // Try to load the users default settings.\r
string userDefaults = Properties.Settings.Default.defaultUserSettings;\r
try\r
{\r
- // Send the query from the file to the Query Parser class Then load the preset\r
Functions.QueryParser presetQuery = Functions.QueryParser.Parse(userDefaults);\r
hb_common_func.presetLoader(this, presetQuery, "User Defaults ");\r
}\r
- catch (Exception)\r
- {\r
- // Do Nothing. We don't want an error appearing behind the splash screen.\r
- }\r
+ catch (Exception) { /* Do Nothing */ }\r
}\r
\r
#endregion\r
// The Applications Main Menu *****************************************\r
\r
#region File Menu\r
-\r
private void mnu_open_Click(object sender, EventArgs e)\r
{\r
string filename;\r
{\r
Application.Exit();\r
}\r
-\r
#endregion\r
\r
#region Tools Menu\r
-\r
private void mnu_encode_Click(object sender, EventArgs e)\r
{\r
queueWindow.setQueue(encodeQueue);\r
Form Options = new frmOptions(this);\r
Options.ShowDialog();\r
}\r
-\r
#endregion\r
\r
#region Presets Menu\r
-\r
private void mnu_presetReset_Click(object sender, EventArgs e)\r
{\r
hb_common_func.grabCLIPresets();\r
#endregion\r
\r
#region Help Menu\r
-\r
private void mnu_handbrake_forums_Click(object sender, EventArgs e)\r
{\r
Process.Start("http://forum.handbrake.fr/");\r
}\r
- private void mnu_user_guide_Click_1(object sender, EventArgs e)\r
+ private void mnu_user_guide_Click(object sender, EventArgs e)\r
{\r
Process.Start("http://trac.handbrake.fr/wiki/HandBrakeGuide");\r
}\r
Form About = new frmAbout();\r
About.ShowDialog();\r
}\r
-\r
#endregion\r
\r
// MainWindow Components, Actions and Functions ***********************\r
btn_start.Text = "Stop";\r
btn_start.Image = Properties.Resources.stop;\r
}\r
- \r
+\r
\r
}\r
private void btn_add2Queue_Click(object sender, EventArgs e)\r
trackBar2.Enabled = true;\r
drp_audbit_2.Text = "160";\r
drp_audenc_2.Text = "AAC";\r
- drp_audsr_2.Text = "48";\r
+ drp_audsr_2.Text = "Auto";\r
drp_audmix_2.Text = "Automatic";\r
\r
// Enable the 3rd Track.\r
trackBar3.Enabled = true;\r
drp_audbit_3.Text = "160";\r
drp_audenc_3.Text = "AAC";\r
- drp_audsr_3.Text = "48";\r
+ drp_audsr_3.Text = "Auto";\r
drp_audmix_3.Text = "Automatic";\r
\r
// Enable the 4th Track.\r
trackBar4.Enabled = true;\r
drp_audbit_4.Text = "160";\r
drp_audenc_4.Text = "AAC";\r
- drp_audsr_4.Text = "48";\r
+ drp_audsr_4.Text = "Auto";\r
drp_audmix_4.Text = "Automatic";\r
}\r
}\r
\r
- private void drp_audioMixDown_SelectedIndexChanged(object sender, EventArgs e)\r
+ private void drp_audmix_1_SelectedIndexChanged(object sender, EventArgs e)\r
{\r
if ((drp_audenc_1.Text == "AAC") && (drp_audmix_1.Text == "6 Channel Discrete"))\r
setBitrateSelections384(drp_audbit_1);\r
}\r
private void check_Cabac_CheckedChanged(object sender, EventArgs e)\r
{\r
- \r
+\r
x264PanelFunctions.on_x264_WidgetChange("cabac", this);\r
}\r
\r
// Chapter Selection Duration calculation\r
public void calculateDuration()\r
{\r
-\r
int start_chapter;\r
int end_chapter;\r
TimeSpan Duration = TimeSpan.FromSeconds(0.0);\r
}\r
}\r
}\r
- catch (Exception)\r
- {\r
- // Don't do anything\r
- }\r
+ catch (Exception) { /* Don't do anything */ }\r
\r
// Set the Duration\r
lbl_duration.Text = Duration.ToString();\r
// Preset system functions\r
private void loadNormalPreset()\r
{\r
- // Select the "Normal" preset if it exists.\r
- int normal = -1;\r
foreach (TreeNode treenode in treeView_presets.Nodes)\r
{\r
if (treenode.Text.ToString().Equals("Normal"))\r
- normal = treenode.Index;\r
- }\r
- if (normal != -1)\r
- {\r
- TreeNode np = treeView_presets.Nodes[normal];\r
- treeView_presets.SelectedNode = np;\r
+ treeView_presets.SelectedNode = treeView_presets.Nodes[treenode.Index];\r
}\r
}\r
public void loadPresetPanel()\r
\r
#endregion\r
\r
- #region Encoding and Queue\r
+ #region Encoding\r
\r
// Declarations\r
private delegate void UpdateUIHandler();\r
{\r
// Make sure we are not already encoding and if we are then display an error.\r
if (hbProc != null)\r
- {\r
hbProc.CloseMainWindow();\r
- }\r
else\r
{\r
hbProc = cliObj.runCli(this, (string)state);\r
-\r
hbProc.WaitForExit();\r
-\r
setEncodeLabelFinished();\r
hbProc = null;\r
\r
\r
#endregion\r
\r
- #region Taskbar\r
+ #region Taskbar Tray Icon\r
private void frmMain_Resize(object sender, EventArgs e)\r
{\r
if (FormWindowState.Minimized == this.WindowState)\r
this.Hide();\r
}\r
else if (FormWindowState.Normal == this.WindowState)\r
- {\r
notifyIcon.Visible = false;\r
- }\r
}\r
-\r
private void notifyIcon_MouseDoubleClick(object sender, MouseEventArgs e)\r
{\r
this.Visible = true;\r
this.WindowState = FormWindowState.Normal;\r
notifyIcon.Visible = false;\r
}\r
-\r
private void btn_minimize_Click(object sender, EventArgs e)\r
{\r
this.WindowState = FormWindowState.Minimized;\r
}\r
-\r
private void btn_restore_Click(object sender, EventArgs e)\r
{\r
this.Visible = true;\r
this.WindowState = FormWindowState.Normal;\r
notifyIcon.Visible = false;\r
}\r
-\r
#endregion\r
\r
\r