]> granicus.if.org Git - handbrake/commitdiff
WinGui:
authorsr55 <sr55.hb@outlook.com>
Sat, 12 Apr 2008 14:54:33 +0000 (14:54 +0000)
committersr55 <sr55.hb@outlook.com>
Sat, 12 Apr 2008 14:54:33 +0000 (14:54 +0000)
- Expands the audio tab to 4 audio tracks. This will require through testing. Users should avoid track combinations such as 1 & 4, 1 & 3, and 2 & 4. Instead, 1 & 2 & 3 or 1 & 2 or 2 & 3 & 4 should be used.

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1406 b64f7644-9d1e-0410-96f1-a4d463321fa5

win/C#/Functions/Common.cs
win/C#/Functions/QueryParser.cs
win/C#/frmMain.Designer.cs
win/C#/frmMain.cs

index 184fadb30834cba4529bcdb79a9018778cc3e450..d87e937163b08d9db005e66d3652411c973de869 100644 (file)
@@ -288,7 +288,7 @@ namespace Handbrake.Functions
 \r
             // Audio Settings Tab\r
             #region Audio\r
-            \r
+\r
             if (presetQuery.AudioTrack1 == "")\r
                 mainWindow.drp_track1Audio.Text = "Automatic";\r
             else\r
@@ -296,44 +296,114 @@ namespace Handbrake.Functions
 \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
@@ -344,15 +414,6 @@ namespace Handbrake.Functions
             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
@@ -627,223 +688,250 @@ namespace Handbrake.Functions
             // 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
@@ -867,7 +955,8 @@ namespace Handbrake.Functions
                 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
@@ -1029,6 +1118,46 @@ namespace Handbrake.Functions
             }\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
index 1599bdbcf1fe388a1cfddaabff92dc94372e39f2..df82fc2ccb2a709c8611d1ae7eb2173c2b0d24ab 100644 (file)
@@ -428,7 +428,7 @@ namespace Handbrake.Functions
         #region Audio Settings\r
         private string q_audioTrack1;\r
         /// <summary>\r
-        /// Returns a string with the First selected Audio track\r
+        /// Returns a string with the selected Audio track\r
         /// </summary>\r
         public string AudioTrack1\r
         {\r
@@ -440,7 +440,7 @@ namespace Handbrake.Functions
 \r
         private string q_audioTrack2;\r
         /// <summary>\r
-        /// Returns a string with the First selected Audio track\r
+        /// Returns a string with the selected Audio track\r
         /// </summary>\r
         public string AudioTrack2\r
         {\r
@@ -450,6 +450,30 @@ namespace Handbrake.Functions
             }\r
         }\r
 \r
+        private string q_audioTrack3;\r
+        /// <summary>\r
+        /// Returns a string with the selected Audio track\r
+        /// </summary>\r
+        public string AudioTrack3\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioTrack3;\r
+            }\r
+        }\r
+\r
+        private string q_audioTrack4;\r
+        /// <summary>\r
+        /// Returns a string with the selected Audio track\r
+        /// </summary>\r
+        public string AudioTrack4\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioTrack4;\r
+            }\r
+        }\r
+\r
         private string q_audioTrackMix1;\r
         /// <summary>\r
         /// Returns a string with the First selected Audio track Mix\r
@@ -474,6 +498,30 @@ namespace Handbrake.Functions
             }\r
         }\r
 \r
+        private string q_audioTrackMix3;\r
+        /// <summary>\r
+        /// Returns a string with the First selected Audio track Mix\r
+        /// </summary>\r
+        public string AudioTrackMix3\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioTrackMix3;\r
+            }\r
+        }\r
+\r
+        private string q_audioTrackMix4;\r
+        /// <summary>\r
+        /// Returns a string with the First selected Audio track Mix\r
+        /// </summary>\r
+        public string AudioTrackMix4\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioTrackMix4;\r
+            }\r
+        }\r
+\r
         private string q_audioEncoder1;\r
         /// <summary>\r
         /// Returns an String\r
@@ -500,6 +548,32 @@ namespace Handbrake.Functions
             }\r
         }\r
 \r
+        private string q_audioEncoder3;\r
+        /// <summary>\r
+        /// Returns an String\r
+        /// The Audio Encoder used.\r
+        /// </summary>\r
+        public string AudioEncoder3\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioEncoder3;\r
+            }\r
+        }\r
+\r
+        private string q_audioEncoder4;\r
+        /// <summary>\r
+        /// Returns an String\r
+        /// The Audio Encoder used.\r
+        /// </summary>\r
+        public string AudioEncoder4\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioEncoder4;\r
+            }\r
+        }\r
+\r
         private string q_audioBitrate1;\r
         /// <summary>\r
         /// Returns a string with the audio bitrate\r
@@ -524,6 +598,30 @@ namespace Handbrake.Functions
             }\r
         }\r
 \r
+        private string q_audioBitrate3;\r
+        /// <summary>\r
+        /// Returns a string with the audio bitrate\r
+        /// </summary>\r
+        public string AudioBitrate3\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioBitrate3;\r
+            }\r
+        }\r
+\r
+        private string q_audioBitrate4;\r
+        /// <summary>\r
+        /// Returns a string with the audio bitrate\r
+        /// </summary>\r
+        public string AudioBitrate4\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioBitrate4;\r
+            }\r
+        }\r
+\r
         private string q_audioSamplerate1;\r
         /// <summary>\r
         /// Returns a string with the audio sample rate\r
@@ -548,15 +646,75 @@ namespace Handbrake.Functions
             }\r
         }\r
 \r
-        private double q_drc;\r
+        private string q_audioSamplerate3;\r
+        /// <summary>\r
+        /// Returns a string with the audio sample rate\r
+        /// </summary>\r
+        public string AudioSamplerate3\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioSamplerate3;\r
+            }\r
+        }\r
+\r
+        private string q_audioSamplerate4;\r
+        /// <summary>\r
+        /// Returns a string with the audio sample rate\r
+        /// </summary>\r
+        public string AudioSamplerate4\r
+        {\r
+            get\r
+            {\r
+                return this.q_audioSamplerate4;\r
+            }\r
+        }\r
+\r
+        private double q_drc1;\r
+        /// <summary>\r
+        /// Returns a string with the selected subtitle track\r
+        /// </summary>\r
+        public double DRC1\r
+        {\r
+            get\r
+            {\r
+                return this.q_drc1;\r
+            }\r
+        }\r
+\r
+        private double q_drc2;\r
+        /// <summary>\r
+        /// Returns a string with the selected subtitle track\r
+        /// </summary>\r
+        public double DRC2\r
+        {\r
+            get\r
+            {\r
+                return this.q_drc2;\r
+            }\r
+        }\r
+\r
+        private double q_drc3;\r
         /// <summary>\r
         /// Returns a string with the selected subtitle track\r
         /// </summary>\r
-        public double DRC\r
+        public double DRC3\r
         {\r
             get\r
             {\r
-                return this.q_drc;\r
+                return this.q_drc3;\r
+            }\r
+        }\r
+\r
+        private double q_drc4;\r
+        /// <summary>\r
+        /// Returns a string with the selected subtitle track\r
+        /// </summary>\r
+        public double DRC4\r
+        {\r
+            get\r
+            {\r
+                return this.q_drc4;\r
             }\r
         }\r
 \r
@@ -659,16 +817,34 @@ namespace Handbrake.Functions
             //Audio Settings Tab\r
             Match audioTrack1 = Regex.Match(input, @"-a ([0-9]*)");\r
             Match audioTrack2 = Regex.Match(input, @"-a ([0-9]*),([0-9]*)");\r
+            Match audioTrack3 = Regex.Match(input, @"-a ([0-9]*),([0-9]*),([0-9]*)");\r
+            Match audioTrack4 = Regex.Match(input, @"-a ([0-9]*),([0-9]*),([0-9]*),([0-9]*)");\r
+\r
             Match audioTrack1Mix = Regex.Match(input, @"-6 ([0-9a-z0-9]*)");  \r
-            Match audioTrack2Mix = Regex.Match(input, @"-6 ([0-9a-z0-9]*),([0-9a-z0-9]*)");  \r
+            Match audioTrack2Mix = Regex.Match(input, @"-6 ([0-9a-z0-9]*),([0-9a-z0-9]*)");\r
+            Match audioTrack3Mix = Regex.Match(input, @"-6 ([0-9a-z0-9]*),([0-9a-z0-9]*),([0-9a-z0-9]*)");\r
+            Match audioTrack4Mix = Regex.Match(input, @"-6 ([0-9a-z0-9]*),([0-9a-z0-9]*),([0-9a-z0-9]*),([0-9a-z0-9]*)"); \r
+\r
             Match audioEncoder1 = Regex.Match(input, @"-E ([a-zA-Z0-9+]*)");\r
             Match audioEncoder2 = Regex.Match(input, @"-E ([a-zA-Z0-9+]*),([a-zA-Z0-9+]*)");\r
+            Match audioEncoder3 = Regex.Match(input, @"-E ([a-zA-Z0-9+]*),([a-zA-Z0-9+]*),([a-zA-Z0-9+]*)");\r
+            Match audioEncoder4 = Regex.Match(input, @"-E ([a-zA-Z0-9+]*),([a-zA-Z0-9+]*),([a-zA-Z0-9+]*),([a-zA-Z0-9+]*)");\r
+\r
             Match audioBitrate1 = Regex.Match(input, @"-B ([0-9]*)");\r
             Match audioBitrate2 = Regex.Match(input, @"-B ([0-9]*),([0-9]*)");\r
+            Match audioBitrate3 = Regex.Match(input, @"-B ([0-9]*),([0-9]*),([0-9]*)");\r
+            Match audioBitrate4 = Regex.Match(input, @"-B ([0-9]*),([0-9]*),([0-9]*),([0-9]*)");\r
+\r
             Match audioSampleRate1 = Regex.Match(input, @"-R ([0-9.]*)");\r
             Match audioSampleRate2 = Regex.Match(input, @"-R ([0-9.]*),([0-9.]*)");\r
+            Match audioSampleRate3 = Regex.Match(input, @"-R ([0-9.]*),([0-9.]*),([0-9.]*)");\r
+            Match audioSampleRate4 = Regex.Match(input, @"-R ([0-9.]*),([0-9.]*),([0-9.]*),([0-9.]*)");\r
+\r
+            Match drc1 = Regex.Match(input, @"-D ([0-9.]*)");\r
+            Match drc2 = Regex.Match(input, @"-D ([0-9.]*),([0-9.]*)");\r
+            Match drc3 = Regex.Match(input, @"-D ([0-9.]*),([0-9.]*),([0-9.]*)");\r
+            Match drc4 = Regex.Match(input, @"-D ([0-9.]*),([0-9.]*),([0-9.]*),([0-9.]*)");\r
 \r
-            Match drc = Regex.Match(input, @"-D ([0-9.]*)");\r
             Match subtitles = Regex.Match(input, @"-s ([0-9a-zA-Z]*)");\r
             Match subScan = Regex.Match(input, @"-U");\r
             Match forcedSubtitles = Regex.Match(input, @"-F");\r
@@ -683,9 +859,7 @@ namespace Handbrake.Functions
             #region Set Varibles\r
             try\r
             {\r
-                /*\r
-                 * Source\r
-                 */\r
+      \r
                 #region Source Tab\r
 \r
                 thisQuery.q_source = source.ToString().Replace("-i ", "").Replace("\"", "");\r
@@ -711,14 +885,10 @@ namespace Handbrake.Functions
 \r
                 #endregion\r
 \r
-                /*\r
-                 * Destination\r
-                 */\r
                 #region Destination\r
                 thisQuery.q_destination = destination.ToString().Replace("-o ", "").Replace("\"", "");\r
 \r
                 string videoEncoderConvertion;\r
-                string audioEncoderConvertion;\r
 \r
                 videoEncoderConvertion = videoEncoder.ToString().Replace("-e ", "");\r
                 switch (videoEncoderConvertion)\r
@@ -746,9 +916,6 @@ namespace Handbrake.Functions
 \r
                 #endregion\r
 \r
-                /*\r
-                 * Picture Settings Tab\r
-                 */\r
                 #region Picture Tab\r
 \r
                 if (width.Success != false)\r
@@ -821,11 +988,8 @@ namespace Handbrake.Functions
                 thisQuery.q_looseAnamorphic = lanamorphic.Success;\r
 \r
                 #endregion\r
-\r
-                /*\r
-                 * Video Settings Tab\r
-                 */\r
-                #region Video\r
+     \r
+                #region Video Settings Tab\r
                 thisQuery.q_grayscale = grayscale.Success;\r
                 thisQuery.q_twoPass = twoPass.Success;\r
                 thisQuery.q_turboFirst = turboFirstPass.Success;\r
@@ -852,10 +1016,8 @@ namespace Handbrake.Functions
 \r
                 #endregion\r
 \r
-                /*\r
-                 * Audio Settings Tab\r
-                 */\r
-                #region Audio\r
+                #region Audio Tab\r
+\r
                 // Tracks\r
                 if (audioTrack1.Success != false)\r
                     thisQuery.q_audioTrack1 = audioTrack1.ToString().Replace("-a ", "");\r
@@ -869,32 +1031,29 @@ namespace Handbrake.Functions
                 }\r
                 else\r
                     thisQuery.q_audioTrack2 = "None";\r
+\r
+                if (audioTrack3.Success != false)\r
+                {\r
+                    string[] audioChan = audioTrack3.ToString().Split(',');\r
+                    thisQuery.q_audioTrack3 = audioChan[2];\r
+                }\r
+                else\r
+                    thisQuery.q_audioTrack3 = "None";\r
+\r
+                if (audioTrack4.Success != false)\r
+                {\r
+                    string[] audioChan = audioTrack4.ToString().Split(',');\r
+                    thisQuery.q_audioTrack4 = audioChan[3];\r
+                }\r
+                else\r
+                    thisQuery.q_audioTrack4 = "None";\r
+\r
     \r
                 // Mixdowns\r
                 thisQuery.q_audioTrackMix1 = "Automatic";\r
                 if (audioTrack1Mix.Success != false)\r
                 {\r
-                    switch (audioTrack1Mix.ToString().Replace("-6 ", "").Replace(" ", ""))\r
-                    {\r
-                        case "mono":\r
-                            thisQuery.q_audioTrackMix1 = "Mono";\r
-                            break;\r
-                        case "stereo":\r
-                            thisQuery.q_audioTrackMix1 = "Stereo";\r
-                            break;\r
-                        case "dpl1":\r
-                            thisQuery.q_audioTrackMix1 = "Dolby Surround";\r
-                            break;\r
-                        case "dpl2":\r
-                            thisQuery.q_audioTrackMix1 = "Dolby Pro Logic II";\r
-                            break;\r
-                        case "6ch":\r
-                            thisQuery.q_audioTrackMix1 = "6 Channel Discrete";\r
-                            break;\r
-                        default:\r
-                            thisQuery.q_audioTrackMix1 = "Automatic";\r
-                            break;\r
-                    }\r
+                    thisQuery.q_audioTrackMix1 = getMixDown(audioTrack1Mix.ToString().Replace("-6 ", "").Replace(" ", ""));\r
                 }\r
 \r
                 thisQuery.q_audioTrackMix2 = "Automatic";\r
@@ -902,84 +1061,46 @@ namespace Handbrake.Functions
                 {\r
                     string[] audio2mix = audioTrack2Mix.ToString().Split(',');\r
                     audio2mix[1] = audio2mix[1].Trim();\r
-                    switch (audio2mix[1])\r
-                    {\r
-                        case "mono":\r
-                            thisQuery.q_audioTrackMix2 = "Mono";\r
-                            break;\r
-                        case "stereo":\r
-                            thisQuery.q_audioTrackMix2 = "Stereo";\r
-                            break;\r
-                        case "dpl1":\r
-                            thisQuery.q_audioTrackMix2 = "Dolby Surround";\r
-                            break;\r
-                        case "dpl2":\r
-                            thisQuery.q_audioTrackMix2 = "Dolby Pro Logic II";\r
-                            break;\r
-                        case "6ch":\r
-                            thisQuery.q_audioTrackMix2 = "6 Channel Discrete";\r
-                            break;\r
-                        default:\r
-                            thisQuery.q_audioTrackMix2 = "Automatic";\r
-                            break;\r
-                    }\r
+                    thisQuery.q_audioTrackMix2 = getMixDown(audio2mix[1]);\r
                 }\r
 \r
-                // Audio Encoders\r
-                if (audioEncoder1.Success != false)\r
+                thisQuery.q_audioTrackMix3 = "Automatic";\r
+                if (audioTrack3Mix.Success != false)\r
                 {\r
-                    audioEncoderConvertion = audioEncoder1.ToString().Replace("-E ", "");\r
-                    switch (audioEncoderConvertion)\r
-                    {\r
-                        case "faac":\r
-                            audioEncoderConvertion = "AAC";\r
-                            break;\r
-                        case "lame":\r
-                            audioEncoderConvertion = "MP3";\r
-                            break;\r
-                        case "vorbis":\r
-                            audioEncoderConvertion = "Vorbis";\r
-                            break;\r
-                        case "ac3":\r
-                            audioEncoderConvertion = "AC3";\r
-                            break;\r
-                        case "aac+ac3":\r
-                            audioEncoderConvertion = "AAC + AC3";\r
-                            break;\r
-                        default:\r
-                            audioEncoderConvertion = "AAC";\r
-                            break;\r
-                    }\r
-                    thisQuery.q_audioEncoder1 = audioEncoderConvertion;\r
+                    string[] audio3mix = audioTrack3Mix.ToString().Split(',');\r
+                    audio3mix[1] = audio3mix[2].Trim();\r
+                    thisQuery.q_audioTrackMix3 = getMixDown(audio3mix[1]);\r
                 }\r
 \r
+                thisQuery.q_audioTrackMix4 = "Automatic";\r
+                if (audioTrack4Mix.Success != false)\r
+                {\r
+                    string[] audio4mix = audioTrack4Mix.ToString().Split(',');\r
+                    audio4mix[1] = audio4mix[3].Trim();\r
+                    thisQuery.q_audioTrackMix4 = getMixDown(audio4mix[1]);\r
+                }\r
+                \r
+\r
+                // Audio Encoders\r
+                if (audioEncoder1.Success != false)\r
+                    thisQuery.q_audioEncoder1 = getAudioEncoder(audioEncoder1.ToString().Replace("-E ", ""));\r
+\r
                 if (audioEncoder2.Success != false)\r
                 {\r
-                    audioEncoderConvertion = audioEncoder2.ToString().Replace("-E ", "");\r
                     string[] audio2enc = audioEncoder2.ToString().Split(',');\r
-                    audio2enc[1] = audio2enc[1].Trim();\r
-                    switch (audio2enc[1])\r
-                    {\r
-                        case "faac":\r
-                            audioEncoderConvertion = "AAC";\r
-                            break;\r
-                        case "lame":\r
-                            audioEncoderConvertion = "MP3";\r
-                            break;\r
-                        case "vorbis":\r
-                            audioEncoderConvertion = "Vorbis";\r
-                            break;\r
-                        case "ac3":\r
-                            audioEncoderConvertion = "AC3";\r
-                            break;\r
-                        case "aac+ac3":\r
-                            audioEncoderConvertion = "AAC + AC3";\r
-                            break;\r
-                        default:\r
-                            audioEncoderConvertion = "AAC";\r
-                            break;\r
-                    }\r
-                    thisQuery.q_audioEncoder2 = audioEncoderConvertion;\r
+                    thisQuery.q_audioEncoder2 = getAudioEncoder(audio2enc[1].Trim());\r
+                }\r
+\r
+                if (audioEncoder3.Success != false)\r
+                {\r
+                    string[] audio3enc = audioEncoder3.ToString().Split(',');\r
+                    thisQuery.q_audioEncoder3 = getAudioEncoder(audio3enc[2].Trim());\r
+                }\r
+\r
+                if (audioEncoder4.Success != false)\r
+                {\r
+                    string[] audio4enc = audioEncoder4.ToString().Split(',');\r
+                    thisQuery.q_audioEncoder4 = getAudioEncoder(audio4enc[3].Trim());\r
                 }\r
 \r
 \r
@@ -997,6 +1118,23 @@ namespace Handbrake.Functions
                 else\r
                     thisQuery.q_audioBitrate2 = "";\r
 \r
+                if (audioBitrate3.Success != false)\r
+                {\r
+                    string[] audioBitrateSelect = audioBitrate3.ToString().Split(',');\r
+                    thisQuery.q_audioBitrate3 = audioBitrateSelect[2].Trim();\r
+                }\r
+                else\r
+                    thisQuery.q_audioBitrate3 = "";\r
+\r
+                if (audioBitrate4.Success != false)\r
+                {\r
+                    string[] audioBitrateSelect = audioBitrate4.ToString().Split(',');\r
+                    thisQuery.q_audioBitrate4 = audioBitrateSelect[3].Trim();\r
+                }\r
+                else\r
+                    thisQuery.q_audioBitrate4 = "";\r
+\r
+\r
                 // Audio Sample Rate\r
                 if (audioSampleRate1.Success != false)\r
                     thisQuery.q_audioSamplerate1 = audioSampleRate1.ToString().Replace("-R ", "").Trim();\r
@@ -1007,35 +1145,79 @@ namespace Handbrake.Functions
                     thisQuery.q_audioSamplerate2 = audioSRSelect[1].Trim();\r
                 }\r
 \r
+                if (audioSampleRate3.Success != false)\r
+                {\r
+                    string[] audioSRSelect = audioSampleRate3.ToString().Split(',');\r
+                    thisQuery.q_audioSamplerate3 = audioSRSelect[2].Trim();\r
+                }\r
 \r
-                if (subtitles.Success != false)\r
-                    thisQuery.q_subtitles = subtitles.ToString().Replace("-s ", "");\r
+                if (audioSampleRate4.Success != false)\r
+                {\r
+                    string[] audioSRSelect = audioSampleRate4.ToString().Split(',');\r
+                    thisQuery.q_audioSamplerate4 = audioSRSelect[3].Trim();\r
+                }\r
+\r
+                // DRC\r
+                if (drc1.Success != false)\r
+                {\r
+                    string value = drc1.ToString().Replace("-D ", "");\r
+                    float drcValue = float.Parse(value);\r
+                    drcValue = drcValue * 10;\r
+                    thisQuery.q_drc1 = drcValue;\r
+                }\r
                 else\r
+                    thisQuery.q_drc1 = 0;\r
+\r
+                if (drc2.Success != false)\r
                 {\r
-                    if (subScan.Success)\r
-                        thisQuery.q_subtitles = "Autoselect";\r
-                    else\r
-                        thisQuery.q_subtitles = "None";\r
+                    string[] drcPoint = drc2.ToString().Split(',');\r
+                    string value = drcPoint[1];\r
+                    float drcValue = float.Parse(value);\r
+                    drcValue = drcValue * 10;\r
+                    thisQuery.q_drc2 = drcValue;\r
+                }\r
+                else\r
+                    thisQuery.q_drc2 = 0;\r
+\r
+                if (drc3.Success != false)\r
+                {\r
+                    string[] drcPoint = drc3.ToString().Split(',');\r
+                    string value = drcPoint[2];\r
+                    float drcValue = float.Parse(value);\r
+                    drcValue = drcValue * 10;\r
+                    thisQuery.q_drc3 = drcValue;\r
                 }\r
+                else\r
+                    thisQuery.q_drc3 = 0;\r
 \r
-                if (drc.Success != false)\r
+                if (drc4.Success != false)\r
                 {\r
-                    string value = drc.ToString().Replace("-D ", "");\r
+                    string[] drcPoint = drc4.ToString().Split(',');\r
+                    string value = drcPoint[3];\r
                     float drcValue = float.Parse(value);\r
                     drcValue = drcValue * 10;\r
-                    thisQuery.q_drc = drcValue;\r
+                    thisQuery.q_drc4 = drcValue;\r
                 }\r
                 else\r
