📄 x264_gtk_more.c
字号:
gtk_table_attach_defaults (GTK_TABLE (table), eb, 2, 3, 0, 1); gtk_widget_show (eb); label = gtk_label_new (_("Threads")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); adj = gtk_adjustment_new (1.0, 1.0, 4.0, 1.0, 1.0, 1.0); config->more.misc.threads = gtk_spin_button_new (GTK_ADJUSTMENT (adj), 1.0, 0); gtk_widget_set_size_request (config->more.misc.threads, size5.width, size.height); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.threads, 3, 4, 0, 1); gtk_widget_show (config->more.misc.threads); config->more.misc.cabac = gtk_check_button_new_with_label (_("CABAC")); gtk_widget_set_size_request (config->more.misc.cabac, size5.width, size.height); gtk_tooltips_set_tip (tooltips, config->more.misc.cabac, _("CABAC - description"), ""); g_signal_connect (G_OBJECT (config->more.misc.cabac), "toggled", G_CALLBACK (_more_cabac), config); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.cabac, 0, 1, 1, 2); gtk_widget_show (config->more.misc.cabac); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("Trellis - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 1, 2, 1, 2); gtk_widget_show (eb); label = gtk_label_new (_("Trellis")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.misc.trellis = gtk_combo_box_new_text (); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.misc.trellis), _("Disabled")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.misc.trellis), _("Enabled (once)")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.misc.trellis), _("Enabled (mode decision)")); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.trellis, 2, 4, 1, 2); gtk_widget_show (config->more.misc.trellis); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("Noise reduction - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 0, 1, 2, 3); gtk_widget_show (eb); label = gtk_label_new (_("Noise reduction")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.misc.noise_reduction = gtk_entry_new_with_max_length (3); gtk_widget_set_size_request (config->more.misc.noise_reduction, size5.width, size.height); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.noise_reduction, 1, 2, 2, 3); gtk_widget_show (config->more.misc.noise_reduction); config->more.misc.df.deblocking_filter = gtk_check_button_new_with_label (_("Deblocking Filter")); gtk_tooltips_set_tip (tooltips, config->more.misc.df.deblocking_filter, _("Deblocking Filter - description"), ""); g_signal_connect (G_OBJECT (config->more.misc.df.deblocking_filter), "toggled", G_CALLBACK (_more_deblocking_filter), config); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.df.deblocking_filter, 0, 1, 3, 4); gtk_widget_show (config->more.misc.df.deblocking_filter); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("Strength - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 1, 2, 3, 4); gtk_widget_show (eb); label = gtk_label_new (_("Strength")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_widget_set_size_request (label, size5.width, size4.height); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.misc.df.strength = gtk_hscale_new_with_range (-6.0, 6.0, 1.0); gtk_widget_size_request (config->more.misc.df.strength, &size4); gtk_scale_set_digits (GTK_SCALE (config->more.misc.df.strength), 0); gtk_scale_set_value_pos (GTK_SCALE (config->more.misc.df.strength), GTK_POS_RIGHT); // gtk_widget_set_size_request (config->more.misc.df.strength, size5.width, size4.height); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.df.strength, 2, 4, 3, 4); gtk_widget_show (config->more.misc.df.strength); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("Threshold - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 1, 2, 4, 5); gtk_widget_show (eb); label = gtk_label_new (_("Threshold")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_widget_set_size_request (label, size5.width, size4.height); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.misc.df.threshold = gtk_hscale_new_with_range (-6.0, 6.0, 1.0); gtk_scale_set_digits (GTK_SCALE (config->more.misc.df.threshold), 0); gtk_scale_set_value_pos (GTK_SCALE (config->more.misc.df.threshold), GTK_POS_RIGHT); gtk_table_attach_defaults (GTK_TABLE (table), config->more.misc.df.threshold, 2, 4, 4, 5); gtk_widget_show (config->more.misc.df.threshold); /* Debug */ frame = gtk_frame_new (_("Debug")); gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, TRUE, 6); gtk_widget_show (frame); table = gtk_table_new (2, 2, TRUE); gtk_table_set_row_spacings (GTK_TABLE (table), 6); gtk_container_set_border_width (GTK_CONTAINER (table), 6); gtk_container_add (GTK_CONTAINER (frame), table); gtk_widget_show (table); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("Log level - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 0, 1, 0, 1); gtk_widget_show (eb); label = gtk_label_new (_("Log level")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.debug.log_level = gtk_combo_box_new_text (); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.debug.log_level), _("None")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.debug.log_level), _("Error")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.debug.log_level), _("Warning")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.debug.log_level), _("Info")); gtk_combo_box_append_text (GTK_COMBO_BOX (config->more.debug.log_level), _("Debug")); gtk_table_attach_defaults (GTK_TABLE (table), config->more.debug.log_level, 1, 2, 0, 1); gtk_widget_show (config->more.debug.log_level); eb = gtk_event_box_new (); gtk_event_box_set_visible_window (GTK_EVENT_BOX (eb), FALSE); gtk_tooltips_set_tip (tooltips, eb, _("FourCC - description"), ""); gtk_table_attach_defaults (GTK_TABLE (table), eb, 0, 1, 1, 2); gtk_widget_show (eb); label = gtk_label_new ("FourCC"); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_container_add (GTK_CONTAINER (eb), label); gtk_widget_show (label); config->more.debug.fourcc = gtk_entry_new_with_max_length (4); gtk_table_attach_defaults (GTK_TABLE (table), config->more.debug.fourcc, 1, 2, 1, 2); gtk_widget_set_sensitive (config->more.debug.fourcc, FALSE); gtk_widget_show (config->more.debug.fourcc); return vbox;}/* Callbacks */static void_more_deblocking_filter (GtkToggleButton *button, gpointer user_data){ X264_Gui_Config *config; config = (X264_Gui_Config *)user_data; if (gtk_toggle_button_get_active (button)) { gtk_widget_set_sensitive (config->more.misc.df.strength, TRUE); gtk_widget_set_sensitive (config->more.misc.df.threshold, TRUE); } else { gtk_widget_set_sensitive (config->more.misc.df.strength, FALSE); gtk_widget_set_sensitive (config->more.misc.df.threshold, FALSE); }}static void_more_cabac (GtkToggleButton *button, gpointer user_data){ X264_Gui_Config *config; config = (X264_Gui_Config *)user_data; if (gtk_toggle_button_get_active (button)) gtk_widget_set_sensitive (config->more.misc.trellis, TRUE); else gtk_widget_set_sensitive (config->more.misc.trellis, FALSE);}static void_more_mixed_ref (GtkToggleButton *button, gpointer user_data){ X264_Gui_Config *config; config = (X264_Gui_Config *)user_data; if (gtk_toggle_button_get_active (button)) { const gchar *text; gint val; text = gtk_entry_get_text (GTK_ENTRY (config->more.motion_estimation.max_ref_frames)); val = (gint)g_ascii_strtoull (text, NULL, 10); if (val < 2) gtk_entry_set_text (GTK_ENTRY (config->more.motion_estimation.max_ref_frames), "2"); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -