\r
// Audio Settings Tab\r
#region Audio\r
- \r
+\r
if (presetQuery.AudioTrack1 == "")\r
mainWindow.drp_track1Audio.Text = "Automatic";\r
else\r
\r
if (presetQuery.AudioTrack2 == "None")\r
{\r
- if (presetQuery.AudioEncoder2 != null)\r
- {\r
- mainWindow.drp_track2Audio.SelectedIndex = 1;\r
- mainWindow.drp_audsr_2.Enabled = true;\r
- mainWindow.drp_audmix_2.Enabled = true;\r
- mainWindow.drp_audenc_2.Enabled = true;\r
- mainWindow.drp_audbit_2.Enabled = true;\r
- }\r
- else\r
- {\r
- mainWindow.drp_track2Audio.SelectedIndex = 0;\r
- mainWindow.drp_audsr_2.Enabled = false;\r
- mainWindow.drp_audmix_2.Enabled = false;\r
- mainWindow.drp_audenc_2.Enabled = false;\r
- mainWindow.drp_audbit_2.Enabled = false;\r
- }\r
-\r
+ mainWindow.drp_track2Audio.SelectedIndex = 0;\r
+ mainWindow.drp_audsr_2.Enabled = false;\r
+ mainWindow.drp_audmix_2.Enabled = false;\r
+ mainWindow.drp_audenc_2.Enabled = false;\r
+ mainWindow.drp_audbit_2.Enabled = false;\r
}\r
else\r
+ {\r
mainWindow.drp_track2Audio.Text = presetQuery.AudioTrack2;\r
+ mainWindow.drp_audsr_2.Enabled = true;\r
+ mainWindow.drp_audmix_2.Enabled = true;\r
+ mainWindow.drp_audenc_2.Enabled = true;\r
+ mainWindow.drp_audbit_2.Enabled = true;\r
+ }\r
+\r
+ if (presetQuery.AudioTrack3 == "None")\r
+ {\r
+ mainWindow.drp_track3Audio.SelectedIndex = 0;\r
+ mainWindow.drp_audsr_3.Enabled = false;\r
+ mainWindow.drp_audmix_3.Enabled = false;\r
+ mainWindow.drp_audenc_3.Enabled = false;\r
+ mainWindow.drp_audbit_3.Enabled = false;\r
+\r
+ }\r
+ else\r
+ {\r
+ mainWindow.drp_track3Audio.Text = presetQuery.AudioTrack3;\r
+ mainWindow.drp_audsr_3.Enabled = true;\r
+ mainWindow.drp_audmix_3.Enabled = true;\r
+ mainWindow.drp_audenc_3.Enabled = true;\r
+ mainWindow.drp_audbit_3.Enabled = true;\r
+ }\r
+\r
+ if (presetQuery.AudioTrack4 == "None")\r
+ {\r
+ mainWindow.drp_track4Audio.SelectedIndex = 0;\r
+ mainWindow.drp_audsr_4.Enabled = false;\r
+ mainWindow.drp_audmix_4.Enabled = false;\r
+ mainWindow.drp_audenc_4.Enabled = false;\r
+ mainWindow.drp_audbit_4.Enabled = false;\r
+ }\r
+ else\r
+ {\r
+ mainWindow.drp_track4Audio.Text = presetQuery.AudioTrack4;\r
+ mainWindow.drp_audsr_4.Enabled = true;\r
+ mainWindow.drp_audmix_4.Enabled = true;\r
+ mainWindow.drp_audenc_4.Enabled = true;\r
+ mainWindow.drp_audbit_4.Enabled = true;\r
+ }\r
\r
if (presetQuery.AudioEncoder1 != null)\r
- mainWindow.drp_audenc_1.Text = presetQuery.AudioEncoder1;\r
+ mainWindow.drp_audenc_1.Text = presetQuery.AudioEncoder1;\r
mainWindow.drp_audenc_2.Text = presetQuery.AudioEncoder2;\r
+ mainWindow.drp_audenc_3.Text = presetQuery.AudioEncoder3;\r
+ mainWindow.drp_audenc_4.Text = presetQuery.AudioEncoder4;\r
\r
if (presetQuery.AudioBitrate1 != null)\r
- mainWindow.drp_audbit_1.Text = presetQuery.AudioBitrate1;\r
+ mainWindow.drp_audbit_1.Text = presetQuery.AudioBitrate1;\r
mainWindow.drp_audbit_2.Text = presetQuery.AudioBitrate2;\r
+ mainWindow.drp_audbit_3.Text = presetQuery.AudioBitrate4;\r
+ mainWindow.drp_audbit_3.Text = presetQuery.AudioBitrate4;\r
\r
if (presetQuery.AudioSamplerate1 != null)\r
- mainWindow.drp_audsr_1.Text = presetQuery.AudioSamplerate1;\r
+ mainWindow.drp_audsr_1.Text = presetQuery.AudioSamplerate1;\r
mainWindow.drp_audsr_2.Text = presetQuery.AudioSamplerate2;\r
+ mainWindow.drp_audsr_3.Text = presetQuery.AudioSamplerate3;\r
+ mainWindow.drp_audsr_4.Text = presetQuery.AudioSamplerate4;\r
\r
mainWindow.drp_audmix_1.Text = presetQuery.AudioTrackMix1;\r
mainWindow.drp_audmix_2.Text = presetQuery.AudioTrackMix2;\r
+ mainWindow.drp_audmix_3.Text = presetQuery.AudioTrackMix3;\r
+ mainWindow.drp_audmix_4.Text = presetQuery.AudioTrackMix4;\r
+\r
\r
- \r
- \r
+ // Dynamic Range Compression (Should be a float but we use double for ease)\r
+ double value = 0;\r
+ double actualValue = 0;\r
+\r
+ value = presetQuery.DRC1;\r
+ if (value > 0)\r
+ value = value - 10;\r
+ mainWindow.trackBar1.Value = int.Parse(value.ToString());\r
+ actualValue = presetQuery.DRC1 / 10;\r
+ mainWindow.lbl_drc1.Text = actualValue.ToString();\r
+\r
+ value = presetQuery.DRC2;\r
+ if (value > 0)\r
+ value = value - 10;\r
+ mainWindow.trackBar2.Value = int.Parse(value.ToString());\r
+ actualValue = presetQuery.DRC2 / 10;\r
+ mainWindow.lbl_drc2.Text = actualValue.ToString();\r
+\r
+ value = presetQuery.DRC3;\r
+ if (value > 0)\r
+ value = value - 10;\r
+ mainWindow.trackBar3.Value = int.Parse(value.ToString());\r
+ actualValue = presetQuery.DRC3 / 10;\r
+ mainWindow.lbl_drc3.Text = actualValue.ToString();\r
+\r
+ value = presetQuery.DRC4;\r
+ if (value > 0)\r
+ value = value - 10;\r
+ mainWindow.trackBar4.Value = int.Parse(value.ToString());\r
+ actualValue = presetQuery.DRC4 / 10;\r
+ mainWindow.lbl_drc4.Text = actualValue.ToString();\r
+\r
+\r
+ // Subtitle Stuff\r
mainWindow.drp_subtitle.Text = presetQuery.Subtitles;\r
\r
if (presetQuery.ForcedSubtitles == true)\r
else\r
mainWindow.check_forced.CheckState = CheckState.Unchecked;\r
\r
- // Dynamic Range Compression (Should be a float but we use double for ease)\r
- double value = presetQuery.DRC;\r
- if (value > 0)\r
- value = value - 10;\r
- mainWindow.slider_drc.Value = int.Parse(value.ToString());\r
-\r
- double actualValue = presetQuery.DRC / 10;\r
- mainWindow.lbl_drc.Text = actualValue.ToString();\r
-\r
\r
#endregion\r
\r
// Audio Settings Tab\r
#region Audio Settings Tab\r
\r
- // Used Varibles\r
+ // Query\r
+ string tracks = "";\r
+ string aencoder = "";\r
string audioBitrate = "";\r
- string audioChannels = "";\r
- string SixChannelAudio = "";\r
+ string audioSampleRate = "";\r
+ string Mixdown = "";\r
+ string drc = "";\r
string subScan = "";\r
string forced = "";\r
- string drc = "";\r
- string audioSampleRate = "";\r
- string audioEncoder = "";\r
\r
// Track 1\r
string track1 = mainWindow.drp_track1Audio.Text;\r
- string vencoder1 = mainWindow.drp_audenc_1.Text;\r
+ string aencoder1 = mainWindow.drp_audenc_1.Text;\r
string audioBitrate1 = mainWindow.drp_audbit_1.Text;\r
string audioSampleRate1 = mainWindow.drp_audsr_1.Text;\r
string Mixdown1 = mainWindow.drp_audmix_1.Text;\r
+ string drc1 = mainWindow.trackBar1.Value.ToString();\r
\r
// Track 2\r
string track2 = mainWindow.drp_track2Audio.Text;\r
- string vencoder2 = mainWindow.drp_audenc_2.Text;\r
+ string aencoder2 = mainWindow.drp_audenc_2.Text;\r
string audioBitrate2 = mainWindow.drp_audbit_2.Text;\r
string audioSampleRate2 = mainWindow.drp_audsr_2.Text;\r
string Mixdown2 = mainWindow.drp_audmix_2.Text;\r
-\r
+ string drc2 = mainWindow.trackBar2.Value.ToString();\r
+\r
+ // Track 3\r
+ string track3 = mainWindow.drp_track3Audio.Text;\r
+ string aencoder3 = mainWindow.drp_audenc_3.Text;\r
+ string audioBitrate3 = mainWindow.drp_audbit_3.Text;\r
+ string audioSampleRate3 = mainWindow.drp_audsr_3.Text;\r
+ string Mixdown3 = mainWindow.drp_audmix_3.Text;\r
+ string drc3 = mainWindow.trackBar3.Value.ToString();\r
+\r
+ // Track 4\r
+ string track4 = mainWindow.drp_track4Audio.Text;\r
+ string aencoder4 = mainWindow.drp_audenc_4.Text;\r
+ string audioBitrate4 = mainWindow.drp_audbit_4.Text;\r
+ string audioSampleRate4 = mainWindow.drp_audsr_4.Text;\r
+ string Mixdown4 = mainWindow.drp_audmix_4.Text;\r
+ string drc4 = mainWindow.trackBar4.Value.ToString();\r
+\r
+\r
+ //\r
// Audio Track Selections\r
+ //\r
if (track1 == "Automatic")\r
- audioChannels = "";\r
+ tracks = " -a auto";\r
else if (track1 == "")\r
- audioChannels = "";\r
+ tracks = "";\r
else if (track1 == "None")\r
- audioChannels = " -a none";\r
+ tracks = "";\r
else\r
{\r
- string[] tempSub;\r
- tempSub = track1.Split(' ');\r
- audioChannels = " -a " + tempSub[0];\r
+ string[] tempSub = track1.Split(' ');\r
+ tracks = " -a " + tempSub[0];\r
}\r
\r
- if (audioChannels != "")\r
+ if (track2 != "None")\r
{\r
- if ((track2 != "") && (track2 != "None"))\r
- {\r
- string[] tempSub;\r
- tempSub = track2.Split(' ');\r
- audioChannels = audioChannels + "," + tempSub[0];\r
- }\r
- }\r
- else\r
- {\r
- if ((track2 != "") && (track2 != "None"))\r
- {\r
- string[] tempSub;\r
- tempSub = track2.Split(' ');\r
- audioChannels = " -a " + tempSub[0];\r
- }\r
+ string[] tempSub;\r
+ tempSub = track2.Split(' ');\r
+ if (tracks == "")\r
+ tracks = " -a none," + tempSub[0];\r
+ else\r
+ tracks = tracks + "," + tempSub[0];\r
}\r
\r
- // Audio Mixdown Selections\r
- switch (Mixdown1)\r
+ if (track3 != "None")\r
{\r
- case "Automatic":\r
- Mixdown1 = "";\r
- break;\r
- case "Mono":\r
- Mixdown1 = "mono";\r
- break;\r
- case "Stereo":\r
- Mixdown1 = "stereo";\r
- break;\r
- case "Dolby Surround":\r
- Mixdown1 = "dpl1";\r
- break;\r
- case "Dolby Pro Logic II":\r
- Mixdown1 = "dpl2";\r
- break;\r
- case "6 Channel Discrete":\r
- Mixdown1 = "6ch";\r
- break;\r
- default:\r
- Mixdown1 = "";\r
- break;\r
+ string[] tempSub;\r
+ tempSub = track3.Split(' ');\r
+ if (tracks == "")\r
+ tracks = " -a none,none," + tempSub[0];\r
+ else\r
+ tracks = tracks + "," + tempSub[0];\r
}\r
\r
- if (Mixdown1 != "")\r
- SixChannelAudio = " -6 " + Mixdown1;\r
- else\r
+ if (track4 != "None")\r
{\r
- if (mainWindow.drp_track2Audio.Text == "None")\r
- SixChannelAudio = "";\r
+ string[] tempSub;\r
+ tempSub = track4.Split(' ');\r
+ if (tracks == "")\r
+ tracks = " -a none,none,none," + tempSub[0];\r
else\r
- {\r
- if (mainWindow.drp_audmix_2.Text == "Automatic")\r
- SixChannelAudio = "";\r
- else\r
- SixChannelAudio = " -6 dpl2";\r
- }\r
+ tracks = tracks + "," + tempSub[0];\r
}\r
\r
- switch (Mixdown2)\r
- {\r
- case "Automatic":\r
- Mixdown2 = "";\r
- break;\r
- case "Mono":\r
- Mixdown2 = "mono";\r
- break;\r
- case "Stereo":\r
- Mixdown2 = "stereo";\r
- break;\r
- case "Dolby Surround":\r
- Mixdown2 = "dpl1";\r
- break;\r
- case "Dolby Pro Logic II":\r
- Mixdown2 = "dpl2";\r
- break;\r
- case "6 Channel Discrete":\r
- Mixdown2 = "6ch";\r
- break;\r
- default:\r
- Mixdown2 = "";\r
- break;\r
- }\r
+ //\r
+ // Audio Encoder\r
+ //\r
+ if (aencoder1 != "")\r
+ aencoder = " -E " + getAudioEncoder(aencoder1);\r
\r
- if (Mixdown2 != "")\r
+ if (aencoder2 != "")\r
{\r
- if (SixChannelAudio != "")\r
- SixChannelAudio = SixChannelAudio + "," + Mixdown2;\r
+ if (aencoder == "")\r
+ aencoder = " -E faac," + getAudioEncoder(aencoder2);\r
else\r
- SixChannelAudio = " -6 " + Mixdown2;\r
+ aencoder = aencoder + "," + getAudioEncoder(aencoder2);\r
}\r
\r
- // Audio Encoder Selections\r
- switch (mainWindow.drp_audenc_1.Text)\r
+ if (aencoder3 != "")\r
{\r
- case "AAC":\r
- audioEncoder = " -E faac";\r
- break;\r
- case "MP3":\r
- audioEncoder = " -E lame";\r
- break;\r
- case "Vorbis":\r
- audioEncoder = " -E vorbis";\r
- break;\r
- case "AC3":\r
- audioEncoder = " -E ac3";\r
- break;\r
- case "AAC + AC3":\r
- audioEncoder = " -E aac+ac3";\r
- break;\r
- default:\r
- break;\r
+ if (aencoder == "")\r
+ aencoder = " -E faac,faac," + getAudioEncoder(aencoder3);\r
+ else\r
+ aencoder = aencoder + "," + getAudioEncoder(aencoder3);\r
}\r
\r
- switch (mainWindow.drp_audenc_2.Text)\r
+ if (aencoder4 != "")\r
{\r
- case "AAC":\r
- if (audioEncoder == "")\r
- audioEncoder = " -E faac";\r
- else\r
- audioEncoder = audioEncoder + ",faac";\r
- break;\r
- case "MP3":\r
- if (audioEncoder == "")\r
- audioEncoder = " -E lame";\r
- else\r
- audioEncoder = audioEncoder + ",lame";\r
- break;\r
- case "Vorbis":\r
- if (audioEncoder == "")\r
- audioEncoder = " -E vorbis";\r
- else\r
- audioEncoder = audioEncoder + ",vorbis";\r
- break;\r
- case "AC3":\r
- if (audioEncoder == "")\r
- audioEncoder = " -E ac3";\r
- else\r
- audioEncoder = audioEncoder + ",ac3";\r
- break;\r
- case "AAC + AC3":\r
- if (audioEncoder == "")\r
- audioEncoder = " -E aac+ac3";\r
- else\r
- audioEncoder = audioEncoder + ",aac+ac3";\r
- break;\r
- default:\r
- break;\r
+ if (aencoder == "")\r
+ aencoder = " -E faac,faac,faac," + getAudioEncoder(aencoder4);\r
+ else\r
+ aencoder = aencoder + "," + getAudioEncoder(aencoder4);\r
}\r
\r
- // Audio BitRate Selections\r
+ //\r
+ // Audio Bitrate Selections\r
+ //\r
if (audioBitrate1 != "")\r
audioBitrate = " -B " + audioBitrate1;\r
\r
if (audioBitrate2 != "")\r
{\r
if (audioBitrate == "")\r
- audioBitrate = " -B " + audioBitrate2;\r
+ audioBitrate = " -B 160," + audioBitrate2;\r
else\r
audioBitrate = audioBitrate + "," + audioBitrate2;\r
}\r
\r
- // Audio SampleRate Selections\r
+ if (audioBitrate3 != "")\r
+ {\r
+ if (audioBitrate == "")\r
+ audioBitrate = " -B 160,160," + audioBitrate3;\r
+ else\r
+ audioBitrate = audioBitrate + "," + audioBitrate3;\r
+ }\r
+\r
+ if (audioBitrate4 != "")\r
+ {\r
+ if (audioBitrate == "")\r
+ audioBitrate = " -B 160,160,160," + audioBitrate4;\r
+ else\r
+ audioBitrate = audioBitrate + "," + audioBitrate4;\r
+ }\r
+\r
+ //Audio Sample Rate - audioSampleRate\r
+\r
if (audioSampleRate1 != "")\r
audioSampleRate = " -R " + audioSampleRate1;\r
\r
if (audioSampleRate2 != "")\r
{\r
if (audioSampleRate == "")\r
- audioSampleRate = " -R " + audioSampleRate2;\r
+ audioSampleRate = " -R 48," + audioSampleRate2;\r
else\r
audioSampleRate = audioSampleRate + "," + audioSampleRate2;\r
}\r
\r
- //Dynamic Range Compression (expects a float but a double is used for ease)\r
- double value = mainWindow.slider_drc.Value / 10.0;\r
+ if (audioSampleRate3 != "")\r
+ {\r
+ if (audioSampleRate == "")\r
+ audioSampleRate = " -R 48,48," + audioSampleRate3;\r
+ else\r
+ audioSampleRate = audioSampleRate + "," + audioSampleRate3;\r
+ }\r
+\r
+ if (audioSampleRate4 != "")\r
+ {\r
+ if (audioSampleRate == "")\r
+ audioSampleRate = " -R 48,48,48," + audioSampleRate4;\r
+ else\r
+ audioSampleRate = audioSampleRate + "," + audioSampleRate4;\r
+ }\r
+\r
+ //\r
+ // Audio Mixdown Selections\r
+ //\r
+\r
+ if ((Mixdown1 != "") && (Mixdown1 != "Automatic"))\r
+ Mixdown = " -6 " + getMixDown(Mixdown1);\r
+\r
+ if ((Mixdown2 != "") && (Mixdown2 != "Automatic"))\r
+ {\r
+ if (Mixdown != "")\r
+ Mixdown = Mixdown + "," + getMixDown(Mixdown2);\r
+ }\r
+\r
+ if ((Mixdown3 != "") && (Mixdown3 != "Automatic"))\r
+ {\r
+ if (Mixdown != "")\r
+ Mixdown = Mixdown + "," + getMixDown(Mixdown3);\r
+ }\r
+\r
+ if ((Mixdown4 != "") && (Mixdown4 != "Automatic"))\r
+ {\r
+ if (Mixdown != "")\r
+ Mixdown = Mixdown + "," + getMixDown(Mixdown4);\r
+ }\r
+\r
+\r
+ //\r
+ // DRC\r
+ //\r
+ double value = 0;\r
+\r
+ value = mainWindow.trackBar1.Value / 10.0;\r
+ value++;\r
+\r
+ if (value > 1.0)\r
+ drc = " -D " + value;\r
+\r
+ value = mainWindow.trackBar2.Value / 10.0;\r
value++;\r
- drc = " -D " + value;\r
+ if (drc2 != "0")\r
+ {\r
+ if (drc == "")\r
+ drc = " -D 1," + value;\r
+ else\r
+ drc = drc + "," + value;\r
+ }\r
+\r
+ value = mainWindow.trackBar3.Value / 10.0;\r
+ value++;\r
+ if (drc3 != "0")\r
+ {\r
+ if (drc == "")\r
+ drc = " -D 1,1," + value;\r
+ else\r
+ drc = drc + "," + value;\r
+ }\r
+\r
+ value = mainWindow.trackBar4.Value / 10.0;\r
+ value++;\r
+ if (drc4 != "0")\r
+ {\r
+ if (drc == "")\r
+ drc = " -D 1,1,1," + value;\r
+ else\r
+ drc = drc + "," + value;\r
+ }\r
+\r
\r
// Subtitles\r
string subtitles = mainWindow.drp_subtitle.Text;\r
forced = " -F ";\r
\r
\r
- string queryAudioSettings = audioChannels + SixChannelAudio + audioEncoder + audioBitrate + audioSampleRate + drc + subScan + subtitles + forced;\r
+ string queryAudioSettings = tracks + aencoder + audioBitrate + audioSampleRate + Mixdown + drc + subScan + subtitles + forced;\r
+\r
#endregion\r
\r
// Chapter Markers Tab\r
}\r
}\r
\r
+\r
+ private string getMixDown(string selectedAudio)\r
+ {\r
+ switch (selectedAudio)\r
+ {\r
+ case "Automatic":\r
+ return "";\r
+ case "Mono":\r
+ return "mono";\r
+ case "Stereo":\r
+ return "stereo";\r
+ case "Dolby Surround":\r
+ return "dpl1";\r
+ case "Dolby Pro Logic II":\r
+ return "dpl2";\r
+ case "6 Channel Discrete":\r
+ return "6ch";\r
+ default:\r
+ return "";\r
+ }\r
+ }\r
+\r
+ private string getAudioEncoder(string selectedEncoder)\r
+ {\r
+ switch (selectedEncoder)\r
+ {\r
+ case "AAC":\r
+ return "faac";\r
+ case "MP3":\r
+ return "lame";\r
+ case "Vorbis":\r
+ return "vorbis";\r
+ case "AC3":\r
+ return "ac3";\r
+ default:\r
+ return "";\r
+ }\r
+ }\r
+\r
+\r
// End of Functions\r
}\r
}\r