-                    thisQuery.q_drc = 0;\r
+                    thisQuery.q_drc4 = 0;\r
+\r
+\r
+                // Subtitle Stuff\r
+                if (subtitles.Success != false)\r
+                    thisQuery.q_subtitles = subtitles.ToString().Replace("-s ", "");\r
+                else\r
+                {\r
+                    if (subScan.Success)\r
+                        thisQuery.q_subtitles = "Autoselect";\r
+                    else\r
+                        thisQuery.q_subtitles = "None";\r
+                }\r
 \r
                 thisQuery.q_forcedSubs = forcedSubtitles.Success;\r
 \r
                 #endregion\r
 \r
-                //\r
-                //H264 tab and other \r
-                //\r
-                #region h264 and other\r
+                #region H.264 and other\r
                 //\r
                 //H264 Tab\r
                 //\r
@@ -1058,5 +1240,42 @@ namespace Handbrake.Functions
 \r
             return thisQuery;\r
         }\r
+\r
+\r
+        private static string getMixDown(string mixdown)\r
+        {\r
+            switch (mixdown)\r
+            {\r
+                case "mono":\r
+                    return "Mono";\r
+                case "stereo":\r
+                    return "Stereo";\r
+                case "dpl1":\r
+                    return "Dolby Surround";\r
+                case "dpl2":\r
+                    return "Dolby Pro Logic II";\r
+                case "6ch":\r
+                    return "6 Channel Discrete";\r
+                default:\r
+                    return "Automatic";\r
+            }\r
+        }\r
+\r
+        private static string getAudioEncoder(string audioEnc)\r
+        {\r
+            switch (audioEnc)\r
+            {\r
+                case "faac":\r
+                    return "AAC";\r
+                case "lame":\r
+                    return "MP3";\r
+                case "vorbis":\r
+                    return "Vorbis";\r
+                case "ac3":\r
+                    return "AC3";\r
+                default:\r
+                    return "AAC";\r
+            }\r
+        }\r
     }\r
 }
\ No newline at end of file
index c928ac4dcb27747aeb81fa6b648a632ed95108d6..9ab878b66771d755e36a1414ae501d6096e039ff 100644 (file)
@@ -73,7 +73,14 @@ namespace Handbrake
             this.drp_audbit_2 = new System.Windows.Forms.ComboBox();\r
             this.drp_audsr_2 = new System.Windows.Forms.ComboBox();\r
             this.check_fileMode = new System.Windows.Forms.CheckBox();\r
-            this.slider_drc = new System.Windows.Forms.TrackBar();\r
+            this.drp_audsr_3 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audbit_3 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audenc_3 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audmix_3 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audsr_4 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audbit_4 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audenc_4 = new System.Windows.Forms.ComboBox();\r
+            this.drp_audmix_4 = new System.Windows.Forms.ComboBox();\r
             this.DVD_Open = new System.Windows.Forms.FolderBrowserDialog();\r
             this.File_Open = new System.Windows.Forms.OpenFileDialog();\r
             this.ISO_Open = new System.Windows.Forms.OpenFileDialog();\r
@@ -113,20 +120,26 @@ namespace Handbrake
             this.Label3 = new System.Windows.Forms.Label();\r
             this.lbl_encode = new System.Windows.Forms.Label();\r
             this.TabPage2 = new System.Windows.Forms.TabPage();\r
+            this.lbl_drc4 = new System.Windows.Forms.Label();\r
+            this.lbl_drc3 = new System.Windows.Forms.Label();\r
+            this.lbl_drc2 = new System.Windows.Forms.Label();\r
+            this.lbl_drc1 = new System.Windows.Forms.Label();\r
+            this.trackBar4 = new System.Windows.Forms.TrackBar();\r
+            this.drp_track4Audio = new System.Windows.Forms.ComboBox();\r
+            this.label21 = new System.Windows.Forms.Label();\r
+            this.trackBar3 = new System.Windows.Forms.TrackBar();\r
+            this.drp_track3Audio = new System.Windows.Forms.ComboBox();\r
+            this.label18 = new System.Windows.Forms.Label();\r
+            this.trackBar2 = new System.Windows.Forms.TrackBar();\r
+            this.label16 = new System.Windows.Forms.Label();\r
+            this.trackBar1 = new System.Windows.Forms.TrackBar();\r
             this.groupBox5 = new System.Windows.Forms.GroupBox();\r
-            this.groupBox4 = new System.Windows.Forms.GroupBox();\r
             this.groupBox3 = new System.Windows.Forms.GroupBox();\r
-            this.label12 = new System.Windows.Forms.Label();\r
             this.label68 = new System.Windows.Forms.Label();\r
             this.label67 = new System.Windows.Forms.Label();\r
             this.label66 = new System.Windows.Forms.Label();\r
             this.label65 = new System.Windows.Forms.Label();\r
             this.label14 = new System.Windows.Forms.Label();\r
-            this.label30 = new System.Windows.Forms.Label();\r
-            this.label29 = new System.Windows.Forms.Label();\r
-            this.label23 = new System.Windows.Forms.Label();\r
-            this.label7 = new System.Windows.Forms.Label();\r
-            this.lbl_drc = new System.Windows.Forms.Label();\r
             this.check_forced = new System.Windows.Forms.CheckBox();\r
             this.drp_track2Audio = new System.Windows.Forms.ComboBox();\r
             this.label28 = new System.Windows.Forms.Label();\r
@@ -134,7 +147,6 @@ namespace Handbrake
             this.Label19 = new System.Windows.Forms.Label();\r
             this.Label20 = new System.Windows.Forms.Label();\r
             this.drp_track1Audio = new System.Windows.Forms.ComboBox();\r
-            this.Label5 = new System.Windows.Forms.Label();\r
             this.Label32 = new System.Windows.Forms.Label();\r
             this.TabPage3 = new System.Windows.Forms.TabPage();\r
             this.label25 = new System.Windows.Forms.Label();\r
@@ -246,11 +258,14 @@ namespace Handbrake
             Label38 = new System.Windows.Forms.Label();\r
             ((System.ComponentModel.ISupportInitialize)(this.slider_videoQuality)).BeginInit();\r
             ((System.ComponentModel.ISupportInitialize)(this.data_chpt)).BeginInit();\r
-            ((System.ComponentModel.ISupportInitialize)(this.slider_drc)).BeginInit();\r
             this.frmMainMenu.SuspendLayout();\r
             this.GroupBox1.SuspendLayout();\r
             this.groupBox_output.SuspendLayout();\r
             this.TabPage2.SuspendLayout();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar4)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar3)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar2)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();\r
             this.TabPage3.SuspendLayout();\r
             this.TabPage1.SuspendLayout();\r
             ((System.ComponentModel.ISupportInitialize)(this.text_bottom)).BeginInit();\r
@@ -383,10 +398,10 @@ namespace Handbrake
             "112",\r
             "128",\r
             "160"});\r
-            this.drp_audbit_1.Location = new System.Drawing.Point(589, 49);\r
+            this.drp_audbit_1.Location = new System.Drawing.Point(538, 53);\r
             this.drp_audbit_1.Name = "drp_audbit_1";\r
-            this.drp_audbit_1.Size = new System.Drawing.Size(93, 20);\r
-            this.drp_audbit_1.TabIndex = 9;\r
+            this.drp_audbit_1.Size = new System.Drawing.Size(79, 20);\r
+            this.drp_audbit_1.TabIndex = 11;\r
             this.drp_audbit_1.Text = "160";\r
             this.ToolTip.SetToolTip(this.drp_audbit_1, "Set the Audio Bit-Rate");\r
             // \r
@@ -400,10 +415,10 @@ namespace Handbrake
             "32",\r
             "24",\r
             "22.05"});\r
-            this.drp_audsr_1.Location = new System.Drawing.Point(499, 49);\r
+            this.drp_audsr_1.Location = new System.Drawing.Point(488, 52);\r
             this.drp_audsr_1.Name = "drp_audsr_1";\r
-            this.drp_audsr_1.Size = new System.Drawing.Size(64, 21);\r
-            this.drp_audsr_1.TabIndex = 11;\r
+            this.drp_audsr_1.Size = new System.Drawing.Size(43, 21);\r
+            this.drp_audsr_1.TabIndex = 9;\r
             this.drp_audsr_1.Text = "48";\r
             this.ToolTip.SetToolTip(this.drp_audsr_1, "Set the Audio Sample Rate");\r
             // \r
@@ -495,10 +510,10 @@ namespace Handbrake
             this.drp_subtitle.Items.AddRange(new object[] {\r
             "None",\r
             "Autoselect"});\r
-            this.drp_subtitle.Location = new System.Drawing.Point(393, 221);\r
+            this.drp_subtitle.Location = new System.Drawing.Point(79, 244);\r
             this.drp_subtitle.Name = "drp_subtitle";\r
             this.drp_subtitle.Size = new System.Drawing.Size(138, 21);\r
-            this.drp_subtitle.TabIndex = 27;\r
+            this.drp_subtitle.TabIndex = 43;\r
             this.drp_subtitle.Text = "None";\r
             this.ToolTip.SetToolTip(this.drp_subtitle, resources.GetString("drp_subtitle.ToolTip"));\r
             this.drp_subtitle.SelectedIndexChanged += new System.EventHandler(this.drp_subtitle_SelectedIndexChanged);\r
@@ -530,10 +545,10 @@ namespace Handbrake
             "Dolby Surround",\r
             "Dolby Pro Logic II",\r
             "6 Channel Discrete"});\r
-            this.drp_audmix_1.Location = new System.Drawing.Point(353, 49);\r
+            this.drp_audmix_1.Location = new System.Drawing.Point(353, 53);\r
             this.drp_audmix_1.Name = "drp_audmix_1";\r
             this.drp_audmix_1.Size = new System.Drawing.Size(129, 20);\r
-            this.drp_audmix_1.TabIndex = 5;\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
@@ -665,10 +680,10 @@ namespace Handbrake
             "Dolby Surround",\r
             "Dolby Pro Logic II",\r
             "6 Channel Discrete"});\r
-            this.drp_audmix_2.Location = new System.Drawing.Point(353, 78);\r
+            this.drp_audmix_2.Location = new System.Drawing.Point(353, 93);\r
             this.drp_audmix_2.Name = "drp_audmix_2";\r
             this.drp_audmix_2.Size = new System.Drawing.Size(129, 20);\r
-            this.drp_audmix_2.TabIndex = 14;\r
+            this.drp_audmix_2.TabIndex = 19;\r
             this.drp_audmix_2.Text = "Automatic";\r
             this.ToolTip.SetToolTip(this.drp_audmix_2, "Please note: Some options require a 5.1 audio channel to be selected");\r
             this.drp_audmix_2.SelectedIndexChanged += new System.EventHandler(this.drp_audmix_2_SelectedIndexChanged);\r
@@ -682,10 +697,10 @@ namespace Handbrake
             "MP3",\r
             "Vorbis",\r
             "AC3"});\r
-            this.drp_audenc_1.Location = new System.Drawing.Point(236, 49);\r
+            this.drp_audenc_1.Location = new System.Drawing.Point(236, 53);\r
             this.drp_audenc_1.Name = "drp_audenc_1";\r
             this.drp_audenc_1.Size = new System.Drawing.Size(111, 20);\r
-            this.drp_audenc_1.TabIndex = 7;\r
+            this.drp_audenc_1.TabIndex = 5;\r
             this.drp_audenc_1.Text = "AAC";\r
             this.ToolTip.SetToolTip(this.drp_audenc_1, "Select an audio encoder.");\r
             this.drp_audenc_1.SelectedIndexChanged += new System.EventHandler(this.drp_audenc_1_SelectedIndexChanged);\r
@@ -699,10 +714,10 @@ namespace Handbrake
             "MP3",\r
             "Vorbis",\r
             "AC3"});\r
-            this.drp_audenc_2.Location = new System.Drawing.Point(236, 78);\r
+            this.drp_audenc_2.Location = new System.Drawing.Point(236, 93);\r
             this.drp_audenc_2.Name = "drp_audenc_2";\r
             this.drp_audenc_2.Size = new System.Drawing.Size(111, 20);\r
-            this.drp_audenc_2.TabIndex = 15;\r
+            this.drp_audenc_2.TabIndex = 18;\r
             this.drp_audenc_2.Text = "AAC";\r
             this.ToolTip.SetToolTip(this.drp_audenc_2, "Select an audio encoder.");\r
             this.drp_audenc_2.SelectedIndexChanged += new System.EventHandler(this.drp_audenc_2_SelectedIndexChanged);\r
