@@ -7,7 +7,7 @@ namespace NotEnoughEncodes
77{
88 internal class AudioEncode
99 {
10- public static void EncodeAudio ( string videoInput , bool logging , string audioBitrate , string audioCodec , string currentPath , string ffmpegPath )
10+ public static void EncodeAudio ( string videoInput , bool logging , string audioBitrate , string audioCodec , string currentPath , string ffmpegPath , bool trackone , bool tracktwo , bool trackthree , bool trackfour )
1111 {
1212 if ( logging == true )
1313 {
@@ -108,7 +108,87 @@ public static void EncodeAudio(string videoInput, bool logging, string audioBitr
108108 startInfo . WindowStyle = ProcessWindowStyle . Hidden ;
109109 startInfo . WorkingDirectory = ffmpegPath ;
110110 startInfo . FileName = "cmd.exe" ;
111- startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
111+
112+ if ( trackone == true && tracktwo == true && trackthree == true && trackfour == true )
113+ {
114+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
115+ }
116+ //Only One out of Four Tracks
117+ //1st Track
118+ if ( trackone == true && tracktwo == false && trackthree == false && trackfour == false )
119+ {
120+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' ;
121+ }
122+ //2nd Track
123+ if ( trackone == false && tracktwo == true && trackthree == false && trackfour == false )
124+ {
125+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' ;
126+ }
127+ //3rd Track
128+ if ( trackone == false && tracktwo == false && trackthree == true && trackfour == false )
129+ {
130+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' ;
131+ }
132+ //4th Track
133+ if ( trackone == false && tracktwo == false && trackthree == false && trackfour == true )
134+ {
135+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
136+ }
137+
138+ //Two out of Four Tracks
139+ //1st & 2nd // //
140+ if ( trackone == true && tracktwo == true && trackthree == false && trackfour == false )
141+ {
142+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' ;
143+ }
144+ //1st & 3rd // //
145+ if ( trackone == true && tracktwo == false && trackthree == true && trackfour == false )
146+ {
147+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' ;
148+ }
149+ //1st & 4th // //
150+ if ( trackone == true && tracktwo == false && trackthree == false && trackfour == true )
151+ {
152+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
153+ }
154+ //2nd & 3rd // //
155+ if ( trackone == false && tracktwo == true && trackthree == true && trackfour == false )
156+ {
157+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' ;
158+ }
159+ //2nd & 4th // //
160+ if ( trackone == false && tracktwo == true && trackthree == false && trackfour == true )
161+ {
162+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
163+ }
164+ //3rd & 4th // //
165+ if ( trackone == false && tracktwo == false && trackthree == true && trackfour == true )
166+ {
167+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
168+ }
169+
170+ //Three out of Four Tracks
171+ //1st & 2nd & 3rd // // //
172+ if ( trackone == true && tracktwo == true && trackthree == true && trackfour == false )
173+ {
174+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' ;
175+ }
176+ //1st & 2nd & 4th // // //
177+ if ( trackone == true && tracktwo == true && trackthree == false && trackfour == true )
178+ {
179+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
180+ }
181+ //1st & 3rd & 4th // // //
182+ if ( trackone == true && tracktwo == false && trackthree == true && trackfour == true )
183+ {
184+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:0 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio0.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
185+ }
186+ //2nd & 3rd & 4th // // //
187+ if ( trackone == false && tracktwo == true && trackthree == true && trackfour == true )
188+ {
189+ startInfo . Arguments = "/C ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:1 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio1.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:2 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio2.mkv" + '\u0022 ' + " & ffmpeg.exe -i " + '\u0022 ' + videoInput + '\u0022 ' + " -vn -map_metadata -1 -c copy -map 0:a:3 " + '\u0022 ' + currentPath + "\\ AudioExtracted\\ audio3.mkv" + '\u0022 ' ;
190+ }
191+
112192 Console . WriteLine ( startInfo . Arguments ) ;
113193 process . StartInfo = startInfo ;
114194 process . Start ( ) ;
0 commit comments