public FFV1(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; //прогружаем colorspace combo_color.Items.Add("YV12"); combo_color.Items.Add("YUY2"); combo_color.Items.Add("RGB32"); combo_color.Items.Add("YUV410P"); combo_color.Items.Add("YUV411P"); combo_color.Items.Add("YUV444P"); //codertype combo_codertype.Items.Add("VLC"); combo_codertype.Items.Add("AC"); //context model combo_contextmodel.Items.Add("Small"); combo_contextmodel.Items.Add("Large"); LoadFromProfile(); SetToolTips(); }
public FFHUFF(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; //прогружаем fourcc combo_fourcc.Items.Add("HFYU"); combo_fourcc.Items.Add("FFVH"); //прогружаем colorspace combo_color.Items.Add("YV12"); combo_color.Items.Add("YUY2"); combo_color.Items.Add("RGB32"); //предиктор combo_predictor.Items.Add("Left"); combo_predictor.Items.Add("Plane"); combo_predictor.Items.Add("Median"); LoadFromProfile(); SetToolTips(); }
public FMJPEG(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.num_bitrate.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_bitrate_ValueChanged); this.num_bittolerance.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_bittolerance_ValueChanged); this.num_buffsize.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_buffsize_ValueChanged); this.num_gopsize.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_gopsize_ValueChanged); this.num_maxbitrate.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_maxbitrate_ValueChanged); this.num_minbitrate.ValueChanged += new RoutedPropertyChangedEventHandler <decimal>(num_minbitrate_ValueChanged); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; combo_mode.Items.Add("1-Pass Bitrate"); //combo_mode.Items.Add("2-Pass Bitrate"); //combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); //combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("1-Pass Size"); //combo_mode.Items.Add("3-Pass Size"); LoadFromProfile(); }
public FDV(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; //прогружаем fourcc combo_fourcc.Items.Add("dvsd"); combo_fourcc.Items.Add("DVSD"); combo_fourcc.Items.Add("dv25"); combo_fourcc.Items.Add("DV25"); combo_fourcc.Items.Add("dv50"); combo_fourcc.Items.Add("DV50"); //прогружаем пресеты combo_preset.Items.Add("DVCAM"); combo_preset.Items.Add("DVCPRO25"); combo_preset.Items.Add("DVCPRO50"); LoadFromProfile(); SetToolTips(); }
public x264(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.root_window = VideoEncWindow; this.p = parent; //Mode combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("Constant Quantizer"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("3-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); combo_mode.Items.Add("3-Pass Size"); //AVC profile combo_avc_profile.Items.Add(new ComboBoxItem { Content = "Auto" }); combo_avc_profile.Items.Add("Baseline Profile"); combo_avc_profile.Items.Add("Main Profile"); combo_avc_profile.Items.Add("High Profile"); combo_avc_profile.Items.Add("High 10 Profile"); //AVC level combo_level.Items.Add("Unrestricted"); combo_level.Items.Add("1.0"); combo_level.Items.Add("1.1"); combo_level.Items.Add("1.2"); combo_level.Items.Add("1.3"); combo_level.Items.Add("2.0"); combo_level.Items.Add("2.1"); combo_level.Items.Add("2.2"); combo_level.Items.Add("3.0"); combo_level.Items.Add("3.1"); combo_level.Items.Add("3.2"); combo_level.Items.Add("4.0"); combo_level.Items.Add("4.1"); combo_level.Items.Add("4.2"); combo_level.Items.Add("5.0"); combo_level.Items.Add("5.1"); combo_level.Items.Add("5.2"); //Tune combo_tune.Items.Add("None"); combo_tune.Items.Add("Film"); combo_tune.Items.Add("Animation"); combo_tune.Items.Add("Grain"); combo_tune.Items.Add("Still Image"); combo_tune.Items.Add("PSNR"); combo_tune.Items.Add("SSIM"); combo_tune.Items.Add("Fast Decode"); //Adaptive Quantization for (double n = 0.1; n <= 2.1; n += 0.1) combo_adapt_quant.Items.Add(Calculate.ConvertDoubleToPointString(n, 1)); combo_adapt_quant_mode.Items.Add("None"); combo_adapt_quant_mode.Items.Add("VAQ"); combo_adapt_quant_mode.Items.Add("A-VAQ"); //прогружаем деблокинг for (int n = -6; n <= 6; n++) { combo_dstrength.Items.Add(n); combo_dthreshold.Items.Add(n); } //Прописываем subme combo_subme.Items.Add("0 - Fullpel only"); combo_subme.Items.Add("1 - QPel SAD"); combo_subme.Items.Add("2 - QPel SATD"); combo_subme.Items.Add("3 - HPel on MB then QPel"); combo_subme.Items.Add("4 - Always QPel"); combo_subme.Items.Add("5 - QPel & Bidir ME"); combo_subme.Items.Add("6 - RD on I/P frames"); combo_subme.Items.Add("7 - RD on all frames"); combo_subme.Items.Add("8 - RD refinement on I/P frames"); combo_subme.Items.Add("9 - RD refinement on all frames"); combo_subme.Items.Add("10 - QP-RD"); combo_subme.Items.Add("11 - Full RD"); //прописываем me алгоритм combo_me.Items.Add("Diamond"); combo_me.Items.Add("Hexagon"); combo_me.Items.Add("Multi Hexagon"); combo_me.Items.Add("Exhaustive"); combo_me.Items.Add("SATD Exhaustive"); //прописываем me range for (int n = 4; n <= 64; n++) combo_merange.Items.Add(n); //B фреймы for (int n = 0; n <= 16; n++) combo_bframes.Items.Add(n); //режим B фреймов combo_bframe_mode.Items.Add("Disabled"); combo_bframe_mode.Items.Add("Spatial"); combo_bframe_mode.Items.Add("Temporal"); combo_bframe_mode.Items.Add("Auto"); //trellis combo_trellis.Items.Add("0 - Disabled"); combo_trellis.Items.Add("1 - Final MB"); combo_trellis.Items.Add("2 - Always"); //refernce frames for (int n = 1; n <= 16; n++) combo_ref.Items.Add(n); combo_open_gop.Items.Add("No"); combo_open_gop.Items.Add("Yes"); //Кол-во потоков для lookahead combo_lookahead_threads.Items.Add("Auto"); for (int n = 1; n <= 10; n++) combo_lookahead_threads.Items.Add(Convert.ToString(n)); //Кол-во потоков для x264-го combo_threads_count.Items.Add("Auto"); combo_threads_count.Items.Add("1"); combo_threads_count.Items.Add("1+1"); //+ --thread-input for (int n = 2; n <= 32; n++) combo_threads_count.Items.Add(Convert.ToString(n)); //-b-adapt combo_badapt_mode.Items.Add("Disabled"); combo_badapt_mode.Items.Add("Fast"); combo_badapt_mode.Items.Add("Optimal"); //--b-pyramid combo_bpyramid_mode.Items.Add("None"); combo_bpyramid_mode.Items.Add("Strict"); combo_bpyramid_mode.Items.Add("Normal"); //--weightp combo_weightp_mode.Items.Add("Disabled"); combo_weightp_mode.Items.Add("Blind offset"); combo_weightp_mode.Items.Add("Smart analysis"); combo_nal_hrd.Items.Add("None"); combo_nal_hrd.Items.Add("VBR"); combo_nal_hrd.Items.Add("CBR"); combo_range_in.Items.Add("Auto"); combo_range_in.Items.Add("TV"); combo_range_in.Items.Add("PC"); combo_range_out.Items.Add("Auto"); combo_range_out.Items.Add("TV"); combo_range_out.Items.Add("PC"); combo_colorprim.Items.Add("Undefined"); combo_colorprim.Items.Add("bt709"); combo_colorprim.Items.Add("bt470m"); combo_colorprim.Items.Add("bt470bg"); combo_colorprim.Items.Add("smpte170m"); combo_colorprim.Items.Add("smpte240m"); combo_colorprim.Items.Add("film"); combo_transfer.Items.Add("Undefined"); combo_transfer.Items.Add("bt709"); combo_transfer.Items.Add("bt470m"); combo_transfer.Items.Add("bt470bg"); combo_transfer.Items.Add("linear"); combo_transfer.Items.Add("log100"); combo_transfer.Items.Add("log316"); combo_transfer.Items.Add("smpte170m"); combo_transfer.Items.Add("smpte240m"); combo_colormatrix.Items.Add("Undefined"); combo_colormatrix.Items.Add("bt709"); combo_colormatrix.Items.Add("fcc"); combo_colormatrix.Items.Add("bt470bg"); combo_colormatrix.Items.Add("smpte170m"); combo_colormatrix.Items.Add("smpte240m"); combo_colormatrix.Items.Add("GBR"); combo_colormatrix.Items.Add("YCgCo"); combo_colorspace.Items.Add("I420"); combo_colorspace.Items.Add("I422"); combo_colorspace.Items.Add("I444"); combo_colorspace.Items.Add("RGB"); text_mode.Content = Languages.Translate("Encoding mode") + ":"; Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); x264_help.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; x264_help.ToolTip = "Show x264.exe --fullhelp screen"; LoadFromProfile(); }
public FMPEG4(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.num_bitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bitrate_ValueChanged); this.num_bittolerance.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bittolerance_ValueChanged); this.num_buffsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_buffsize_ValueChanged); this.num_gopsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_gopsize_ValueChanged); this.num_maxbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_maxbitrate_ValueChanged); this.num_minbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_minbitrate_ValueChanged); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); //combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); //combo_mode.Items.Add("3-Pass Size"); //Прописываем ME метод #region //(me_method is only allowed to be set to zero and epzs; for hex,umh,full and others see dia_size) //http://forum.doom9.org/showthread.php?t=157282 //log, phods, and x1 don't exist. -dia_size 1040 means “exhaustive search of radius 16″, or in x264, –me esa –merange 16 /*motion_estimation_template.c (0 2 4 5 514 1040 1285) if(c->dia_size==-1) funny_diamond_search else if(c->dia_size<-1) sab_diamond_search else if(c->dia_size<2) small_diamond_search else if(c->dia_size>1024) full_search else if(c->dia_size>768) umh_search else if(c->dia_size>512) hex_search else if(c->dia_size>256) l2s_dia_search else var_diamond_search */ /* * -x..-2 sab_diamond_search * -1 funny_diamond_search * 0..1 small_diamond_search * 2..256 var_diamond_search * 257..512 l2s_dia_search * 513..768 hex_search * 769..1024 umh_search * 1025.. full_search * * 0 5s 11.08 * 1 5s 11.08 * 2- 5s 10.97 * 3 6s 10.90 * 4 7s 10.89 * 5 8s 10.86 MAP * 10 17s 10.80 * 15 33s 10.75 * 256-доооооолго * 257 5s 10.97 * 258 6s 10.88 * 260 7s 10.83 * 261 7s 10.81 MAP * -2 6s 10.98 * -4 6s 10.91 * -5 7s 10.90 */ #endregion combo_me_method.Items.Add("Small"); //0..1 combo_me_method.Items.Add("Sab"); //-x..-2 combo_me_method.Items.Add("Funny"); //-1 combo_me_method.Items.Add("Var"); //2..256 combo_me_method.Items.Add("L2s"); //257..512 combo_me_method.Items.Add("HEX"); //513..768 combo_me_method.Items.Add("UMH"); //769..1024 combo_me_method.Items.Add("Full"); //1025..x //прописываем cmp combo_cmp.Items.Add("SAD"); combo_cmp.Items.Add("SSE"); combo_cmp.Items.Add("SATD"); combo_cmp.Items.Add("DCT"); combo_cmp.Items.Add("PSNR"); combo_cmp.Items.Add("BIT"); combo_cmp.Items.Add("RD"); combo_cmp.Items.Add("ZERO"); combo_cmp.Items.Add("VSAD"); combo_cmp.Items.Add("VSSE"); combo_cmp.Items.Add("NSSE"); //прогружаем матрицы квантизации combo_qmatrix.Items.Add("H263"); foreach (string matrix in PresetLoader.CustomMatrixes(MatrixTypes.TXT)) combo_qmatrix.Items.Add(matrix); //прогружаем fourcc combo_fourcc.Items.Add(""); combo_fourcc.Items.Add("Default"); combo_fourcc.Items.Add("XVID"); combo_fourcc.Items.Add("FFDS"); combo_fourcc.Items.Add("FVFW"); combo_fourcc.Items.Add("DX50"); combo_fourcc.Items.Add("DIVX"); combo_fourcc.Items.Add("MP4V"); //прогружаем mbd combo_mbd.Items.Add("Simple"); combo_mbd.Items.Add("Fewest bits"); combo_mbd.Items.Add("Rate distortion"); //B фреймы for (int n = 0; n <= 16; n++) combo_bframes.Items.Add(n); combo_bdecision.Items.Add("Disabled"); for (int n = 1; n <= 10; n++) combo_bdecision.Items.Add(n.ToString()); combo_brefine.Items.Add("Disabled"); for (int n = 1; n <= 4; n++) combo_brefine.Items.Add(n.ToString()); //пресеты настроек и качества foreach (string preset in Enum.GetNames(typeof(CodecPresets))) combo_codec_preset.Items.Add(preset); combo_threads.Items.Add("Auto"); for (int n = 1; n <= 32; n++) combo_threads.Items.Add(n); Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); Help_CLI.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; Help_CLI.ToolTip = "Show ffmpeg.exe -help full screen"; LoadFromProfile(); }
public FLV1(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.num_bitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bitrate_ValueChanged); this.num_bittolerance.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bittolerance_ValueChanged); this.num_buffsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_buffsize_ValueChanged); this.num_gopsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_gopsize_ValueChanged); this.num_maxbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_maxbitrate_ValueChanged); this.num_minbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_minbitrate_ValueChanged); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); //combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); //combo_mode.Items.Add("3-Pass Size"); //Прописываем ME метод combo_me_method.Items.Add("Small"); //0..1 combo_me_method.Items.Add("Sab"); //-x..-2 combo_me_method.Items.Add("Funny"); //-1 combo_me_method.Items.Add("Var"); //2..256 combo_me_method.Items.Add("L2s"); //257..512 combo_me_method.Items.Add("HEX"); //513..768 combo_me_method.Items.Add("UMH"); //769..1024 combo_me_method.Items.Add("Full"); //1025..x //прописываем cmp combo_cmp.Items.Add("SAD"); combo_cmp.Items.Add("SSE"); combo_cmp.Items.Add("SATD"); combo_cmp.Items.Add("DCT"); combo_cmp.Items.Add("PSNR"); combo_cmp.Items.Add("BIT"); combo_cmp.Items.Add("RD"); combo_cmp.Items.Add("ZERO"); combo_cmp.Items.Add("VSAD"); combo_cmp.Items.Add("VSSE"); combo_cmp.Items.Add("NSSE"); //прогружаем матрицы квантизации combo_qmatrix.Items.Add("H263"); foreach (string matrix in PresetLoader.CustomMatrixes(MatrixTypes.TXT)) combo_qmatrix.Items.Add(matrix); //прогружаем fourcc combo_fourcc.Items.Add(""); combo_fourcc.Items.Add("Default"); combo_fourcc.Items.Add("FLV1"); //прогружаем mbd combo_mbd.Items.Add("Simple"); combo_mbd.Items.Add("Fewest bits"); combo_mbd.Items.Add("Rate distortion"); //пресеты настроек и качества foreach (string preset in Enum.GetNames(typeof(CodecPresets))) combo_codec_preset.Items.Add(preset); Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); Help_CLI.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; Help_CLI.ToolTip = "Show ffmpeg.exe -help full screen"; LoadFromProfile(); }
public FMPEG2(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.num_bitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bitrate_ValueChanged); this.num_bittolerance.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bittolerance_ValueChanged); this.num_buffsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_buffsize_ValueChanged); this.num_gopsize.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_gopsize_ValueChanged); this.num_maxbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_maxbitrate_ValueChanged); this.num_minbitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_minbitrate_ValueChanged); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); //combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); //combo_mode.Items.Add("3-Pass Size"); //Прописываем ME метод //combo_me_method.Items.Add("ZERO"); //combo_me_method.Items.Add("FULL"); //combo_me_method.Items.Add("EPSZ"); //combo_me_method.Items.Add("LOG"); //combo_me_method.Items.Add("PHODS"); //combo_me_method.Items.Add("X1"); //combo_me_method.Items.Add("HEX"); //combo_me_method.Items.Add("UMH"); //combo_me_method.Items.Add("ITER"); combo_me_method.Items.Add("Default Search"); //0 combo_me_method.Items.Add("Sab Diamond Search"); //-2- combo_me_method.Items.Add("Funny Diamond Search"); //-1 combo_me_method.Items.Add("Small Diamond Search"); //2+ combo_me_method.Items.Add("L2s Diamond Search"); //257+ combo_me_method.Items.Add("HEX Search"); //513+ combo_me_method.Items.Add("UMH Search"); //769+ combo_me_method.Items.Add("Full Search"); //1025+ //прописываем cmp combo_cmp.Items.Add("SAD"); combo_cmp.Items.Add("SSE"); combo_cmp.Items.Add("SATD"); combo_cmp.Items.Add("DCT"); combo_cmp.Items.Add("PSNR"); combo_cmp.Items.Add("BIT"); combo_cmp.Items.Add("RD"); combo_cmp.Items.Add("ZERO"); combo_cmp.Items.Add("VSAD"); combo_cmp.Items.Add("VSSE"); combo_cmp.Items.Add("NSSE"); //combo_cmp.Items.Add("W53"); //combo_cmp.Items.Add("W97"); //прогружаем матрицы квантизации combo_qmatrix.Items.Add("H263"); foreach (string matrix in PresetLoader.CustomMatrixes(MatrixTypes.TXT)) combo_qmatrix.Items.Add(matrix); //прогружаем fourcc combo_fourcc.Items.Add("MPEG"); combo_fourcc.Items.Add("MPG2"); //прогружаем векторы combo_mvectors.Items.Add("Disabled"); combo_mvectors.Items.Add("MV0"); combo_mvectors.Items.Add("MV4"); combo_mvectors.Items.Add("Unlimited"); //прогружаем mbd combo_mbd.Items.Add("Simple"); combo_mbd.Items.Add("Fewest bits"); combo_mbd.Items.Add("Rate distortion"); //B фреймы for (int n = 0; n <= 16; n++) combo_bframes.Items.Add(n); combo_bdecision.Items.Add("Disabled"); for (int n = 0; n <= 10; n++) combo_bdecision.Items.Add(n.ToString()); combo_brefine.Items.Add("Disabled"); for (int n = 0; n <= 4; n++) combo_brefine.Items.Add(n.ToString()); //пресеты настроек и качества foreach (string preset in Enum.GetNames(typeof(CodecPresets))) combo_codec_preset.Items.Add(preset); LoadFromProfile(); }
private void VideoEncodingSettings_Click(object sender, System.Windows.RoutedEventArgs e) { if (m != null && m.format == Format.ExportFormats.Audio) { Message mess = new Message(this); mess.ShowMessage(Languages.Translate("File doesn`t have video streams!"), Languages.Translate("Error")); } else if (!(m == null && Settings.FormatOut == Format.ExportFormats.Audio)) { VideoEncoding enc = new VideoEncoding(m, this); if (m != null) m = enc.m.Clone(); Format.ExportFormats format = enc.m.format; string vencoding = enc.m.vencoding; LoadVideoPresets(); //защита от удаления профиля if (!combo_vencoding.Items.Contains(vencoding)) vencoding = ChooseVideoPreset(format); combo_vencoding.SelectedItem = vencoding; Settings.SetVEncodingPreset(format, vencoding); if (m != null) { //проверка на размер //m.outfilesize = Calculate.GetEncodingSize(m); UpdateTaskMassive(m); ValidateTrimAndCopy(m); } } }
public XviD(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.num_bitrate.ValueChanged += new RoutedPropertyChangedEventHandler<decimal>(num_bitrate_ValueChanged); this.m = mass.Clone(); this.p = parent; this.root_window = VideoEncWindow; combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); //combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("3-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); combo_mode.Items.Add("3-Pass Size"); //Прописываем Motion Search Precision combo_quality.Items.Add("0 - Disabled"); combo_quality.Items.Add("1 - Very Low"); combo_quality.Items.Add("2 - Low"); combo_quality.Items.Add("3 - Medium"); combo_quality.Items.Add("4 - High"); combo_quality.Items.Add("5 - Very High"); combo_quality.Items.Add("6 - Ultra High"); combo_vhqmode.Items.Add("0 - Disabled"); combo_vhqmode.Items.Add("1 - Mode Decision"); combo_vhqmode.Items.Add("2 - Limited Search"); combo_vhqmode.Items.Add("3 - Medium Search"); combo_vhqmode.Items.Add("4 - Wide Search"); combo_metric.Items.Add("0 - PSNR"); combo_metric.Items.Add("1 - PSNR_HVSM"); //прогружаем матрицы квантизации combo_qmatrix.Items.Add("H263"); combo_qmatrix.Items.Add("MPEG"); foreach (string matrix in PresetLoader.CustomMatrixes(MatrixTypes.CQM)) combo_qmatrix.Items.Add(matrix); for (int i = 1; i < 32; i++) { combo_imin.Items.Add(i); combo_imax.Items.Add(i); combo_pmin.Items.Add(i); combo_pmax.Items.Add(i); combo_bmin.Items.Add(i); combo_bmax.Items.Add(i); } //прогружаем fourcc combo_fourcc.Items.Add("XVID"); combo_fourcc.Items.Add("FFDS"); combo_fourcc.Items.Add("FVFW"); combo_fourcc.Items.Add("DX50"); combo_fourcc.Items.Add("DIVX"); combo_fourcc.Items.Add("MP4V"); combo_masking.Items.Add("None"); combo_masking.Items.Add("Lumi"); combo_masking.Items.Add("Variance"); //B фреймы for (int n = 0; n <= 4; n++) combo_bframes.Items.Add(n); combo_threads.Items.Add("Auto"); for (int i = 1; i < 13; i++) combo_threads.Items.Add(i); //пресеты настроек и качества foreach (string preset in Enum.GetNames(typeof(CodecPresets))) combo_codec_preset.Items.Add(preset); text_mode.Content = Languages.Translate("Encoding mode") + ":"; Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); xvid_help.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; xvid_help.ToolTip = "Show xvid_encraw.exe -help screen"; LoadFromProfile(); }
public x265(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.root_window = VideoEncWindow; this.p = parent; //https://github.com/videolan/x265/blob/master/source/x265cli.h - ключи CLI //https://github.com/videolan/x265/blob/master/source/common/param.cpp - парсинг ключей, Presets, Tunes //Mode combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("Constant Quantizer"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("3-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); combo_mode.Items.Add("3-Pass Size"); //HEVC profile combo_hevc_profile.Items.Add("Auto"); combo_hevc_profile.Items.Add("Main"); combo_hevc_profile.Items.Add("Main 444"); combo_hevc_profile.Items.Add("Main 10b"); combo_hevc_profile.Items.Add("Main 422 10b"); combo_hevc_profile.Items.Add("Main 444 10b"); //HEVC level combo_level.Items.Add("Unrestricted"); combo_level.Items.Add("1.0"); combo_level.Items.Add("2.0"); combo_level.Items.Add("2.1"); combo_level.Items.Add("3.0"); combo_level.Items.Add("3.1"); combo_level.Items.Add("4.0"); combo_level.Items.Add("4.1"); combo_level.Items.Add("5.0"); combo_level.Items.Add("5.1"); combo_level.Items.Add("5.2"); combo_level.Items.Add("6.0"); combo_level.Items.Add("6.1"); combo_level.Items.Add("6.2"); //Tune psnr, ssim, grain, zero-latency, fast-decode combo_tune.Items.Add("None"); combo_tune.Items.Add("Grain"); combo_tune.Items.Add("PSNR"); combo_tune.Items.Add("SSIM"); combo_tune.Items.Add("Fast Decode"); //Adaptive Quantization for (double n = 0.0; n <= 3.1; n += 0.1) combo_adapt_quant.Items.Add(Calculate.ConvertDoubleToPointString(n, 1)); combo_adapt_quant_mode.Items.Add("None"); combo_adapt_quant_mode.Items.Add("VAQ"); combo_adapt_quant_mode.Items.Add("A-VAQ"); //прогружаем деблокинг for (int n = -6; n <= 6; n++) { combo_dstrength.Items.Add(n); combo_dthreshold.Items.Add(n); } //Прописываем subme combo_subme.Items.Add("0 - least"); combo_subme.Items.Add("1"); combo_subme.Items.Add("2"); combo_subme.Items.Add("3"); combo_subme.Items.Add("4"); combo_subme.Items.Add("5"); combo_subme.Items.Add("6"); combo_subme.Items.Add("7"); combo_subme.Items.Add("8"); combo_subme.Items.Add("9"); combo_subme.Items.Add("10"); combo_subme.Items.Add("11 - most"); //прописываем me алгоритм combo_me.Items.Add("Diamond"); combo_me.Items.Add("Hexagon"); combo_me.Items.Add("Multi Hexagon"); combo_me.Items.Add("Star"); combo_me.Items.Add("Full"); //прописываем me range for (int n = 4; n <= 512; n++) combo_merange.Items.Add(n); for (int i = 1; i < 6; i++) combo_max_merge.Items.Add(i); combo_rd.Items.Add("0 - least"); for (int i = 1; i < 6; i++) combo_rd.Items.Add(i); combo_rd.Items.Add("6 - full RDO"); combo_ctu.Items.Add(16); combo_ctu.Items.Add(32); combo_ctu.Items.Add(64); combo_max_tu.Items.Add(4); combo_max_tu.Items.Add(8); combo_max_tu.Items.Add(16); combo_max_tu.Items.Add(32); //B фреймы for (int n = 0; n <= 16; n++) combo_bframes.Items.Add(n); combo_bpyramid_mode.Items.Add("Disabled"); combo_bpyramid_mode.Items.Add("Enabled"); //refernce frames for (int n = 1; n <= 16; n++) combo_ref.Items.Add(n); combo_open_gop.Items.Add("No"); combo_open_gop.Items.Add("Yes"); //Кол-во потоков для x265-го combo_threads_count.Items.Add("Auto"); combo_threads_frames.Items.Add("Auto"); for (int n = 1; n <= 32; n++) { combo_threads_count.Items.Add(n); combo_threads_frames.Items.Add(n); } //-b-adapt combo_badapt_mode.Items.Add("None"); combo_badapt_mode.Items.Add("Fast"); combo_badapt_mode.Items.Add("Full"); combo_range_out.Items.Add("Auto"); combo_range_out.Items.Add("Limited"); combo_range_out.Items.Add("Full"); combo_colorprim.Items.Add("Undefined"); combo_colorprim.Items.Add("bt709"); combo_colorprim.Items.Add("bt470m"); combo_colorprim.Items.Add("bt470bg"); combo_colorprim.Items.Add("smpte170m"); combo_colorprim.Items.Add("smpte240m"); combo_colorprim.Items.Add("film"); combo_colorprim.Items.Add("bt2020"); combo_transfer.Items.Add("Undefined"); combo_transfer.Items.Add("bt709"); combo_transfer.Items.Add("bt470m"); combo_transfer.Items.Add("bt470bg"); combo_transfer.Items.Add("smpte170m"); combo_transfer.Items.Add("smpte240m"); combo_transfer.Items.Add("linear"); combo_transfer.Items.Add("log100"); combo_transfer.Items.Add("log316"); combo_transfer.Items.Add("iec61966-2-4"); combo_transfer.Items.Add("bt1361e"); combo_transfer.Items.Add("iec61966-2-1"); combo_transfer.Items.Add("bt2020-10"); combo_transfer.Items.Add("bt2020-12"); combo_colormatrix.Items.Add("Undefined"); combo_colormatrix.Items.Add("bt709"); combo_colormatrix.Items.Add("fcc"); combo_colormatrix.Items.Add("bt470bg"); combo_colormatrix.Items.Add("smpte170m"); combo_colormatrix.Items.Add("smpte240m"); combo_colormatrix.Items.Add("GBR"); combo_colormatrix.Items.Add("YCgCo"); combo_colormatrix.Items.Add("bt2020nc"); combo_colormatrix.Items.Add("bt2020c"); combo_hash.Items.Add("None"); combo_hash.Items.Add("MD5"); combo_hash.Items.Add("CRC"); combo_hash.Items.Add("Checksum"); text_mode.Content = Languages.Translate("Encoding mode") + ":"; Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); x265_help.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; x265_help.ToolTip = "Show x265.exe --fullhelp screen"; LoadFromProfile(); }
public x262(Massive mass, VideoEncoding VideoEncWindow, MainWindow parent) { this.InitializeComponent(); this.m = mass.Clone(); this.root_window = VideoEncWindow; this.p = parent; //Mode combo_mode.Items.Add("1-Pass Bitrate"); combo_mode.Items.Add("2-Pass Bitrate"); combo_mode.Items.Add("3-Pass Bitrate"); combo_mode.Items.Add("Constant Quality"); combo_mode.Items.Add("Constant Quantizer"); combo_mode.Items.Add("2-Pass Quality"); combo_mode.Items.Add("3-Pass Quality"); combo_mode.Items.Add("2-Pass Size"); combo_mode.Items.Add("3-Pass Size"); //Profile combo_mpg_profile.Items.Add(new ComboBoxItem { Content = "Auto" }); combo_mpg_profile.Items.Add("Simple Profile"); combo_mpg_profile.Items.Add("Main Profile"); combo_mpg_profile.Items.Add("High Profile"); //Level combo_level.Items.Add("Unrestricted"); combo_level.Items.Add("Low"); combo_level.Items.Add("Main"); combo_level.Items.Add("High"); combo_level.Items.Add("High-1440"); combo_level.Items.Add("HighP"); //Tune combo_tune.Items.Add("None"); combo_tune.Items.Add("Film"); combo_tune.Items.Add("Animation"); combo_tune.Items.Add("Grain"); combo_tune.Items.Add("Still Image"); combo_tune.Items.Add("PSNR"); combo_tune.Items.Add("SSIM"); combo_tune.Items.Add("Fast Decode"); //Adaptive Quantization for (double n = 0.1; n <= 2.1; n += 0.1) combo_adapt_quant.Items.Add(Calculate.ConvertDoubleToPointString(n, 1)); combo_adapt_quant_mode.Items.Add("None"); combo_adapt_quant_mode.Items.Add("VAQ"); combo_adapt_quant_mode.Items.Add("A-VAQ"); //Прописываем subme combo_subme.Items.Add("0 - Fullpel only"); combo_subme.Items.Add("1 - QPel SAD"); combo_subme.Items.Add("2 - QPel SATD"); combo_subme.Items.Add("3 - HPel on MB then QPel"); combo_subme.Items.Add("4 - Always QPel"); combo_subme.Items.Add("5 - QPel & Bidir ME"); combo_subme.Items.Add("6 - RD on I/P frames"); combo_subme.Items.Add("7 - RD on all frames"); combo_subme.Items.Add("8 - RD refinement on I/P frames"); combo_subme.Items.Add("9 - RD refinement on all frames"); //прописываем me алгоритм combo_me.Items.Add("Diamond"); combo_me.Items.Add("Hexagon"); combo_me.Items.Add("Multi Hexagon"); combo_me.Items.Add("Exhaustive"); combo_me.Items.Add("SATD Exhaustive"); //прописываем me range for (int n = 4; n <= 64; n++) combo_merange.Items.Add(n); //B фреймы for (int n = 0; n <= 16; n++) combo_bframes.Items.Add(n); //DC precision for (int n = 8; n <= 11; n++) combo_dc_precision.Items.Add(n); combo_open_gop.Items.Add("No"); combo_open_gop.Items.Add("Yes"); //Кол-во потоков для lookahead combo_lookahead_threads.Items.Add("Auto"); for (int n = 1; n <= 10; n++) combo_lookahead_threads.Items.Add(Convert.ToString(n)); //Кол-во потоков для x262-го combo_threads_count.Items.Add("Auto"); combo_threads_count.Items.Add("1"); combo_threads_count.Items.Add("1+1"); //+ --thread-input for (int n = 2; n <= 32; n++) combo_threads_count.Items.Add(Convert.ToString(n)); //-b-adapt combo_badapt_mode.Items.Add("Disabled"); combo_badapt_mode.Items.Add("Fast"); combo_badapt_mode.Items.Add("Optimal"); combo_range_in.Items.Add("Auto"); combo_range_in.Items.Add("TV"); combo_range_in.Items.Add("PC"); combo_range_out.Items.Add("Auto"); combo_range_out.Items.Add("TV"); combo_range_out.Items.Add("PC"); combo_colorprim.Items.Add("Undefined"); combo_colorprim.Items.Add("bt709"); combo_colorprim.Items.Add("bt470m"); combo_colorprim.Items.Add("bt470bg"); combo_colorprim.Items.Add("smpte170m"); combo_colorprim.Items.Add("smpte240m"); combo_colorprim.Items.Add("film"); combo_transfer.Items.Add("Undefined"); combo_transfer.Items.Add("bt709"); combo_transfer.Items.Add("bt470m"); combo_transfer.Items.Add("bt470bg"); combo_transfer.Items.Add("linear"); combo_transfer.Items.Add("log100"); combo_transfer.Items.Add("log316"); combo_transfer.Items.Add("smpte170m"); combo_transfer.Items.Add("smpte240m"); combo_colormatrix.Items.Add("Undefined"); combo_colormatrix.Items.Add("bt709"); combo_colormatrix.Items.Add("fcc"); combo_colormatrix.Items.Add("bt470bg"); combo_colormatrix.Items.Add("smpte170m"); combo_colormatrix.Items.Add("smpte240m"); combo_colormatrix.Items.Add("GBR"); combo_colormatrix.Items.Add("YCgCo"); combo_colorspace.Items.Add("I420"); combo_colorspace.Items.Add("I422"); text_mode.Content = Languages.Translate("Encoding mode") + ":"; Apply_CLI.Content = Languages.Translate("Apply"); Reset_CLI.Content = Languages.Translate("Reset"); x262_help.Content = Languages.Translate("Help"); Reset_CLI.ToolTip = "Reset to last good CLI"; x262_help.ToolTip = "Show x262.exe --fullhelp screen"; LoadFromProfile(); }