@@ -722,10 +737,10 @@ namespace Handbrake
             "112",\r
             "128",\r
             "160"});\r
-            this.drp_audbit_2.Location = new System.Drawing.Point(589, 78);\r
+            this.drp_audbit_2.Location = new System.Drawing.Point(537, 91);\r
             this.drp_audbit_2.Name = "drp_audbit_2";\r
-            this.drp_audbit_2.Size = new System.Drawing.Size(93, 20);\r
-            this.drp_audbit_2.TabIndex = 16;\r
+            this.drp_audbit_2.Size = new System.Drawing.Size(80, 20);\r
+            this.drp_audbit_2.TabIndex = 21;\r
             this.drp_audbit_2.Text = "160";\r
             this.ToolTip.SetToolTip(this.drp_audbit_2, "Set the Audio Bit-Rate");\r
             // \r
@@ -739,10 +754,10 @@ namespace Handbrake
             "32",\r
             "24",\r
             "22.05"});\r
-            this.drp_audsr_2.Location = new System.Drawing.Point(499, 77);\r
+            this.drp_audsr_2.Location = new System.Drawing.Point(488, 91);\r
             this.drp_audsr_2.Name = "drp_audsr_2";\r
-            this.drp_audsr_2.Size = new System.Drawing.Size(64, 21);\r
-            this.drp_audsr_2.TabIndex = 17;\r
+            this.drp_audsr_2.Size = new System.Drawing.Size(43, 21);\r
+            this.drp_audsr_2.TabIndex = 20;\r
             this.drp_audsr_2.Text = "48";\r
             this.ToolTip.SetToolTip(this.drp_audsr_2, "Set the Audio Sample Rate");\r
             // \r
@@ -760,16 +775,155 @@ namespace Handbrake
                     "mpg, .mpeg and .m2t");\r
             this.check_fileMode.UseVisualStyleBackColor = true;\r
             // \r
-            // slider_drc\r
+            // drp_audsr_3\r
             // \r
-            this.slider_drc.LargeChange = 0;\r
-            this.slider_drc.Location = new System.Drawing.Point(16, 239);\r
-            this.slider_drc.Maximum = 30;\r
-            this.slider_drc.Name = "slider_drc";\r
-            this.slider_drc.Size = new System.Drawing.Size(241, 42);\r
-            this.slider_drc.TabIndex = 19;\r
-            this.slider_drc.TickFrequency = 10;\r
-            this.slider_drc.Scroll += new System.EventHandler(this.slider_drc_Scroll);\r
+            this.drp_audsr_3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audsr_3.FormattingEnabled = true;\r
+            this.drp_audsr_3.Items.AddRange(new object[] {\r
+            "48",\r
+            "44.1",\r
+            "32",\r
+            "24",\r
+            "22.05"});\r
+            this.drp_audsr_3.Location = new System.Drawing.Point(488, 128);\r
+            this.drp_audsr_3.Name = "drp_audsr_3";\r
+            this.drp_audsr_3.Size = new System.Drawing.Size(43, 21);\r
+            this.drp_audsr_3.TabIndex = 28;\r
+            this.drp_audsr_3.Text = "48";\r
+            this.ToolTip.SetToolTip(this.drp_audsr_3, "Set the Audio Sample Rate");\r
+            // \r
+            // drp_audbit_3\r
+            // \r
+            this.drp_audbit_3.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audbit_3.FormattingEnabled = true;\r
+            this.drp_audbit_3.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_audbit_3.Location = new System.Drawing.Point(537, 129);\r
+            this.drp_audbit_3.Name = "drp_audbit_3";\r
+            this.drp_audbit_3.Size = new System.Drawing.Size(80, 20);\r
+            this.drp_audbit_3.TabIndex = 29;\r
+            this.drp_audbit_3.Text = "160";\r
+            this.ToolTip.SetToolTip(this.drp_audbit_3, "Set the Audio Bit-Rate");\r
+            // \r
+            // drp_audenc_3\r
+            // \r
+            this.drp_audenc_3.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audenc_3.FormattingEnabled = true;\r
+            this.drp_audenc_3.Items.AddRange(new object[] {\r
+            "AAC",\r
+            "MP3",\r
+            "Vorbis",\r
+            "AC3"});\r
+            this.drp_audenc_3.Location = new System.Drawing.Point(236, 129);\r
+            this.drp_audenc_3.Name = "drp_audenc_3";\r
+            this.drp_audenc_3.Size = new System.Drawing.Size(111, 20);\r
+            this.drp_audenc_3.TabIndex = 26;\r
+            this.drp_audenc_3.Text = "AAC";\r
+            this.ToolTip.SetToolTip(this.drp_audenc_3, "Select an audio encoder.");\r
+            this.drp_audenc_3.SelectedIndexChanged += new System.EventHandler(this.drp_audenc_3_SelectedIndexChanged);\r
+            // \r
+            // drp_audmix_3\r
+            // \r
+            this.drp_audmix_3.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audmix_3.FormattingEnabled = true;\r
+            this.drp_audmix_3.Items.AddRange(new object[] {\r
+            "Automatic",\r
+            "Mono",\r
+            "Stereo",\r
+            "Dolby Surround",\r
+            "Dolby Pro Logic II",\r
+            "6 Channel Discrete"});\r
+            this.drp_audmix_3.Location = new System.Drawing.Point(353, 129);\r
+            this.drp_audmix_3.Name = "drp_audmix_3";\r
+            this.drp_audmix_3.Size = new System.Drawing.Size(129, 20);\r
+            this.drp_audmix_3.TabIndex = 27;\r
+            this.drp_audmix_3.Text = "Automatic";\r
+            this.ToolTip.SetToolTip(this.drp_audmix_3, "Please note: Some options require a 5.1 audio channel to be selected");\r
+            this.drp_audmix_3.SelectedIndexChanged += new System.EventHandler(this.drp_audmix_3_SelectedIndexChanged);\r
+            // \r
+            // drp_audsr_4\r
+            // \r
+            this.drp_audsr_4.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audsr_4.FormattingEnabled = true;\r
+            this.drp_audsr_4.Items.AddRange(new object[] {\r
+            "48",\r
+            "44.1",\r
+            "32",\r
+            "24",\r
+            "22.05"});\r
+            this.drp_audsr_4.Location = new System.Drawing.Point(488, 166);\r
+            this.drp_audsr_4.Name = "drp_audsr_4";\r
+            this.drp_audsr_4.Size = new System.Drawing.Size(43, 21);\r
+            this.drp_audsr_4.TabIndex = 36;\r
+            this.drp_audsr_4.Text = "48";\r
+            this.ToolTip.SetToolTip(this.drp_audsr_4, "Set the Audio Sample Rate");\r
+            // \r
+            // drp_audbit_4\r
+            // \r
+            this.drp_audbit_4.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audbit_4.FormattingEnabled = true;\r
+            this.drp_audbit_4.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_audbit_4.Location = new System.Drawing.Point(537, 167);\r
+            this.drp_audbit_4.Name = "drp_audbit_4";\r
+            this.drp_audbit_4.Size = new System.Drawing.Size(80, 20);\r
+            this.drp_audbit_4.TabIndex = 37;\r
+            this.drp_audbit_4.Text = "160";\r
+            this.ToolTip.SetToolTip(this.drp_audbit_4, "Set the Audio Bit-Rate");\r
+            // \r
+            // drp_audenc_4\r
+            // \r
+            this.drp_audenc_4.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audenc_4.FormattingEnabled = true;\r
+            this.drp_audenc_4.Items.AddRange(new object[] {\r
+            "AAC",\r
+            "MP3",\r
+            "Vorbis",\r
+            "AC3"});\r
+            this.drp_audenc_4.Location = new System.Drawing.Point(236, 167);\r
+            this.drp_audenc_4.Name = "drp_audenc_4";\r
+            this.drp_audenc_4.Size = new System.Drawing.Size(111, 20);\r
+            this.drp_audenc_4.TabIndex = 34;\r
+            this.drp_audenc_4.Text = "AAC";\r
+            this.ToolTip.SetToolTip(this.drp_audenc_4, "Select an audio encoder.");\r
+            this.drp_audenc_4.SelectedIndexChanged += new System.EventHandler(this.drp_audenc_4_SelectedIndexChanged);\r
+            // \r
+            // drp_audmix_4\r
+            // \r
+            this.drp_audmix_4.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_audmix_4.FormattingEnabled = true;\r
+            this.drp_audmix_4.Items.AddRange(new object[] {\r
+            "Automatic",\r
+            "Mono",\r
+            "Stereo",\r
+            "Dolby Surround",\r
+            "Dolby Pro Logic II",\r
+            "6 Channel Discrete"});\r
+            this.drp_audmix_4.Location = new System.Drawing.Point(353, 167);\r
+            this.drp_audmix_4.Name = "drp_audmix_4";\r
+            this.drp_audmix_4.Size = new System.Drawing.Size(129, 20);\r
+            this.drp_audmix_4.TabIndex = 35;\r
+            this.drp_audmix_4.Text = "Automatic";\r
+            this.ToolTip.SetToolTip(this.drp_audmix_4, "Please note: Some options require a 5.1 audio channel to be selected");\r
+            this.drp_audmix_4.SelectedIndexChanged += new System.EventHandler(this.drp_audmix_4_SelectedIndexChanged);\r
             // \r
             // DVD_Open\r
             // \r
@@ -1115,10 +1269,29 @@ namespace Handbrake
             // TabPage2\r
             // \r
             this.TabPage2.BackColor = System.Drawing.Color.Transparent;\r
+            this.TabPage2.Controls.Add(this.lbl_drc4);\r
+            this.TabPage2.Controls.Add(this.lbl_drc3);\r
+            this.TabPage2.Controls.Add(this.lbl_drc2);\r
+            this.TabPage2.Controls.Add(this.lbl_drc1);\r
+            this.TabPage2.Controls.Add(this.trackBar4);\r
+            this.TabPage2.Controls.Add(this.drp_audsr_4);\r
+            this.TabPage2.Controls.Add(this.drp_audbit_4);\r
+            this.TabPage2.Controls.Add(this.drp_audenc_4);\r
+            this.TabPage2.Controls.Add(this.drp_audmix_4);\r
+            this.TabPage2.Controls.Add(this.drp_track4Audio);\r
+            this.TabPage2.Controls.Add(this.label21);\r
+            this.TabPage2.Controls.Add(this.trackBar3);\r
+            this.TabPage2.Controls.Add(this.drp_audsr_3);\r
+            this.TabPage2.Controls.Add(this.drp_audbit_3);\r
+            this.TabPage2.Controls.Add(this.drp_audenc_3);\r
+            this.TabPage2.Controls.Add(this.drp_audmix_3);\r
+            this.TabPage2.Controls.Add(this.drp_track3Audio);\r
+            this.TabPage2.Controls.Add(this.label18);\r
+            this.TabPage2.Controls.Add(this.trackBar2);\r
+            this.TabPage2.Controls.Add(this.label16);\r
+            this.TabPage2.Controls.Add(this.trackBar1);\r
             this.TabPage2.Controls.Add(this.groupBox5);\r
-            this.TabPage2.Controls.Add(this.groupBox4);\r
             this.TabPage2.Controls.Add(this.groupBox3);\r
-            this.TabPage2.Controls.Add(this.label12);\r
             this.TabPage2.Controls.Add(this.label68);\r
             this.TabPage2.Controls.Add(this.label67);\r
             this.TabPage2.Controls.Add(this.drp_audsr_2);\r
@@ -1129,12 +1302,6 @@ namespace Handbrake
             this.TabPage2.Controls.Add(this.drp_audenc_2);\r
             this.TabPage2.Controls.Add(this.drp_audenc_1);\r
             this.TabPage2.Controls.Add(this.drp_audmix_2);\r
