diff options
Diffstat (limited to 'src/wx')
| -rw-r--r-- | src/wx/dcp_panel.cc | 27 | ||||
| -rw-r--r-- | src/wx/dcp_panel.h | 2 | ||||
| -rw-r--r-- | src/wx/full_config_dialog.cc | 13 |
3 files changed, 35 insertions, 7 deletions
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc index a7f4f45e9..c4a14a58b 100644 --- a/src/wx/dcp_panel.cc +++ b/src/wx/dcp_panel.cc @@ -783,6 +783,12 @@ DCPPanel::config_changed (Config::Property p) _audio_grid->Clear (); add_audio_panel_to_grid (); _audio_grid->Layout (); + } else if (p == Config::SHOW_EXPERIMENTAL_AUDIO_PROCESSORS) { + _audio_processor->Clear (); + add_audio_processors (); + if (_film) { + film_changed (Film::AUDIO_PROCESSOR); + } } } @@ -931,10 +937,10 @@ wxPanel * DCPPanel::make_audio_panel () { wxPanel* panel = new wxPanel (_notebook); - wxSizer* sizer = new wxBoxSizer (wxVERTICAL); + _audio_panel_sizer = new wxBoxSizer (wxVERTICAL); _audio_grid = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP); - sizer->Add (_audio_grid, 0, wxALL, 8); - panel->SetSizer (sizer); + _audio_panel_sizer->Add (_audio_grid, 0, wxALL, 8); + panel->SetSizer (_audio_panel_sizer); _channels_label = create_label (panel, _("Channels"), true); _audio_channels = new wxChoice (panel, wxID_ANY); @@ -942,10 +948,7 @@ DCPPanel::make_audio_panel () _processor_label = create_label (panel, _("Processor"), true); _audio_processor = new wxChoice (panel, wxID_ANY); - _audio_processor->Append (_("None"), new wxStringClientData (N_("none"))); - BOOST_FOREACH (AudioProcessor const * ap, AudioProcessor::all ()) { - _audio_processor->Append (std_to_wx (ap->name ()), new wxStringClientData (std_to_wx (ap->id ()))); - } + add_audio_processors (); _show_audio = new Button (panel, _("Show audio...")); @@ -1040,3 +1043,13 @@ DCPPanel::reel_length_changed () _film->set_reel_length (_reel_length->GetValue() * 1000000000LL); } + +void +DCPPanel::add_audio_processors () +{ + _audio_processor->Append (_("None"), new wxStringClientData (N_("none"))); + BOOST_FOREACH (AudioProcessor const * ap, AudioProcessor::visible()) { + _audio_processor->Append (std_to_wx(ap->name()), new wxStringClientData(std_to_wx(ap->id()))); + } + _audio_panel_sizer->Layout(); +} diff --git a/src/wx/dcp_panel.h b/src/wx/dcp_panel.h index f717e8327..887ae7c77 100644 --- a/src/wx/dcp_panel.h +++ b/src/wx/dcp_panel.h @@ -90,6 +90,7 @@ private: void add_to_grid (); void add_video_panel_to_grid (); void add_audio_panel_to_grid (); + void add_audio_processors (); int minimum_allowed_audio_channels () const; @@ -151,6 +152,7 @@ private: wxCheckBox* _upload_after_make_dcp; wxButton* _markers; wxButton* _metadata; + wxSizer* _audio_panel_sizer; AudioDialog* _audio_dialog; MarkersDialog* _markers_dialog; diff --git a/src/wx/full_config_dialog.cc b/src/wx/full_config_dialog.cc index ffe7b4749..f6dd783bd 100644 --- a/src/wx/full_config_dialog.cc +++ b/src/wx/full_config_dialog.cc @@ -1368,6 +1368,7 @@ public: , _maximum_j2k_bandwidth (0) , _allow_any_dcp_frame_rate (0) , _allow_any_container (0) + , _show_experimental_audio_processors (0) , _only_servers_encode (0) , _log_general (0) , _log_warning (0) @@ -1428,6 +1429,10 @@ private: restart->SetFont (font); table->AddSpacer (0); + _show_experimental_audio_processors = new CheckBox (_panel, _("Show experimental audio processors")); + table->Add (_show_experimental_audio_processors, 1, wxEXPAND | wxALL); + table->AddSpacer (0); + _only_servers_encode = new CheckBox (_panel, _("Only servers encode")); table->Add (_only_servers_encode, 1, wxEXPAND | wxALL); table->AddSpacer (0); @@ -1504,6 +1509,7 @@ private: _video_display_mode->Bind (wxEVT_CHOICE, boost::bind(&AdvancedPage::video_display_mode_changed, this)); _allow_any_dcp_frame_rate->Bind (wxEVT_CHECKBOX, boost::bind (&AdvancedPage::allow_any_dcp_frame_rate_changed, this)); _allow_any_container->Bind (wxEVT_CHECKBOX, boost::bind (&AdvancedPage::allow_any_container_changed, this)); + _show_experimental_audio_processors->Bind (wxEVT_CHECKBOX, boost::bind (&AdvancedPage::show_experimental_audio_processors_changed, this)); _only_servers_encode->Bind (wxEVT_CHECKBOX, boost::bind (&AdvancedPage::only_servers_encode_changed, this)); _frames_in_memory_multiplier->Bind (wxEVT_SPINCTRL, boost::bind(&AdvancedPage::frames_in_memory_multiplier_changed, this)); _dcp_metadata_filename_format->Changed.connect (boost::bind (&AdvancedPage::dcp_metadata_filename_format_changed, this)); @@ -1535,6 +1541,7 @@ private: } checked_set (_allow_any_dcp_frame_rate, config->allow_any_dcp_frame_rate ()); checked_set (_allow_any_container, config->allow_any_container ()); + checked_set (_show_experimental_audio_processors, config->show_experimental_audio_processors ()); checked_set (_only_servers_encode, config->only_servers_encode ()); checked_set (_log_general, config->log_types() & LogEntry::TYPE_GENERAL); checked_set (_log_warning, config->log_types() & LogEntry::TYPE_WARNING); @@ -1578,6 +1585,11 @@ private: Config::instance()->set_allow_any_container (_allow_any_container->GetValue ()); } + void show_experimental_audio_processors_changed () + { + Config::instance()->set_show_experimental_audio_processors (_show_experimental_audio_processors->GetValue ()); + } + void only_servers_encode_changed () { Config::instance()->set_only_servers_encode (_only_servers_encode->GetValue ()); @@ -1632,6 +1644,7 @@ private: wxSpinCtrl* _frames_in_memory_multiplier; wxCheckBox* _allow_any_dcp_frame_rate; wxCheckBox* _allow_any_container; + wxCheckBox* _show_experimental_audio_processors; wxCheckBox* _only_servers_encode; NameFormatEditor* _dcp_metadata_filename_format; NameFormatEditor* _dcp_asset_filename_format; |
