diff options
author | Robin Gareus <robin@gareus.org> | 2018-11-19 05:21:17 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2018-11-19 05:21:17 +0100 |
commit | df72e1ba4f7e7dc0d67ea6c0fbdf157ee3777275 (patch) | |
tree | 035abd922b71e595eca6e466bc65a68578603b9b /libs/ardour/export_formats.cc | |
parent | e4cbd5115e34ff99aa8c85b70870e6ca00ea14d6 (diff) |
Initial backend support for external export encoder
This adds an experimental pipe to ffmpeg to encode mp3. Currently
quality is hardcoded and various aspects remain to be implemented.
However, it is sufficient for initial testing.
Diffstat (limited to 'libs/ardour/export_formats.cc')
-rw-r--r-- | libs/ardour/export_formats.cc | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libs/ardour/export_formats.cc b/libs/ardour/export_formats.cc index 7fa30c6b51..0ab02046c3 100644 --- a/libs/ardour/export_formats.cc +++ b/libs/ardour/export_formats.cc @@ -365,4 +365,37 @@ ExportFormatBWF::set_compatibility_state (ExportFormatCompatibility const & comp return compatible; } + +/*** FFMPEG Pipe ***/ + +ExportFormatFFMPEG::ExportFormatFFMPEG (std::string const& name, std::string const& ext) +{ + set_name (name); + set_format_id (F_FFMPEG); + sample_formats.insert (SF_Float); + + add_sample_rate (SR_22_05); + add_sample_rate (SR_44_1); + add_sample_rate (SR_48); + add_sample_rate (SR_88_2); + add_sample_rate (SR_96); + add_sample_rate (SR_176_4); + add_sample_rate (SR_192); + add_sample_rate (SR_Session); + + add_endianness (E_Little); + + set_extension (ext); + set_quality (Q_LossyCompression); +} + +bool +ExportFormatFFMPEG::set_compatibility_state (ExportFormatCompatibility const & compatibility) +{ + bool compatible = compatibility.has_format (F_FFMPEG); + set_compatible (compatible); + return compatible; +} + + }; // namespace ARDOUR |