-            this.TabPage2.Controls.Add(this.label30);\r
-            this.TabPage2.Controls.Add(this.label29);\r
-            this.TabPage2.Controls.Add(this.label23);\r
-            this.TabPage2.Controls.Add(this.label7);\r
-            this.TabPage2.Controls.Add(this.lbl_drc);\r
-            this.TabPage2.Controls.Add(this.slider_drc);\r
             this.TabPage2.Controls.Add(this.check_forced);\r
             this.TabPage2.Controls.Add(this.drp_track2Audio);\r
             this.TabPage2.Controls.Add(this.label28);\r
@@ -1145,7 +1312,6 @@ namespace Handbrake
             this.TabPage2.Controls.Add(this.drp_audmix_1);\r
             this.TabPage2.Controls.Add(this.drp_track1Audio);\r
             this.TabPage2.Controls.Add(this.drp_audbit_1);\r
-            this.TabPage2.Controls.Add(this.Label5);\r
             this.TabPage2.Controls.Add(this.Label32);\r
             this.TabPage2.Controls.Add(this.drp_audsr_1);\r
             this.TabPage2.Location = new System.Drawing.Point(4, 22);\r
@@ -1155,41 +1321,171 @@ namespace Handbrake
             this.TabPage2.TabIndex = 3;\r
             this.TabPage2.Text = "Audio && Subtitles";\r
             // \r
+            // lbl_drc4\r
+            // \r
+            this.lbl_drc4.AutoSize = true;\r
+            this.lbl_drc4.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_drc4.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.lbl_drc4.Location = new System.Drawing.Point(665, 165);\r
+            this.lbl_drc4.Name = "lbl_drc4";\r
+            this.lbl_drc4.Size = new System.Drawing.Size(19, 13);\r
+            this.lbl_drc4.TabIndex = 39;\r
+            this.lbl_drc4.Text = "1:";\r
+            // \r
+            // lbl_drc3\r
+            // \r
+            this.lbl_drc3.AutoSize = true;\r
+            this.lbl_drc3.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_drc3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.lbl_drc3.Location = new System.Drawing.Point(665, 131);\r
+            this.lbl_drc3.Name = "lbl_drc3";\r
+            this.lbl_drc3.Size = new System.Drawing.Size(19, 13);\r
+            this.lbl_drc3.TabIndex = 31;\r
+            this.lbl_drc3.Text = "1:";\r
+            // \r
+            // lbl_drc2\r
+            // \r
+            this.lbl_drc2.AutoSize = true;\r
+            this.lbl_drc2.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_drc2.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.lbl_drc2.Location = new System.Drawing.Point(665, 91);\r
+            this.lbl_drc2.Name = "lbl_drc2";\r
+            this.lbl_drc2.Size = new System.Drawing.Size(19, 13);\r
+            this.lbl_drc2.TabIndex = 23;\r
+            this.lbl_drc2.Text = "1:";\r
+            // \r
+            // lbl_drc1\r
+            // \r
+            this.lbl_drc1.AutoSize = true;\r
+            this.lbl_drc1.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_drc1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.lbl_drc1.Location = new System.Drawing.Point(665, 53);\r
+            this.lbl_drc1.Name = "lbl_drc1";\r
+            this.lbl_drc1.Size = new System.Drawing.Size(19, 13);\r
+            this.lbl_drc1.TabIndex = 15;\r
+            this.lbl_drc1.Text = "1:";\r
+            // \r
+            // trackBar4\r
+            // \r
+            this.trackBar4.LargeChange = 0;\r
+            this.trackBar4.Location = new System.Drawing.Point(620, 161);\r
+            this.trackBar4.Margin = new System.Windows.Forms.Padding(0);\r
+            this.trackBar4.Maximum = 30;\r
+            this.trackBar4.Name = "trackBar4";\r
+            this.trackBar4.Size = new System.Drawing.Size(49, 42);\r
+            this.trackBar4.TabIndex = 38;\r
+            this.trackBar4.TickFrequency = 10;\r
+            this.trackBar4.ValueChanged += new System.EventHandler(this.trackBar4_Scroll);\r
+            // \r
+            // drp_track4Audio\r
+            // \r
+            this.drp_track4Audio.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_track4Audio.FormattingEnabled = true;\r
+            this.drp_track4Audio.Items.AddRange(new object[] {\r
+            "None"});\r
+            this.drp_track4Audio.Location = new System.Drawing.Point(36, 166);\r
+            this.drp_track4Audio.Name = "drp_track4Audio";\r
+            this.drp_track4Audio.Size = new System.Drawing.Size(194, 20);\r
+            this.drp_track4Audio.TabIndex = 33;\r
+            this.drp_track4Audio.SelectedIndexChanged += new System.EventHandler(this.drp_track4Audio_SelectedIndexChanged);\r
+            // \r
+            // label21\r
+            // \r
+            this.label21.AutoSize = true;\r
+            this.label21.BackColor = System.Drawing.Color.Transparent;\r
+            this.label21.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label21.Location = new System.Drawing.Point(13, 169);\r
+            this.label21.Name = "label21";\r
+            this.label21.Size = new System.Drawing.Size(19, 13);\r
+            this.label21.TabIndex = 32;\r
+            this.label21.Text = "4:";\r
+            // \r
+            // trackBar3\r
+            // \r
+            this.trackBar3.LargeChange = 0;\r
+            this.trackBar3.Location = new System.Drawing.Point(620, 123);\r
+            this.trackBar3.Margin = new System.Windows.Forms.Padding(0);\r
+            this.trackBar3.Maximum = 30;\r
+            this.trackBar3.Name = "trackBar3";\r
+            this.trackBar3.Size = new System.Drawing.Size(49, 42);\r
+            this.trackBar3.TabIndex = 30;\r
+            this.trackBar3.TickFrequency = 10;\r
+            this.trackBar3.ValueChanged += new System.EventHandler(this.trackBar3_Scroll);\r
+            // \r
+            // drp_track3Audio\r
+            // \r
+            this.drp_track3Audio.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.drp_track3Audio.FormattingEnabled = true;\r
+            this.drp_track3Audio.Items.AddRange(new object[] {\r
+            "None"});\r
+            this.drp_track3Audio.Location = new System.Drawing.Point(36, 128);\r
+            this.drp_track3Audio.Name = "drp_track3Audio";\r
+            this.drp_track3Audio.Size = new System.Drawing.Size(194, 20);\r
+            this.drp_track3Audio.TabIndex = 25;\r
+            this.drp_track3Audio.SelectedIndexChanged += new System.EventHandler(this.drp_track3Audio_SelectedIndexChanged);\r
+            // \r
+            // label18\r
+            // \r
+            this.label18.AutoSize = true;\r
+            this.label18.BackColor = System.Drawing.Color.Transparent;\r
+            this.label18.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label18.Location = new System.Drawing.Point(13, 131);\r
+            this.label18.Name = "label18";\r
+            this.label18.Size = new System.Drawing.Size(19, 13);\r
+            this.label18.TabIndex = 24;\r
+            this.label18.Text = "3:";\r
+            // \r
+            // trackBar2\r
+            // \r
+            this.trackBar2.LargeChange = 0;\r
+            this.trackBar2.Location = new System.Drawing.Point(620, 87);\r
+            this.trackBar2.Margin = new System.Windows.Forms.Padding(0);\r
+            this.trackBar2.Maximum = 30;\r
+            this.trackBar2.Name = "trackBar2";\r
+            this.trackBar2.Size = new System.Drawing.Size(49, 42);\r
+            this.trackBar2.TabIndex = 22;\r
+            this.trackBar2.TickFrequency = 10;\r
+            this.trackBar2.ValueChanged += new System.EventHandler(this.trackBar2_Scroll);\r
+            // \r
+            // label16\r
+            // \r
+            this.label16.AutoSize = true;\r
+            this.label16.BackColor = System.Drawing.Color.Transparent;\r
+            this.label16.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label16.Location = new System.Drawing.Point(628, 36);\r
+            this.label16.Name = "label16";\r
+            this.label16.Size = new System.Drawing.Size(28, 12);\r
+            this.label16.TabIndex = 14;\r
+            this.label16.Text = "DRC";\r
+            // \r
+            // trackBar1\r
+            // \r
+            this.trackBar1.LargeChange = 0;\r
+            this.trackBar1.Location = new System.Drawing.Point(619, 48);\r
+            this.trackBar1.Margin = new System.Windows.Forms.Padding(0);\r
+            this.trackBar1.Maximum = 30;\r
+            this.trackBar1.Name = "trackBar1";\r
+            this.trackBar1.Size = new System.Drawing.Size(49, 42);\r
+            this.trackBar1.TabIndex = 13;\r
+            this.trackBar1.TickFrequency = 10;\r
+            this.trackBar1.ValueChanged += new System.EventHandler(this.trackBar1_Scroll);\r
+            // \r
             // groupBox5\r
             // \r
             this.groupBox5.Location = new System.Drawing.Point(107, 13);\r
             this.groupBox5.Name = "groupBox5";\r
             this.groupBox5.Size = new System.Drawing.Size(577, 10);\r
-            this.groupBox5.TabIndex = 32;\r
+            this.groupBox5.TabIndex = 1;\r
             this.groupBox5.TabStop = false;\r
             // \r
-            // groupBox4\r
-            // \r
-            this.groupBox4.Location = new System.Drawing.Point(109, 200);\r
-            this.groupBox4.Name = "groupBox4";\r
-            this.groupBox4.Size = new System.Drawing.Size(178, 10);\r
-            this.groupBox4.TabIndex = 31;\r
-            this.groupBox4.TabStop = false;\r
-            // \r
             // groupBox3\r
             // \r
-            this.groupBox3.Location = new System.Drawing.Point(397, 200);\r
+            this.groupBox3.Location = new System.Drawing.Point(83, 219);\r
             this.groupBox3.Name = "groupBox3";\r
-            this.groupBox3.Size = new System.Drawing.Size(287, 10);\r
-            this.groupBox3.TabIndex = 30;\r
+            this.groupBox3.Size = new System.Drawing.Size(601, 10);\r
+            this.groupBox3.TabIndex = 41;\r
             this.groupBox3.TabStop = false;\r
             // \r
-            // label12\r
-            // \r
-            this.label12.AutoSize = true;\r
-            this.label12.BackColor = System.Drawing.Color.Transparent;\r
-            this.label12.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label12.Location = new System.Drawing.Point(19, 221);\r
-            this.label12.Name = "label12";\r
-            this.label12.Size = new System.Drawing.Size(181, 13);\r
-            this.label12.TabIndex = 29;\r
-            this.label12.Text = "Dynamic Range Compression:";\r
-            // \r
             // label68\r
             // \r
             this.label68.AutoSize = true;\r
@@ -1205,32 +1501,32 @@ namespace Handbrake
             // \r
             this.label67.AutoSize = true;\r
             this.label67.BackColor = System.Drawing.Color.Transparent;\r
-            this.label67.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label67.Location = new System.Drawing.Point(487, 32);\r
+            this.label67.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label67.Location = new System.Drawing.Point(478, 24);\r
             this.label67.Name = "label67";\r
-            this.label67.Size = new System.Drawing.Size(99, 12);\r
+            this.label67.Size = new System.Drawing.Size(65, 24);\r
             this.label67.TabIndex = 10;\r
-            this.label67.Text = "Sample Rate (kHz)";\r
+            this.label67.Text = "Samplerate \r\n(kHz)";\r
             // \r
             // label66\r
             // \r
             this.label66.AutoSize = true;\r
             this.label66.BackColor = System.Drawing.Color.Transparent;\r
-            this.label66.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label66.Location = new System.Drawing.Point(594, 32);\r
+            this.label66.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label66.Location = new System.Drawing.Point(542, 36);\r
             this.label66.Name = "label66";\r
-            this.label66.Size = new System.Drawing.Size(78, 12);\r
-            this.label66.TabIndex = 8;\r
+            this.label66.Size = new System.Drawing.Size(75, 12);\r
+            this.label66.TabIndex = 12;\r
             this.label66.Text = "Bitrate (Kbps)";\r
             // \r
             // label65\r
             // \r
             this.label65.AutoSize = true;\r
             this.label65.BackColor = System.Drawing.Color.Transparent;\r
-            this.label65.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label65.Location = new System.Drawing.Point(255, 32);\r
+            this.label65.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label65.Location = new System.Drawing.Point(255, 36);\r
             this.label65.Name = "label65";\r
-            this.label65.Size = new System.Drawing.Size(66, 12);\r
+            this.label65.Size = new System.Drawing.Size(69, 12);\r
             this.label65.TabIndex = 6;\r
             this.label65.Text = "Audio Codec";\r
             // \r
@@ -1238,77 +1534,22 @@ namespace Handbrake
             // \r
             this.label14.AutoSize = true;\r
             this.label14.BackColor = System.Drawing.Color.Transparent;\r
-            this.label14.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label14.Location = new System.Drawing.Point(380, 32);\r
+            this.label14.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label14.Location = new System.Drawing.Point(380, 36);\r
             this.label14.Name = "label14";\r
-            this.label14.Size = new System.Drawing.Size(49, 12);\r
-            this.label14.TabIndex = 4;\r
+            this.label14.Size = new System.Drawing.Size(48, 12);\r
+            this.label14.TabIndex = 8;\r
             this.label14.Text = "Mixdown";\r
             // \r
-            // label30\r
-            // \r
-            this.label30.AutoSize = true;\r
-            this.label30.BackColor = System.Drawing.Color.Transparent;\r
-            this.label30.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label30.Location = new System.Drawing.Point(139, 271);\r
-            this.label30.Name = "label30";\r
-            this.label30.Size = new System.Drawing.Size(67, 12);\r
-            this.label30.TabIndex = 23;\r
-            this.label30.Text = "3.0 (Louder)";\r
-            // \r
-            // label29\r
-            // \r
-            this.label29.AutoSize = true;\r
-            this.label29.BackColor = System.Drawing.Color.Transparent;\r
-            this.label29.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label29.Location = new System.Drawing.Point(74, 271);\r
-            this.label29.Name = "label29";\r
-            this.label29.Size = new System.Drawing.Size(57, 12);\r
-            this.label29.TabIndex = 22;\r
-            this.label29.Text = "2.0 (Loud)";\r
-            // \r
-            // label23\r
-            // \r
-            this.label23.AutoSize = true;\r
-            this.label23.BackColor = System.Drawing.Color.Transparent;\r
-            this.label23.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label23.Location = new System.Drawing.Point(211, 271);\r
-            this.label23.Name = "label23";\r
-            this.label23.Size = new System.Drawing.Size(73, 12);\r
-            this.label23.TabIndex = 24;\r
-            this.label23.Text = "4.0 (Loudest)";\r
-            // \r
-            // label7\r
-            // \r
-            this.label7.AutoSize = true;\r
-            this.label7.BackColor = System.Drawing.Color.Transparent;\r
-            this.label7.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label7.Location = new System.Drawing.Point(20, 271);\r
-            this.label7.Name = "label7";\r
-            this.label7.Size = new System.Drawing.Size(48, 12);\r
-            this.label7.TabIndex = 21;\r
-            this.label7.Text = "1.0 (Off)";\r
-            // \r
-            // lbl_drc\r
-            // \r
-            this.lbl_drc.AutoSize = true;\r
-            this.lbl_drc.BackColor = System.Drawing.Color.Transparent;\r
-            this.lbl_drc.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.lbl_drc.Location = new System.Drawing.Point(206, 221);\r
-            this.lbl_drc.Name = "lbl_drc";\r
-            this.lbl_drc.Size = new System.Drawing.Size(14, 13);\r
-            this.lbl_drc.TabIndex = 20;\r
-            this.lbl_drc.Text = "1";\r
-            // \r
             // check_forced\r
             // \r
             this.check_forced.AutoSize = true;\r
             this.check_forced.BackColor = System.Drawing.Color.Transparent;\r
             this.check_forced.Enabled = false;\r
-            this.check_forced.Location = new System.Drawing.Point(537, 224);\r
+            this.check_forced.Location = new System.Drawing.Point(223, 247);\r
             this.check_forced.Name = "check_forced";\r
             this.check_forced.Size = new System.Drawing.Size(147, 17);\r
-            this.check_forced.TabIndex = 28;\r
+            this.check_forced.TabIndex = 44;\r
             this.check_forced.Text = "Forced Subtitles Only";\r
             this.check_forced.UseVisualStyleBackColor = false;\r
             // \r
@@ -1317,12 +1558,11 @@ namespace Handbrake
             this.drp_track2Audio.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
             this.drp_track2Audio.FormattingEnabled = true;\r
             this.drp_track2Audio.Items.AddRange(new object[] {\r
-            "None",\r
-            "Automatic"});\r
-            this.drp_track2Audio.Location = new System.Drawing.Point(36, 77);\r
+            "None"});\r
+            this.drp_track2Audio.Location = new System.Drawing.Point(36, 92);\r
             this.drp_track2Audio.Name = "drp_track2Audio";\r
             this.drp_track2Audio.Size = new System.Drawing.Size(194, 20);\r
-            this.drp_track2Audio.TabIndex = 13;\r
+            this.drp_track2Audio.TabIndex = 17;\r
             this.drp_track2Audio.SelectedIndexChanged += new System.EventHandler(this.drp_track2Audio_SelectedIndexChanged);\r
             // \r
             // label28\r
@@ -1330,21 +1570,21 @@ namespace Handbrake
             this.label28.AutoSize = true;\r
             this.label28.BackColor = System.Drawing.Color.Transparent;\r
             this.label28.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label28.Location = new System.Drawing.Point(13, 80);\r
+            this.label28.Location = new System.Drawing.Point(13, 95);\r
             this.label28.Name = "label28";\r
             this.label28.Size = new System.Drawing.Size(19, 13);\r
-            this.label28.TabIndex = 12;\r
+            this.label28.TabIndex = 16;\r
             this.label28.Text = "2:";\r
             // \r
             // label27\r
             // \r
             this.label27.AutoSize = true;\r
             this.label27.BackColor = System.Drawing.Color.Transparent;\r
-            this.label27.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label27.Location = new System.Drawing.Point(107, 32);\r
+            this.label27.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.label27.Location = new System.Drawing.Point(107, 36);\r
             this.label27.Name = "label27";\r
-            this.label27.Size = new System.Drawing.Size(38, 12);\r
-            this.label27.TabIndex = 1;\r
+            this.label27.Size = new System.Drawing.Size(40, 12);\r
+            this.label27.TabIndex = 4;\r
             this.label27.Text = "Source";\r
             // \r
             // Label19\r
@@ -1352,10 +1592,10 @@ namespace Handbrake
             this.Label19.AutoSize = true;\r
             this.Label19.BackColor = System.Drawing.Color.Transparent;\r
             this.Label19.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.Label19.Location = new System.Drawing.Point(327, 200);\r
+            this.Label19.Location = new System.Drawing.Point(13, 219);\r
             this.Label19.Name = "Label19";\r
             this.Label19.Size = new System.Drawing.Size(64, 13);\r
-            this.Label19.TabIndex = 25;\r
+            this.Label19.TabIndex = 40;\r
             this.Label19.Text = "Subtitles";\r
             // \r
             // Label20\r
@@ -1363,10 +1603,10 @@ namespace Handbrake
             this.Label20.AutoSize = true;\r
             this.Label20.BackColor = System.Drawing.Color.Transparent;\r
             this.Label20.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.Label20.Location = new System.Drawing.Point(327, 224);\r
+            this.Label20.Location = new System.Drawing.Point(13, 247);\r
             this.Label20.Name = "Label20";\r
             this.Label20.Size = new System.Drawing.Size(61, 13);\r
-            this.Label20.TabIndex = 26;\r
+            this.Label20.TabIndex = 42;\r
             this.Label20.Text = "Subtitles:";\r
             // \r
             // drp_track1Audio\r
@@ -1376,29 +1616,18 @@ namespace Handbrake
             this.drp_track1Audio.Items.AddRange(new object[] {\r
             "Automatic",\r
             "None"});\r
-            this.drp_track1Audio.Location = new System.Drawing.Point(36, 50);\r
+            this.drp_track1Audio.Location = new System.Drawing.Point(36, 54);\r
             this.drp_track1Audio.Name = "drp_track1Audio";\r
             this.drp_track1Audio.Size = new System.Drawing.Size(194, 20);\r
             this.drp_track1Audio.TabIndex = 3;\r
             this.drp_track1Audio.SelectedIndexChanged += new System.EventHandler(this.drp_track1Audio_SelectedIndexChanged);\r
             // \r
-            // Label5\r
-            // \r
-            this.Label5.AutoSize = true;\r
-            this.Label5.BackColor = System.Drawing.Color.Transparent;\r
-            this.Label5.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.Label5.Location = new System.Drawing.Point(13, 200);\r
-            this.Label5.Name = "Label5";\r
-            this.Label5.Size = new System.Drawing.Size(93, 13);\r
-            this.Label5.TabIndex = 18;\r
-            this.Label5.Text = "Audio Effects";\r
-            // \r
             // Label32\r
             // \r
             this.Label32.AutoSize = true;\r
             this.Label32.BackColor = System.Drawing.Color.Transparent;\r
             this.Label32.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.Label32.Location = new System.Drawing.Point(13, 53);\r
+            this.Label32.Location = new System.Drawing.Point(13, 57);\r
             this.Label32.Name = "Label32";\r
             this.Label32.Size = new System.Drawing.Size(19, 13);\r
             this.Label32.TabIndex = 2;\r
@@ -2725,7 +2954,6 @@ namespace Handbrake
             this.Text = "Handbrake";\r
             ((System.ComponentModel.ISupportInitialize)(this.slider_videoQuality)).EndInit();\r
             ((System.ComponentModel.ISupportInitialize)(this.data_chpt)).EndInit();\r
-            ((System.ComponentModel.ISupportInitialize)(this.slider_drc)).EndInit();\r
             this.frmMainMenu.ResumeLayout(false);\r
             this.frmMainMenu.PerformLayout();\r
             this.GroupBox1.ResumeLayout(false);\r
@@ -2734,6 +2962,10 @@ namespace Handbrake
             this.groupBox_output.PerformLayout();\r
             this.TabPage2.ResumeLayout(false);\r
             this.TabPage2.PerformLayout();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar4)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar3)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar2)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.trackBar1)).EndInit();\r
             this.TabPage3.ResumeLayout(false);\r
             this.TabPage3.PerformLayout();\r
             this.TabPage1.ResumeLayout(false);\r
@@ -2800,7 +3032,6 @@ namespace Handbrake
         internal System.Windows.Forms.ComboBox drp_audmix_1;\r
         internal System.Windows.Forms.ComboBox drp_track1Audio;\r
         internal System.Windows.Forms.ComboBox drp_audbit_1;\r
-        internal System.Windows.Forms.Label Label5;\r
         internal System.Windows.Forms.Label Label32;\r
         internal System.Windows.Forms.ComboBox drp_audsr_1;\r
         internal System.Windows.Forms.TabPage TabPage3;\r
@@ -2867,12 +3098,6 @@ namespace Handbrake
         internal System.Windows.Forms.Label label27;\r
         internal System.Windows.Forms.ComboBox drp_track2Audio;\r
         internal System.Windows.Forms.Label label28;\r
-        internal System.Windows.Forms.TrackBar slider_drc;\r
-        internal System.Windows.Forms.Label lbl_drc;\r
-        private System.Windows.Forms.Label label30;\r
-        private System.Windows.Forms.Label label29;\r
-        private System.Windows.Forms.Label label23;\r
-        private System.Windows.Forms.Label label7;\r
         private System.Windows.Forms.TabPage tab_chapters;\r
         internal System.Windows.Forms.Label label31;\r
         internal System.Windows.Forms.NumericUpDown text_right;\r
@@ -2959,13 +3184,32 @@ namespace Handbrake
         internal System.Windows.Forms.Label label68;\r
         private System.Windows.Forms.DataGridViewTextBoxColumn number;\r
         private System.Windows.Forms.DataGridViewTextBoxColumn name;\r
-        internal System.Windows.Forms.Label label12;\r
-        private System.Windows.Forms.GroupBox groupBox4;\r
         private System.Windows.Forms.GroupBox groupBox3;\r
         private System.Windows.Forms.GroupBox groupBox5;\r
         private System.Windows.Forms.CheckBox check_fileMode;\r
         private System.Windows.Forms.Button btn_Browse;\r
         private System.Windows.Forms.Button btn_destBrowse;\r
