diff options
author | Vegard Storheil Eriksen <zyp@jvnv.net> | 2011-01-06 05:29:39 +0100 |
---|---|---|
committer | Vegard Storheil Eriksen <zyp@jvnv.net> | 2011-01-06 05:29:47 +0100 |
commit | 6f2fefdd9ff5f8561b3538efb5eb0765a9b4a141 (patch) | |
tree | de37cd2d500a777344b611321ac45bce66ad5c26 /encoder.cpp | |
parent | ffd8b5976af7e80425c7cf043528212528877b16 (diff) |
Replaced iostream-based decoder-encoder chain with direct chain.
Diffstat (limited to 'encoder.cpp')
-rw-r--r-- | encoder.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/encoder.cpp b/encoder.cpp index 0f2a5fe..9d352dc 100644 --- a/encoder.cpp +++ b/encoder.cpp @@ -6,18 +6,13 @@ #include <map> -EncoderFilter::EncoderFilter(EncoderBase::p encoder_) { - encoder = encoder_; -} - -typedef boost::function<EncoderBase::p ()> EncoderFactory; +typedef boost::function<Encoder::p (RawAudioSource::p)> EncoderFactory; std::map<std::string, EncoderFactory> encoder_factories; -void encoder::init() { +void Encoder::init() { encoder_factories["lame"] = boost::factory<boost::shared_ptr<EncoderLame> >(); } -//! Construct a filter with the given encoder. -EncoderFilter::p encoder::get_encoder(const std::string& name) { - return EncoderFilter::p(new EncoderFilter(encoder_factories[name]())); +Encoder::p Encoder::get(const std::string& name, RawAudioSource::p source) { + return encoder_factories[name](source); } |