diff --git a/libs/ardour/ardour/export_status.h b/libs/ardour/ardour/export_status.h index 6a5be177e4..6c6396dc5f 100644 --- a/libs/ardour/ardour/export_status.h +++ b/libs/ardour/ardour/export_status.h @@ -53,7 +53,13 @@ class LIBARDOUR_API ExportStatus { /* Progress info */ - volatile bool normalizing; + volatile enum Progress { + Exporting, + Normalizing, + Tagging, + Uploading, + Command } + active_job; volatile uint32_t total_timespans; volatile uint32_t timespan; diff --git a/libs/ardour/export_handler.cc b/libs/ardour/export_handler.cc index f53f270918..71f79b793c 100644 --- a/libs/ardour/export_handler.cc +++ b/libs/ardour/export_handler.cc @@ -272,9 +272,9 @@ ExportHandler::process_normalize () { if (graph_builder->process_normalize ()) { finish_timespan (); - export_status->normalizing = false; + export_status->active_job = ExportStatus::Exporting; } else { - export_status->normalizing = true; + export_status->active_job = ExportStatus::Normalizing; } export_status->current_normalize_cycle++; @@ -316,6 +316,7 @@ ExportHandler::finish_timespan () * TODO: check Umlauts and encoding in filename. * TagLib eventually calls CreateFileA(), */ + export_status->active_job = ExportStatus::Tagging; graph_builder->reset (); AudiofileTagger::tag_file(filename, *SessionMetadata::Metadata()); } @@ -330,7 +331,7 @@ ExportHandler::finish_timespan () ... }; #endif - + export_status->active_job = ExportStatus::Command; PBD::ScopedConnection command_connection; std::map subs; subs.insert (std::pair ('f', filename)); diff --git a/libs/ardour/export_status.cc b/libs/ardour/export_status.cc index 0f7938bb7f..66f02c59c3 100644 --- a/libs/ardour/export_status.cc +++ b/libs/ardour/export_status.cc @@ -39,7 +39,7 @@ ExportStatus::init () _finished = false; _errors = false; - normalizing = false; + active_job = Exporting; total_timespans = 0; timespan = 0;