+        internal System.Windows.Forms.TrackBar trackBar1;\r
+        internal System.Windows.Forms.Label lbl_drc4;\r
+        internal System.Windows.Forms.Label lbl_drc3;\r
+        internal System.Windows.Forms.Label lbl_drc2;\r
+        internal System.Windows.Forms.TrackBar trackBar4;\r
+        internal System.Windows.Forms.ComboBox drp_audsr_4;\r
+        internal System.Windows.Forms.ComboBox drp_audbit_4;\r
+        internal System.Windows.Forms.ComboBox drp_audenc_4;\r
+        internal System.Windows.Forms.ComboBox drp_audmix_4;\r
+        internal System.Windows.Forms.ComboBox drp_track4Audio;\r
+        internal System.Windows.Forms.Label label21;\r
+        internal System.Windows.Forms.TrackBar trackBar3;\r
+        internal System.Windows.Forms.ComboBox drp_audsr_3;\r
+        internal System.Windows.Forms.ComboBox drp_audbit_3;\r
+        internal System.Windows.Forms.ComboBox drp_audenc_3;\r
+        internal System.Windows.Forms.ComboBox drp_audmix_3;\r
+        internal System.Windows.Forms.ComboBox drp_track3Audio;\r
+        internal System.Windows.Forms.Label label18;\r
+        internal System.Windows.Forms.TrackBar trackBar2;\r
+        internal System.Windows.Forms.Label label16;\r
+        internal System.Windows.Forms.Label lbl_drc1;\r
 \r
     }\r
 }
\ No newline at end of file
index 06d1e3c292c85f1926b95bb2949b0ab02c669c2c..2c0df3607017be61b52bc17c397dd685a32069fe 100644 (file)
@@ -548,6 +548,18 @@ namespace Handbrake
                 if (drp_track2Audio.Items.Count > 0)\r
                     drp_track2Audio.Text = drp_track2Audio.Items[0].ToString();\r
 \r
+                drp_track3Audio.Items.Clear();\r
+                drp_track3Audio.Items.Add("None");\r
+                drp_track3Audio.Items.AddRange(selectedTitle.AudioTracks.ToArray());\r
+                if (drp_track3Audio.Items.Count > 0)\r
+                    drp_track3Audio.Text = drp_track3Audio.Items[0].ToString();\r
+\r
+                drp_track4Audio.Items.Clear();\r
+                drp_track4Audio.Items.Add("None");\r
+                drp_track4Audio.Items.AddRange(selectedTitle.AudioTracks.ToArray());\r
+                if (drp_track4Audio.Items.Count > 0)\r
+                    drp_track4Audio.Text = drp_track4Audio.Items[0].ToString();\r
+\r
                 // Populate the Subtitles dropdown\r
                 drp_subtitle.Items.Clear();\r
                 drp_subtitle.Items.Add("None");\r
@@ -892,6 +904,7 @@ namespace Handbrake
                 drp_audsr_1.Text = "48";\r
                 drp_audmix_1.Text = "Automatic";\r
             }\r
+            trackBar1.Value = 0;\r
         }\r
         private void drp_track2Audio_SelectedIndexChanged(object sender, EventArgs e)\r
         {\r
@@ -904,7 +917,7 @@ namespace Handbrake
                 drp_audbit_2.Text = "";\r
                 drp_audenc_2.Text = "";\r
                 drp_audsr_2.Text = "";\r
-                drp_audmix_2.Text = "";\r
+                drp_audmix_2.Text = "";                \r
             }\r
             else\r
             {\r
@@ -917,7 +930,61 @@ namespace Handbrake
                 drp_audsr_2.Text = "48";\r
                 drp_audmix_2.Text = "Automatic";\r
             }\r
+            trackBar2.Value = 0;\r
+        }\r
+        private void drp_track3Audio_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_track3Audio.SelectedItem.Equals("None"))\r
+            {\r
+                drp_audbit_3.Enabled = false;\r
+                drp_audenc_3.Enabled = false;\r
+                drp_audsr_3.Enabled = false;\r
+                drp_audmix_3.Enabled = false;\r
+                drp_audbit_3.Text = "";\r
+                drp_audenc_3.Text = "";\r
+                drp_audsr_3.Text = "";\r
+                drp_audmix_3.Text = "";\r
+            }\r
+            else\r
+            {\r
+                drp_audbit_3.Enabled = true;\r
+                drp_audenc_3.Enabled = true;\r
+                drp_audsr_3.Enabled = true;\r
+                drp_audmix_3.Enabled = true;\r
+                drp_audbit_3.Text = "160";\r
+                drp_audenc_3.Text = "AAC";\r
+                drp_audsr_3.Text = "48";\r
+                drp_audmix_3.Text = "Automatic";\r
+            }\r
+            trackBar3.Value = 0;\r
+        }\r
+        private void drp_track4Audio_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_track4Audio.SelectedItem.Equals("None"))\r
+            {\r
+                drp_audbit_4.Enabled = false;\r
+                drp_audenc_4.Enabled = false;\r
+                drp_audsr_4.Enabled = false;\r
+                drp_audmix_4.Enabled = false;\r
+                drp_audbit_4.Text = "";\r
+                drp_audenc_4.Text = "";\r
+                drp_audsr_4.Text = "";\r
+                drp_audmix_4.Text = "";\r
+            }\r
+            else\r
+            {\r
+                drp_audbit_4.Enabled = true;\r
+                drp_audenc_4.Enabled = true;\r
+                drp_audsr_4.Enabled = true;\r
+                drp_audmix_4.Enabled = true;\r
+                drp_audbit_4.Text = "160";\r
+                drp_audenc_4.Text = "AAC";\r
+                drp_audsr_4.Text = "48";\r
+                drp_audmix_4.Text = "Automatic";\r
+            }\r
+            trackBar4.Value = 0;\r
         }\r
+\r
         private void drp_audioMixDown_SelectedIndexChanged(object sender, EventArgs e)\r
         {\r
             if ((drp_audenc_1.Text == "AAC") && (drp_audmix_1.Text == "6 Channel Discrete"))\r
@@ -957,6 +1024,9 @@ namespace Handbrake
         }\r
         private void drp_audmix_2_SelectedIndexChanged(object sender, EventArgs e)\r
         {\r
+            if (drp_audmix_1.Text == "Automatic")\r
+                MessageBox.Show("Please select a mixdown for the previous track(s).", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+\r
             if ((drp_audenc_2.Text == "AAC") && (drp_audmix_2.Text == "6 Channel Discrete"))\r
             {\r
                 drp_audbit_2.Items.Clear();\r
@@ -976,7 +1046,103 @@ namespace Handbrake
                 drp_audbit_2.Items.Add("320");\r
                 drp_audbit_2.Items.Add("384");\r
             }\r
+            else if ((drp_audenc_2.Text == "AAC") && (drp_audmix_2.Text != "6 Channel Discrete"))\r
+            {\r
+                drp_audbit_2.Items.Clear();\r
+                drp_audbit_2.Items.Add("32");\r
+                drp_audbit_2.Items.Add("40");\r
+                drp_audbit_2.Items.Add("48");\r
+                drp_audbit_2.Items.Add("56");\r
+                drp_audbit_2.Items.Add("64");\r
+                drp_audbit_2.Items.Add("80");\r
+                drp_audbit_2.Items.Add("86");\r
+                drp_audbit_2.Items.Add("112");\r
+                drp_audbit_2.Items.Add("128");\r
+                drp_audbit_2.Items.Add("160");\r
+                drp_audbit_2.Text = "160";\r
+            }\r
         }\r
+        private void drp_audmix_3_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_audmix_2.Text == "Automatic")\r
+                MessageBox.Show("Please select a mixdown for the previous track(s).", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+\r
+            if ((drp_audenc_3.Text == "AAC") && (drp_audmix_3.Text == "6 Channel Discrete"))\r
+            {\r
+                drp_audbit_3.Items.Clear();\r
+                drp_audbit_3.Items.Add("32");\r
+                drp_audbit_3.Items.Add("40");\r
+                drp_audbit_3.Items.Add("48");\r
+                drp_audbit_3.Items.Add("56");\r
+                drp_audbit_3.Items.Add("64");\r
+                drp_audbit_3.Items.Add("80");\r
+                drp_audbit_3.Items.Add("86");\r
+                drp_audbit_3.Items.Add("112");\r
+                drp_audbit_3.Items.Add("128");\r
+                drp_audbit_3.Items.Add("160");\r
+                drp_audbit_3.Items.Add("192");\r
+                drp_audbit_3.Items.Add("224");\r
+                drp_audbit_3.Items.Add("256");\r
+                drp_audbit_3.Items.Add("320");\r
+                drp_audbit_3.Items.Add("384");\r
+            }\r
+            else if ((drp_audenc_3.Text == "AAC") && (drp_audmix_3.Text != "6 Channel Discrete"))\r
+            {\r
+                drp_audbit_3.Items.Clear();\r
+                drp_audbit_3.Items.Add("32");\r
+                drp_audbit_3.Items.Add("40");\r
+                drp_audbit_3.Items.Add("48");\r
+                drp_audbit_3.Items.Add("56");\r
+                drp_audbit_3.Items.Add("64");\r
+                drp_audbit_3.Items.Add("80");\r
+                drp_audbit_3.Items.Add("86");\r
+                drp_audbit_3.Items.Add("112");\r
+                drp_audbit_3.Items.Add("128");\r
+                drp_audbit_3.Items.Add("160");\r
+                drp_audbit_3.Text = "160";\r
+            }\r
+        }\r
+        private void drp_audmix_4_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_audmix_3.Text == "Automatic")\r
+                MessageBox.Show("Please select a mixdown for the previous track(s).", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+\r
+            if ((drp_audenc_4.Text == "AAC") && (drp_audmix_4.Text == "6 Channel Discrete"))\r
+            {\r
+                drp_audbit_4.Items.Clear();\r
+                drp_audbit_4.Items.Add("32");\r
+                drp_audbit_4.Items.Add("40");\r
+                drp_audbit_4.Items.Add("48");\r
+                drp_audbit_4.Items.Add("56");\r
+                drp_audbit_4.Items.Add("64");\r
+                drp_audbit_4.Items.Add("80");\r
+                drp_audbit_4.Items.Add("86");\r
+                drp_audbit_4.Items.Add("112");\r
+                drp_audbit_4.Items.Add("128");\r
+                drp_audbit_4.Items.Add("160");\r
+                drp_audbit_4.Items.Add("192");\r
+                drp_audbit_4.Items.Add("224");\r
+                drp_audbit_4.Items.Add("256");\r
+                drp_audbit_4.Items.Add("320");\r
+                drp_audbit_4.Items.Add("384");\r
+            }\r
+            else if ((drp_audenc_4.Text == "AAC") && (drp_audmix_4.Text != "6 Channel Discrete"))\r
+            {\r
+                drp_audbit_4.Items.Clear();\r
+                drp_audbit_4.Items.Add("32");\r
+                drp_audbit_4.Items.Add("40");\r
+                drp_audbit_4.Items.Add("48");\r
+                drp_audbit_4.Items.Add("56");\r
+                drp_audbit_4.Items.Add("64");\r
+                drp_audbit_4.Items.Add("80");\r
+                drp_audbit_4.Items.Add("86");\r
+                drp_audbit_4.Items.Add("112");\r
+                drp_audbit_4.Items.Add("128");\r
+                drp_audbit_4.Items.Add("160");\r
+                drp_audbit_4.Text = "160";\r
+            }\r
+        }\r
+\r
         private void drp_audenc_1_SelectedIndexChanged(object sender, EventArgs e)\r
         {\r
             if (drp_audenc_1.Text == "AC3")\r
@@ -1051,9 +1217,9 @@ namespace Handbrake
                 drp_audbit_2.Enabled = false;\r
                 drp_audsr_2.Enabled = false;\r
 \r
-                drp_audmix_2.Text = "";\r
-                drp_audbit_2.Text = "";\r
-                drp_audsr_2.Text = "";\r
+                drp_audmix_2.Text = "Automatic";\r
+                drp_audbit_2.Text = "160";\r
+                drp_audsr_2.Text = "48";\r
             }\r
             else\r
             {\r
@@ -1068,8 +1234,6 @@ namespace Handbrake
                     drp_audbit_2.Text = "160";\r
                     drp_audsr_2.Text = "48";\r
                 }\r
