private void FrmMainForm_Load(object sender, EventArgs e) { if (!File.Exists("./HandbrakeCLI.exe")) { using (var client = new WebClient()) { client.DownloadFile("https://download2.handbrake.fr/1.2.2/HandBrakeCLI-1.2.2-win-x86_64.zip", "./CLI.zip"); ZipFile.ExtractToDirectory("./CLI.zip", "./"); File.Delete("./CLI.zip"); System.IO.DirectoryInfo directory = new System.IO.DirectoryInfo("./doc"); Empty(directory); Directory.Delete("./doc"); } } conv.TranscodingStarted += Conv_TranscodingStarted; conv.TranscodingCompleted += Conv_TranscodingCompleted; conv.TranscodingError += Conv_TranscodingError; HandbrakeCliConfigBuilder config = new HandbrakeCliConfigBuilder(); config.Encoder = HandbrakeCLIwrapper.Encoder.x264; config.AudioCopyMask.Add(AudioCopyMask.aac); config.AudioEncoder = AudioEncoder.av_aac; config.Format = Format.av_mp4; config.WebOptimize = true; HBConfig = config; }
private static async void Run(List <string> files, string output) { if (!File.Exists("./HandbrakeCLI.exe")) { throw new Exception("Missing ./HandbrakeCLI.exe"); } var hb = new HandbrakeCli("./HandbrakeCLI.exe"); _total = files.Count; _current = 0; PrintStatus(hb); var config = new HandbrakeCliConfigBuilder(); foreach (var file in files) { await hb.Transcode(config, file, output, overwriteExisting : true); _current++; } }