summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Blechmann <tim@klingt.org>2013-08-24 14:23:25 +0200
committerRobin Gareus <robin@gareus.org>2013-08-24 14:23:25 +0200
commita5de2c10679cc920a7409d02e32e6dd67778ea75 (patch)
tree4a2eb242d1232bfc673ea82abcedfc42825a4c34
parent9041d7bc18e97e41da4df84a350c63290825cf44 (diff)
export: add support for CAF
-rw-r--r--libs/ardour/ardour/export_format_base.h1
-rw-r--r--libs/ardour/enums.cc1
-rw-r--r--libs/ardour/export_format_manager.cc11
3 files changed, 13 insertions, 0 deletions
diff --git a/libs/ardour/ardour/export_format_base.h b/libs/ardour/ardour/export_format_base.h
index a96d1148fc..a21c977833 100644
--- a/libs/ardour/ardour/export_format_base.h
+++ b/libs/ardour/ardour/export_format_base.h
@@ -49,6 +49,7 @@ class ExportFormatBase {
F_None = 0,
F_WAV = SF_FORMAT_WAV,
F_W64 = SF_FORMAT_W64,
+ F_CAF = SF_FORMAT_CAF,
F_AIFF = SF_FORMAT_AIFF,
F_AU = SF_FORMAT_AU,
F_IRCAM = SF_FORMAT_IRCAM,
diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc
index ab181d2956..bab0e8ed15 100644
--- a/libs/ardour/enums.cc
+++ b/libs/ardour/enums.cc
@@ -509,6 +509,7 @@ setup_enum_writer ()
REGISTER_CLASS_ENUM (ExportFormatBase, F_RAW);
REGISTER_CLASS_ENUM (ExportFormatBase, F_FLAC);
REGISTER_CLASS_ENUM (ExportFormatBase, F_Ogg);
+ REGISTER_CLASS_ENUM (ExportFormatBase, F_CAF);
REGISTER (_ExportFormatBase_FormatId);
REGISTER_CLASS_ENUM (ExportFormatBase, E_FileDefault);
diff --git a/libs/ardour/export_format_manager.cc b/libs/ardour/export_format_manager.cc
index 08238ff710..890623c114 100644
--- a/libs/ardour/export_format_manager.cc
+++ b/libs/ardour/export_format_manager.cc
@@ -178,6 +178,17 @@ ExportFormatManager::init_formats ()
fl_ptr->set_extension ("w64");
add_format (f_ptr);
+ f_ptr.reset (fl_ptr = new ExportFormatLinear ("CAF", ExportFormatBase::F_CAF));
+ fl_ptr->add_sample_format (ExportFormatBase::SF_U8);
+ fl_ptr->add_sample_format (ExportFormatBase::SF_16);
+ fl_ptr->add_sample_format (ExportFormatBase::SF_24);
+ fl_ptr->add_sample_format (ExportFormatBase::SF_32);
+ fl_ptr->add_sample_format (ExportFormatBase::SF_Float);
+ fl_ptr->add_sample_format (ExportFormatBase::SF_Double);
+ fl_ptr->set_default_sample_format (ExportFormatBase::SF_Float);
+ fl_ptr->set_extension ("caf");
+ add_format (f_ptr);
+
f_ptr.reset (fl_ptr = new ExportFormatLinear ("RAW", ExportFormatBase::F_RAW));
fl_ptr->add_sample_format (ExportFormatBase::SF_U8);
fl_ptr->add_sample_format (ExportFormatBase::SF_8);