-\r
-\r
             }\r
 \r
             if (drp_audenc_2.Text == "AAC")\r
@@ -1118,13 +1282,184 @@ namespace Handbrake
                 drp_audbit_2.Items.Add("320");\r
             }\r
         }\r
-        private void slider_drc_Scroll(object sender, EventArgs e)\r
+        private void drp_audenc_3_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_audenc_3.Text == "AC3")\r
+            {\r
+                drp_audmix_3.Enabled = false;\r
+                drp_audbit_3.Enabled = false;\r
+                drp_audsr_3.Enabled = false;\r
+\r
+                drp_audmix_3.Text = "Automatic";\r
+                drp_audbit_3.Text = "160";\r
+                drp_audsr_3.Text = "48";\r
+            }\r
+            else\r
+            {\r
+                // Just make sure not to re-enable the following boxes if the track above is none\r
+                if (drp_track2Audio.Text != "None")\r
+                {\r
+                    drp_audmix_3.Enabled = true;\r
+                    drp_audbit_3.Enabled = true;\r
+                    drp_audsr_3.Enabled = true;\r
+\r
+                    drp_audmix_3.Text = "Automatic";\r
+                    drp_audbit_3.Text = "160";\r
+                    drp_audsr_3.Text = "48";\r
+                }\r
+            }\r
+\r
+\r
+            if (drp_audenc_3.Text == "AAC")\r
+            {\r
+                drp_audmix_3.Items.Clear();\r
+                drp_audmix_3.Items.Add("Mono");\r
+                drp_audmix_3.Items.Add("Stereo");\r
+                drp_audmix_3.Items.Add("Dolby Surround");\r
+                drp_audmix_3.Items.Add("Dolby Pro Logic II");\r
+                drp_audmix_3.Items.Add("6 Channel Discrete");\r
+\r
+                drp_audbit_3.Items.Clear();\r
+                drp_audbit_3.Items.Add("32");\r
+                drp_audbit_3.Items.Add("40");\r
+                drp_audbit_3.Items.Add("48");\r
+                drp_audbit_3.Items.Add("56");\r
+                drp_audbit_3.Items.Add("64");\r
+                drp_audbit_3.Items.Add("80");\r
+                drp_audbit_3.Items.Add("86");\r
+                drp_audbit_3.Items.Add("112");\r
+                drp_audbit_3.Items.Add("128");\r
+                drp_audbit_3.Items.Add("160");\r
+\r
+            }\r
+            else\r
+            {\r
+                drp_audmix_3.Items.Clear();\r
+                drp_audmix_3.Items.Add("Stereo");\r
+                drp_audmix_3.Items.Add("Dolby Surround");\r
+                drp_audmix_3.Items.Add("Dolby Pro Logic II");\r
+\r
+                drp_audbit_3.Items.Clear();\r
+                drp_audbit_3.Items.Add("32");\r
+                drp_audbit_3.Items.Add("40");\r
+                drp_audbit_3.Items.Add("48");\r
+                drp_audbit_3.Items.Add("56");\r
+                drp_audbit_3.Items.Add("64");\r
+                drp_audbit_3.Items.Add("80");\r
+                drp_audbit_3.Items.Add("86");\r
+                drp_audbit_3.Items.Add("112");\r
+                drp_audbit_3.Items.Add("128");\r
+                drp_audbit_3.Items.Add("160");\r
+                drp_audbit_3.Items.Add("192");\r
+                drp_audbit_3.Items.Add("224");\r
+                drp_audbit_3.Items.Add("256");\r
+                drp_audbit_3.Items.Add("320");\r
+            }\r
+        }\r
+        private void drp_audenc_4_SelectedIndexChanged(object sender, EventArgs e)\r
+        {\r
+            if (drp_audenc_4.Text == "AC3")\r
+            {\r
+                drp_audmix_4.Enabled = false;\r
+                drp_audbit_4.Enabled = false;\r
+                drp_audsr_4.Enabled = false;\r
+\r
+                drp_audmix_4.Text = "Automatic";\r
+                drp_audbit_4.Text = "160";\r
+                drp_audsr_4.Text = "48";\r
+            }\r
+            else\r
+            {\r
+                // Just make sure not to re-enable the following boxes if the track above is none\r
+                if (drp_track2Audio.Text != "None")\r
+                {\r
+                    drp_audmix_4.Enabled = true;\r
+                    drp_audbit_4.Enabled = true;\r
+                    drp_audsr_4.Enabled = true;\r
+\r
+                    drp_audmix_4.Text = "Automatic";\r
+                    drp_audbit_4.Text = "160";\r
+                    drp_audsr_4.Text = "48";\r
+                }\r
+            }\r
+\r
+\r
+            if (drp_audenc_4.Text == "AAC")\r
+            {\r
+                drp_audmix_4.Items.Clear();\r
+                drp_audmix_4.Items.Add("Mono");\r
+                drp_audmix_4.Items.Add("Stereo");\r
+                drp_audmix_4.Items.Add("Dolby Surround");\r
+                drp_audmix_4.Items.Add("Dolby Pro Logic II");\r
+                drp_audmix_4.Items.Add("6 Channel Discrete");\r
+\r
+                drp_audbit_4.Items.Clear();\r
+                drp_audbit_4.Items.Add("32");\r
+                drp_audbit_4.Items.Add("40");\r
+                drp_audbit_4.Items.Add("48");\r
+                drp_audbit_4.Items.Add("56");\r
+                drp_audbit_4.Items.Add("64");\r
+                drp_audbit_4.Items.Add("80");\r
+                drp_audbit_4.Items.Add("86");\r
+                drp_audbit_4.Items.Add("112");\r
+                drp_audbit_4.Items.Add("128");\r
+                drp_audbit_4.Items.Add("160");\r
+\r
+            }\r
+            else\r
+            {\r
+                drp_audmix_4.Items.Clear();\r
+                drp_audmix_4.Items.Add("Stereo");\r
+                drp_audmix_4.Items.Add("Dolby Surround");\r
+                drp_audmix_4.Items.Add("Dolby Pro Logic II");\r
+\r
+                drp_audbit_4.Items.Clear();\r
+                drp_audbit_4.Items.Add("32");\r
+                drp_audbit_4.Items.Add("40");\r
+                drp_audbit_4.Items.Add("48");\r
+                drp_audbit_4.Items.Add("56");\r
+                drp_audbit_4.Items.Add("64");\r
+                drp_audbit_4.Items.Add("80");\r
+                drp_audbit_4.Items.Add("86");\r
+                drp_audbit_4.Items.Add("112");\r
+                drp_audbit_4.Items.Add("128");\r
+                drp_audbit_4.Items.Add("160");\r
+                drp_audbit_4.Items.Add("192");\r
+                drp_audbit_4.Items.Add("224");\r
+                drp_audbit_4.Items.Add("256");\r
+                drp_audbit_4.Items.Add("320");\r
+            }\r
+        }\r
+\r
+        private void trackBar1_Scroll(object sender, EventArgs e)\r
+        {\r
+            double value = trackBar1.Value / 10.0;\r
+            value++;\r
+\r
+            lbl_drc1.Text = value.ToString();\r
+        }\r
+        private void trackBar2_Scroll(object sender, EventArgs e)\r
+        {\r
+            double value = trackBar2.Value / 10.0;\r
+            value++;\r
+\r
+            lbl_drc2.Text = value.ToString();\r
+        }\r
+        private void trackBar3_Scroll(object sender, EventArgs e)\r
+        {\r
+            double value = trackBar3.Value / 10.0;\r
+            value++;\r
+\r
+            lbl_drc3.Text = value.ToString();\r
+        }\r
+        private void trackBar4_Scroll(object sender, EventArgs e)\r
         {\r
-            double value = slider_drc.Value / 10.0;\r
+            double value = trackBar4.Value / 10.0;\r
             value++;\r
 \r
-            lbl_drc.Text = value.ToString();\r
+            lbl_drc4.Text = value.ToString();\r
         }\r
+\r
         private void drp_subtitle_SelectedIndexChanged(object sender, EventArgs e)\r
         {\r
             if (drp_subtitle.Text.Contains("None"))\r
@@ -1413,6 +1748,16 @@ namespace Handbrake
                 drp_audenc_2.Items.Add("AAC");\r
                 if (drp_audenc_2.Enabled)\r
                     drp_audenc_2.SelectedIndex = 0;\r
+\r
+                drp_audenc_3.Items.Clear();\r
+                drp_audenc_3.Items.Add("AAC");\r
+                if (drp_audenc_3.Enabled)\r
+                    drp_audenc_3.SelectedIndex = 0;\r
+\r
+                drp_audenc_4.Items.Clear();\r
+                drp_audenc_4.Items.Add("AAC");\r
+                if (drp_audenc_4.Enabled)\r
+                    drp_audenc_4.SelectedIndex = 0;\r
             }\r
             else if (path.EndsWith(".avi"))\r
             {\r
@@ -1426,6 +1771,18 @@ namespace Handbrake
                 drp_audenc_2.Items.Add("AC3");\r
                 if (drp_audenc_2.Enabled)\r
                     drp_audenc_2.SelectedIndex = 0;\r
+\r
+                drp_audenc_3.Items.Clear();\r
+                drp_audenc_3.Items.Add("MP3");\r
+                drp_audenc_3.Items.Add("AC3");\r
+                if (drp_audenc_3.Enabled)\r
+                    drp_audenc_3.SelectedIndex = 0;\r
+\r
+                drp_audenc_4.Items.Clear();\r
+                drp_audenc_4.Items.Add("MP3");\r
+                drp_audenc_4.Items.Add("AC3");\r
+                if (drp_audenc_4.Enabled)\r
+                    drp_audenc_4.SelectedIndex = 0;\r
             }\r
             else if (path.EndsWith(".ogm"))\r
             {\r
@@ -1437,6 +1794,16 @@ namespace Handbrake
                 drp_audenc_2.Items.Add("Vorbis");\r
                 if (drp_audenc_2.Enabled)\r
                     drp_audenc_2.SelectedIndex = 0;\r
+\r
+                drp_audenc_3.Items.Clear();\r
+                drp_audenc_3.Items.Add("Vorbis");\r
+                if (drp_audenc_3.Enabled)\r
+                    drp_audenc_3.SelectedIndex = 0;\r
+\r
+                drp_audenc_4.Items.Clear();\r
+                drp_audenc_4.Items.Add("Vorbis");\r
+                if (drp_audenc_4.Enabled)\r
+                    drp_audenc_4.SelectedIndex = 0;\r
             }\r
             else if (path.EndsWith(".mkv"))\r
             {\r
@@ -1454,6 +1821,22 @@ namespace Handbrake
                 drp_audenc_2.Items.Add("Vorbis");\r
                 if (drp_audenc_2.Enabled)\r
                     drp_audenc_2.SelectedIndex = 0;\r
+\r
+                drp_audenc_3.Items.Clear();\r
+                drp_audenc_3.Items.Add("AAC");\r
+                drp_audenc_3.Items.Add("MP3");\r
+                drp_audenc_3.Items.Add("AC3");\r
+                drp_audenc_3.Items.Add("Vorbis");\r
+                if (drp_audenc_3.Enabled)\r
+                    drp_audenc_3.SelectedIndex = 0;\r
+\r
+                drp_audenc_4.Items.Clear();\r
+                drp_audenc_4.Items.Add("AAC");\r
+                drp_audenc_4.Items.Add("MP3");\r
+                drp_audenc_4.Items.Add("AC3");\r
+                drp_audenc_4.Items.Add("Vorbis");\r
+                if (drp_audenc_4.Enabled)\r
+                    drp_audenc_4.SelectedIndex = 0;\r
             }\r
         }\r
 \r
@@ -1649,11 +2032,7 @@ namespace Handbrake
         }\r
 \r
         #endregion\r
-\r
-\r
-\r
-\r
-\r
+      \r
         // This is the END of the road ------------------------------------------------------------------------------\r
     }\r
 }
\ No newline at end of file