comparison src/xs_interface.c @ 904:5d26b869a48e dev-0_8_94

Add resampling configuration.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 09 Nov 2012 09:48:12 +0200
parents 911401ea2145
children 4e447ca18721
comparison
equal deleted inserted replaced
903:cd9f482f063f 904:5d26b869a48e
81 GtkWidget *cfg_emu_sp2_resid; 81 GtkWidget *cfg_emu_sp2_resid;
82 GtkWidget *cfg_emu_sp2_hardsid; 82 GtkWidget *cfg_emu_sp2_hardsid;
83 GtkWidget *cfg_resid_frame; 83 GtkWidget *cfg_resid_frame;
84 GtkWidget *w_vbox37; 84 GtkWidget *w_vbox37;
85 GSList *samplingtype_group = NULL; 85 GSList *samplingtype_group = NULL;
86 GtkWidget *cfg_emu_resid_fast; 86 GtkWidget *cfg_emu_resid_interpolate;
87 GtkWidget *cfg_emu_resid_int; 87 GtkWidget *cfg_emu_resid_resample_fir;
88 GtkWidget *cfg_emu_resid_res_fast;
89 GtkWidget *cfg_emu_resid_res_int;
90 GtkWidget *cfg_rom_frame; 88 GtkWidget *cfg_rom_frame;
91 GtkWidget *w_rom_hbox; 89 GtkWidget *w_rom_hbox;
92 GtkWidget *cfg_rom_label1; 90 GtkWidget *cfg_rom_label1;
93 GtkWidget *cfg_rom_path; 91 GtkWidget *cfg_emu_rom_path;
94 GtkWidget *cfg_rom_browse; 92 GtkWidget *cfg_rom_browse;
95 GtkWidget *w_label48; 93 GtkWidget *w_label48;
96 GtkWidget *w_vbox25; 94 GtkWidget *w_vbox25;
97 GtkWidget *cfg_emu_filters; 95 GtkWidget *cfg_emu_filters;
98 GtkWidget *cfg_filters_notebook; 96 GtkWidget *cfg_filters_notebook;
677 (GtkDestroyNotify) gtk_widget_unref); 675 (GtkDestroyNotify) gtk_widget_unref);
678 gtk_widget_show (w_vbox37); 676 gtk_widget_show (w_vbox37);
679 gtk_container_add (GTK_CONTAINER (cfg_resid_frame), w_vbox37); 677 gtk_container_add (GTK_CONTAINER (cfg_resid_frame), w_vbox37);
680 gtk_container_set_border_width (GTK_CONTAINER (w_vbox37), 2); 678 gtk_container_set_border_width (GTK_CONTAINER (w_vbox37), 2);
681 679
682 cfg_emu_resid_fast = gtk_radio_button_new_with_label (samplingtype_group, _("Fast (nearest neighbour)")); 680 cfg_emu_resid_interpolate = gtk_radio_button_new_with_label (samplingtype_group, _("Linear interpolation"));
683 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_fast)); 681 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_interpolate));
684 gtk_widget_set_name (cfg_emu_resid_fast, "cfg_emu_resid_fast"); 682 gtk_widget_set_name (cfg_emu_resid_interpolate, "cfg_emu_resid_interpolate");
685 gtk_widget_ref (cfg_emu_resid_fast); 683 gtk_widget_ref (cfg_emu_resid_interpolate);
686 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_fast", cfg_emu_resid_fast, 684 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_interpolate", cfg_emu_resid_interpolate,
687 (GtkDestroyNotify) gtk_widget_unref); 685 (GtkDestroyNotify) gtk_widget_unref);
688 gtk_widget_show (cfg_emu_resid_fast); 686 gtk_widget_show (cfg_emu_resid_interpolate);
689 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_fast, FALSE, FALSE, 0); 687 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_interpolate, FALSE, FALSE, 0);
690 gtk_tooltips_set_tip (tooltips, cfg_emu_resid_fast, _("Fastest and also worst sounding sampling method, simply picks nearest neighbouring sample."), NULL); 688 gtk_tooltips_set_tip (tooltips, cfg_emu_resid_interpolate, _("Uses linear interpolation between samples, yielding higher audio quality with less sampling noise."), NULL);
691 689
692 cfg_emu_resid_int = gtk_radio_button_new_with_label (samplingtype_group, _("Linear interpolation")); 690 cfg_emu_resid_resample_fir = gtk_radio_button_new_with_label (samplingtype_group, _("Resampling (FIR)"));
693 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_int)); 691 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_resample_fir));
694 gtk_widget_set_name (cfg_emu_resid_int, "cfg_emu_resid_int"); 692 gtk_widget_set_name (cfg_emu_resid_resample_fir, "cfg_emu_resid_resample_fir");
695 gtk_widget_ref (cfg_emu_resid_int); 693 gtk_widget_ref (cfg_emu_resid_resample_fir);
696 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_int", cfg_emu_resid_int, 694 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_resample_fir", cfg_emu_resid_resample_fir,
697 (GtkDestroyNotify) gtk_widget_unref); 695 (GtkDestroyNotify) gtk_widget_unref);
698 gtk_widget_show (cfg_emu_resid_int); 696 gtk_widget_show (cfg_emu_resid_resample_fir);
699 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_int, FALSE, FALSE, 0); 697 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_resample_fir, FALSE, FALSE, 0);
700 gtk_tooltips_set_tip (tooltips, cfg_emu_resid_int, _("Uses linear interpolation between samples, yielding higher audio quality with less sampling noise."), NULL); 698 gtk_tooltips_set_tip (tooltips, cfg_emu_resid_resample_fir, _("High quality resampling with a FIR filter. CPU intensive."), NULL);
701
702 cfg_emu_resid_res_fast = gtk_radio_button_new_with_label (samplingtype_group, _("Resampling"));
703 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_res_fast));
704 gtk_widget_set_name (cfg_emu_resid_res_fast, "cfg_emu_resid_res_fast");
705 gtk_widget_ref (cfg_emu_resid_res_fast);
706 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_res_fast", cfg_emu_resid_res_fast,
707 (GtkDestroyNotify) gtk_widget_unref);
708 gtk_widget_show (cfg_emu_resid_res_fast);
709 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_res_fast, FALSE, FALSE, 0);
710
711 cfg_emu_resid_res_int = gtk_radio_button_new_with_label (samplingtype_group, _("Resampling (FIR)"));
712 samplingtype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_resid_res_int));
713 gtk_widget_set_name (cfg_emu_resid_res_int, "cfg_emu_resid_res_int");
714 gtk_widget_ref (cfg_emu_resid_res_int);
715 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_resid_res_int", cfg_emu_resid_res_int,
716 (GtkDestroyNotify) gtk_widget_unref);
717 gtk_widget_show (cfg_emu_resid_res_int);
718 gtk_box_pack_start (GTK_BOX (w_vbox37), cfg_emu_resid_res_int, FALSE, FALSE, 0);
719 699
720 cfg_rom_frame = gtk_frame_new (_("C64 Kernal/Basic/Chargen ROMs:")); 700 cfg_rom_frame = gtk_frame_new (_("C64 Kernal/Basic/Chargen ROMs:"));
721 gtk_widget_set_name (cfg_rom_frame, "cfg_rom_frame"); 701 gtk_widget_set_name (cfg_rom_frame, "cfg_rom_frame");
722 gtk_widget_ref (cfg_rom_frame); 702 gtk_widget_ref (cfg_rom_frame);
723 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_frame", cfg_rom_frame, 703 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_frame", cfg_rom_frame,
741 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_label1", cfg_rom_label1, 721 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_label1", cfg_rom_label1,
742 (GtkDestroyNotify) gtk_widget_unref); 722 (GtkDestroyNotify) gtk_widget_unref);
743 gtk_widget_show (cfg_rom_label1); 723 gtk_widget_show (cfg_rom_label1);
744 gtk_box_pack_start (GTK_BOX (w_rom_hbox), cfg_rom_label1, FALSE, FALSE, 0); 724 gtk_box_pack_start (GTK_BOX (w_rom_hbox), cfg_rom_label1, FALSE, FALSE, 0);
745 725
746 cfg_rom_path = gtk_entry_new (); 726 cfg_emu_rom_path = gtk_entry_new ();
747 gtk_widget_set_name (cfg_rom_path, "cfg_rom_path"); 727 gtk_widget_set_name (cfg_emu_rom_path, "cfg_emu_rom_path");
748 gtk_widget_ref (cfg_rom_path); 728 gtk_widget_ref (cfg_emu_rom_path);
749 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_path", cfg_rom_path, 729 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_rom_path", cfg_emu_rom_path,
750 (GtkDestroyNotify) gtk_widget_unref); 730 (GtkDestroyNotify) gtk_widget_unref);
751 gtk_widget_show (cfg_rom_path); 731 gtk_widget_show (cfg_emu_rom_path);
752 gtk_box_pack_start (GTK_BOX (w_rom_hbox), cfg_rom_path, TRUE, TRUE, 0); 732 gtk_box_pack_start (GTK_BOX (w_rom_hbox), cfg_emu_rom_path, TRUE, TRUE, 0);
753 733
754 cfg_rom_browse = gtk_button_new_with_label (_("Browse")); 734 cfg_rom_browse = gtk_button_new_with_label (_("Browse"));
755 gtk_widget_set_name (cfg_rom_browse, "cfg_rom_browse"); 735 gtk_widget_set_name (cfg_rom_browse, "cfg_rom_browse");
756 gtk_widget_ref (cfg_rom_browse); 736 gtk_widget_ref (cfg_rom_browse);
757 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_browse", cfg_rom_browse, 737 gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_rom_browse", cfg_rom_browse,