summaryrefslogtreecommitdiff
path: root/libs/ardour/export_handler.cc
diff options
context:
space:
mode:
authorColin Fletcher <colin.m.fletcher@googlemail.com>2014-01-08 15:14:35 +0000
committerColin Fletcher <colin.m.fletcher@googlemail.com>2014-01-08 15:50:34 +0000
commit52003be3695ab703b936163d7284e208790d5363 (patch)
tree6804ad19b3ca6afb9edf84ae63307467ad5da384 /libs/ardour/export_handler.cc
parentcac644270a8626904a4a21f527cdcf5083defa60 (diff)
parent382eb0fc6842f202901245709534477b90bda461 (diff)
Merge remote-tracking branch 'origin/master' into export-dialog
Fix conflicts in: gtk2_ardour/export_dialog.cc gtk2_ardour/export_dialog.h libs/ardour/export_handler.cc
Diffstat (limited to 'libs/ardour/export_handler.cc')
-rw-r--r--libs/ardour/export_handler.cc32
1 files changed, 19 insertions, 13 deletions
diff --git a/libs/ardour/export_handler.cc b/libs/ardour/export_handler.cc
index f2fb895b91..01f5c989d3 100644
--- a/libs/ardour/export_handler.cc
+++ b/libs/ardour/export_handler.cc
@@ -25,6 +25,7 @@
#include "pbd/convert.h"
+#include "ardour/audiofile_tagger.h"
#include "ardour/export_graph_builder.h"
#include "ardour/export_timespan.h"
#include "ardour/export_channel_configuration.h"
@@ -35,6 +36,7 @@
#include "pbd/openuri.h"
#include "pbd/basename.h"
#include "pbd/system_exec.h"
+#include "ardour/session_metadata.h"
#include "i18n.h"
@@ -291,23 +293,27 @@ ExportHandler::finish_timespan ()
while (config_map.begin() != timespan_bounds.second) {
ExportFormatSpecPtr fmt = config_map.begin()->second.format;
- std::string filepath = config_map.begin()->second.filename->get_path(fmt);
+ std::string filename = config_map.begin()->second.filename->get_path(fmt);
if (fmt->with_cue()) {
- export_cd_marker_file (current_timespan, fmt, filepath, CDMarkerCUE);
- }
+ export_cd_marker_file (current_timespan, fmt, filename, CDMarkerCUE);
+ }
if (fmt->with_toc()) {
- export_cd_marker_file (current_timespan, fmt, filepath, CDMarkerTOC);
+ export_cd_marker_file (current_timespan, fmt, filename, CDMarkerTOC);
+ }
+
+ if (fmt->tag()) {
+ AudiofileTagger::tag_file(filename, *SessionMetadata::Metadata());
}
if (!fmt->command().empty()) {
#if 0 // would be nicer with C++11 initialiser...
std::map<char, std::string> subs {
- { 'f', filepath },
- { 'd', Glib::path_get_dirname(filepath) },
- { 'b', PBD::basename_nosuffix(filepath) },
+ { 'f', filename },
+ { 'd', Glib::path_get_dirname(filename) },
+ { 'b', PBD::basename_nosuffix(filename) },
{ 'u', upload_username },
{ 'p', upload_password}
};
@@ -315,9 +321,9 @@ ExportHandler::finish_timespan ()
PBD::ScopedConnection command_connection;
std::map<char, std::string> subs;
- subs.insert (std::pair<char, std::string> ('f', filepath));
- subs.insert (std::pair<char, std::string> ('d', Glib::path_get_dirname(filepath)));
- subs.insert (std::pair<char, std::string> ('b', PBD::basename_nosuffix(filepath)));
+ subs.insert (std::pair<char, std::string> ('f', filename));
+ subs.insert (std::pair<char, std::string> ('d', Glib::path_get_dirname(filename)));
+ subs.insert (std::pair<char, std::string> ('b', PBD::basename_nosuffix(filename)));
subs.insert (std::pair<char, std::string> ('u', upload_username));
subs.insert (std::pair<char, std::string> ('p', upload_password));
@@ -343,14 +349,14 @@ ExportHandler::finish_timespan ()
std::string token = soundcloud_uploader->Get_Auth_Token(upload_username, upload_password);
std::cerr
<< "uploading "
- << filepath << std::endl
+ << filename << std::endl
<< "username = " << upload_username
<< ", password = " << upload_password
<< " - token = " << token << " ..."
<< std::endl;
std::string path = soundcloud_uploader->Upload (
- filepath,
- PBD::basename_nosuffix(filepath), // title
+ filename,
+ PBD::basename_nosuffix(filename), // title
token,
upload_public,
this);